2017-12-01 20:02:30 +01:00
|
|
|
package org.thoughtcrime.securesms.util;
|
|
|
|
|
|
|
|
|
|
|
|
import android.content.Context;
|
|
|
|
import android.net.Uri;
|
|
|
|
import android.os.Build;
|
2019-06-05 21:47:14 +02:00
|
|
|
import androidx.annotation.NonNull;
|
|
|
|
import androidx.core.content.FileProvider;
|
2017-12-01 20:02:30 +01:00
|
|
|
|
2020-09-18 21:52:11 +02:00
|
|
|
import org.thoughtcrime.securesms.BuildConfig;
|
|
|
|
|
2017-12-01 20:02:30 +01:00
|
|
|
import java.io.File;
|
|
|
|
|
|
|
|
public class FileProviderUtil {
|
|
|
|
|
2020-09-18 21:52:11 +02:00
|
|
|
private static final String AUTHORITY = BuildConfig.APPLICATION_ID + ".fileprovider";
|
2017-12-01 20:02:30 +01:00
|
|
|
|
|
|
|
public static Uri getUriFor(@NonNull Context context, @NonNull File file) {
|
2019-01-14 04:08:33 +01:00
|
|
|
if (Build.VERSION.SDK_INT >= 24) return FileProvider.getUriForFile(context, AUTHORITY, file);
|
|
|
|
else return Uri.fromFile(file);
|
2017-12-01 20:02:30 +01:00
|
|
|
}
|
|
|
|
|
2018-09-13 00:47:41 +02:00
|
|
|
public static boolean isAuthority(@NonNull Uri uri) {
|
|
|
|
return AUTHORITY.equals(uri.getAuthority());
|
|
|
|
}
|
|
|
|
|
|
|
|
public static boolean delete(@NonNull Context context, @NonNull Uri uri) {
|
|
|
|
if (AUTHORITY.equals(uri.getAuthority())) {
|
|
|
|
return context.getContentResolver().delete(uri, null, null) > 0;
|
|
|
|
}
|
|
|
|
return new File(uri.getPath()).delete();
|
|
|
|
}
|
2017-12-01 20:02:30 +01:00
|
|
|
}
|