|
|
@ -22,11 +22,14 @@ package eu.faircode.email;
|
|
|
|
import android.content.Context;
|
|
|
|
import android.content.Context;
|
|
|
|
import android.content.pm.ProviderInfo;
|
|
|
|
import android.content.pm.ProviderInfo;
|
|
|
|
import android.net.Uri;
|
|
|
|
import android.net.Uri;
|
|
|
|
|
|
|
|
import android.text.TextUtils;
|
|
|
|
|
|
|
|
|
|
|
|
import androidx.annotation.NonNull;
|
|
|
|
import androidx.annotation.NonNull;
|
|
|
|
import androidx.annotation.Nullable;
|
|
|
|
import androidx.annotation.Nullable;
|
|
|
|
import androidx.core.content.FileProvider;
|
|
|
|
import androidx.core.content.FileProvider;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
import java.io.File;
|
|
|
|
|
|
|
|
|
|
|
|
public class FileProviderEx extends FileProvider {
|
|
|
|
public class FileProviderEx extends FileProvider {
|
|
|
|
// https://android-review.googlesource.com/c/platform/frameworks/support/+/1978527
|
|
|
|
// https://android-review.googlesource.com/c/platform/frameworks/support/+/1978527
|
|
|
|
public FileProviderEx() {
|
|
|
|
public FileProviderEx() {
|
|
|
@ -69,6 +72,19 @@ public class FileProviderEx extends FileProvider {
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
public static Uri getUri(@NonNull Context context, @NonNull String authority, @NonNull File file) {
|
|
|
|
|
|
|
|
return getUri(context, authority, file, null);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
public static Uri getUri(@NonNull Context context, @NonNull String authority, @NonNull File file, @NonNull String name) {
|
|
|
|
|
|
|
|
Uri uri;
|
|
|
|
|
|
|
|
if (TextUtils.isEmpty(name))
|
|
|
|
|
|
|
|
uri = getUriForFile(context, authority, file);
|
|
|
|
|
|
|
|
else
|
|
|
|
|
|
|
|
uri = getUriForFile(context, authority, file, name);
|
|
|
|
|
|
|
|
return uri;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
@Override
|
|
|
|
public int delete(@NonNull Uri uri, @Nullable String selection, @Nullable String[] selectionArgs) {
|
|
|
|
public int delete(@NonNull Uri uri, @Nullable String selection, @Nullable String[] selectionArgs) {
|
|
|
|
throw new UnsupportedOperationException("No external updates");
|
|
|
|
throw new UnsupportedOperationException("No external updates");
|
|
|
|