Add async version of getProviderMimeType

Fixes: b/147646960
Test: atest FrameworksCoreTests:android.content.ContentResolverTest

Change-Id: I04c15ac008fe14b215f954af150226dc94f22232
diff --git a/core/java/android/content/ContentProvider.java b/core/java/android/content/ContentProvider.java
index c271e3c..e1942da 100644
--- a/core/java/android/content/ContentProvider.java
+++ b/core/java/android/content/ContentProvider.java
@@ -49,6 +49,7 @@
 import android.os.ICancellationSignal;
 import android.os.ParcelFileDescriptor;
 import android.os.Process;
+import android.os.RemoteCallback;
 import android.os.RemoteException;
 import android.os.Trace;
 import android.os.UserHandle;
@@ -300,6 +301,13 @@
         }
 
         @Override
+        public void getTypeAsync(Uri uri, RemoteCallback callback) {
+            final Bundle result = new Bundle();
+            result.putString(ContentResolver.REMOTE_CALLBACK_RESULT, getType(uri));
+            callback.sendResult(result);
+        }
+
+        @Override
         public Uri insert(String callingPkg, @Nullable String featureId, Uri uri,
                 ContentValues initialValues, Bundle extras) {
             uri = validateIncomingUri(uri);