@Nullable
    public static File getNoBackupFilesDir(@NonNull Context context) {
        if (Build.VERSION.SDK_INT >= 21) {
            return context.getNoBackupFilesDir();
        } else {
            ApplicationInfo appInfo = context.getApplicationInfo();
            return createFilesDir(new File(appInfo.dataDir, "no_backup"));
        }
    }
Returns the absolute path to the directory on the filesystem similar to
{@link Context#getFilesDir()}.  The difference is that files placed under this
directory will be excluded from automatic backup to remote storage on
devices running {@link Build.VERSION_CODES#LOLLIPOP} or later.

<p>No permissions are required to read or write to the returned path, since this
path is internal storage.

@return The path of the directory holding application files that will not be
automatically backed up to remote storage.
@see Context#getFilesDir()
android/android_framework/base/src/main/java/github/tornaco/android/thanos/core/compat/ContextCompat.java