Fix and reduce sdk of Content Provider to 24
Test: unit tests, presubmit
Bug: 228263600
Change-Id: I776032394928d7a207b267d4a1401f535c1aa689
diff --git a/util_apps/ContentProvider/main/Android.bp b/util_apps/ContentProvider/main/Android.bp
index 18657f8..34a82a4 100644
--- a/util_apps/ContentProvider/main/Android.bp
+++ b/util_apps/ContentProvider/main/Android.bp
@@ -29,12 +29,10 @@
defaults: ["tradefed_errorprone_defaults"],
srcs: ["java/**/*.java"],
- static_libs: [
- "androidx.test.runner",
- ],
manifest: "java/android/tradefed/contentprovider/AndroidManifest.xml",
- sdk_version: "30",
+ // It's important to retain SDK support at 24 for backward compatibility
+ sdk_version: "24",
min_sdk_version: "24",
test_suites: ["general-tests"],
diff --git a/util_apps/ContentProvider/main/java/android/tradefed/contentprovider/AndroidManifest.xml b/util_apps/ContentProvider/main/java/android/tradefed/contentprovider/AndroidManifest.xml
index 15cb3fa..e0fa13f 100644
--- a/util_apps/ContentProvider/main/java/android/tradefed/contentprovider/AndroidManifest.xml
+++ b/util_apps/ContentProvider/main/java/android/tradefed/contentprovider/AndroidManifest.xml
@@ -21,6 +21,9 @@
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.INTERACT_ACROSS_USERS" />
+ <uses-sdk android:minSdkVersion="24"
+ android:targetSdkVersion="30" />
+
<application>
<provider
android:name="android.tradefed.contentprovider.ManagedFileContentProvider"
diff --git a/util_apps/ContentProvider/main/java/android/tradefed/contentprovider/ManagedFileContentProvider.java b/util_apps/ContentProvider/main/java/android/tradefed/contentprovider/ManagedFileContentProvider.java
index d506be9..52579e3 100644
--- a/util_apps/ContentProvider/main/java/android/tradefed/contentprovider/ManagedFileContentProvider.java
+++ b/util_apps/ContentProvider/main/java/android/tradefed/contentprovider/ManagedFileContentProvider.java
@@ -23,8 +23,6 @@
import android.net.Uri;
import android.os.Environment;
import android.os.ParcelFileDescriptor;
-import androidx.annotation.NonNull;
-import androidx.annotation.Nullable;
import android.util.Log;
import android.webkit.MimeTypeMap;
@@ -85,14 +83,13 @@
* for files and for directories it returns one row for each {@link File} returned by {@link
* File#listFiles()}.
*/
- @Nullable
@Override
public Cursor query(
- @NonNull Uri uri,
- @Nullable String[] projection,
- @Nullable String selection,
- @Nullable String[] selectionArgs,
- @Nullable String sortOrder) {
+ Uri uri,
+ String[] projection,
+ String selection,
+ String[] selectionArgs,
+ String sortOrder) {
File file = getFileForUri(uri);
if ("/".equals(file.getAbsolutePath())) {
// Querying the root will list all the known file (inserted)
@@ -126,15 +123,13 @@
return cursor;
}
- @Nullable
@Override
- public String getType(@NonNull Uri uri) {
+ public String getType(Uri uri) {
return getType(getFileForUri(uri));
}
- @Nullable
@Override
- public Uri insert(@NonNull Uri uri, @Nullable ContentValues contentValues) {
+ public Uri insert(Uri uri, ContentValues contentValues) {
String extra = "";
File file = getFileForUri(uri);
if (!file.exists()) {
@@ -152,8 +147,7 @@
}
@Override
- public int delete(
- @NonNull Uri uri, @Nullable String selection, @Nullable String[] selectionArgs) {
+ public int delete(Uri uri, String selection, String[] selectionArgs) {
// Stop Tracking the File of directory if it was tracked and delete it from the disk
mFileTracker.remove(uri);
File file = getFileForUri(uri);
@@ -162,11 +156,7 @@
}
@Override
- public int update(
- @NonNull Uri uri,
- @Nullable ContentValues values,
- @Nullable String selection,
- @Nullable String[] selectionArgs) {
+ public int update(Uri uri, ContentValues values, String selection, String[] selectionArgs) {
File file = getFileForUri(uri);
if (!file.exists()) {
Log.e(TAG, String.format("Update - File from uri: '%s' does not exists.", uri));
@@ -184,8 +174,7 @@
}
@Override
- public ParcelFileDescriptor openFile(@NonNull Uri uri, @NonNull String mode)
- throws FileNotFoundException {
+ public ParcelFileDescriptor openFile(Uri uri, String mode) throws FileNotFoundException {
final File file = getFileForUri(uri);
final int fileMode = modeToMode(mode);
@@ -225,7 +214,7 @@
return value;
}
- private String getType(@NonNull File file) {
+ private String getType(File file) {
final int lastDot = file.getName().lastIndexOf('.');
if (lastDot >= 0) {
final String extension = file.getName().substring(lastDot + 1);
@@ -239,7 +228,7 @@
}
@SuppressLint("SdCardPath")
- private File getFileForUri(@NonNull Uri uri) {
+ private File getFileForUri(Uri uri) {
// TODO: apply the /sdcard resolution to query() too.
String uriPath = uri.getPath();
try {