Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit d2e1e810 authored by Jeff Sharkey's avatar Jeff Sharkey
Browse files

Drop <meta-data> support for DocumentsProviders.

Prebuilts have finished migrating to new <intent-filter> based
approach.  Also update isDocumentUri() to match new definition.

Bug: 11109484
Change-Id: Ib95e2c3f5a9ff70b8d5e411f68ad49d1990dae8c
parent e6d419de
Loading
Loading
Loading
Loading
+8 −11
Original line number Diff line number Diff line
@@ -23,8 +23,7 @@ import android.content.ContentProviderClient;
import android.content.ContentResolver;
import android.content.Context;
import android.content.Intent;
import android.content.pm.PackageManager;
import android.content.pm.ProviderInfo;
import android.content.pm.ResolveInfo;
import android.content.res.AssetFileDescriptor;
import android.database.Cursor;
import android.graphics.Bitmap;
@@ -69,10 +68,6 @@ public final class DocumentsContract {
    private DocumentsContract() {
    }

    /** {@hide} */
    @Deprecated
    public static final String META_DATA_DOCUMENT_PROVIDER = "android.content.DOCUMENT_PROVIDER";

    /**
     * Intent action used to identify {@link DocumentsProvider} instances.
     */
@@ -565,12 +560,14 @@ public final class DocumentsContract {
            return false;
        }

        final ProviderInfo info = context.getPackageManager()
                .resolveContentProvider(uri.getAuthority(), PackageManager.GET_META_DATA);
        if (info != null && info.metaData != null && info.metaData.containsKey(
                DocumentsContract.META_DATA_DOCUMENT_PROVIDER)) {
        final Intent intent = new Intent(PROVIDER_INTERFACE);
        final List<ResolveInfo> infos = context.getPackageManager()
                .queryIntentContentProviders(intent, 0);
        for (ResolveInfo info : infos) {
            if (uri.getAuthority().equals(info.providerInfo.authority)) {
                return true;
            }
        }
        return false;
    }

+0 −10
Original line number Diff line number Diff line
@@ -194,16 +194,6 @@ public class RootsCache {
                handleDocumentsProvider(info.providerInfo);
            }

            // Pick up legacy providers
            final List<ProviderInfo> legacyProviders = pm.queryContentProviders(
                    null, -1, PackageManager.GET_META_DATA);
            for (ProviderInfo info : legacyProviders) {
                if (info.metaData != null && info.metaData.containsKey(
                        DocumentsContract.META_DATA_DOCUMENT_PROVIDER)) {
                    handleDocumentsProvider(info);
                }
            }

            final long delta = SystemClock.elapsedRealtime() - start;
            Log.d(TAG, "Update found " + mTaskRoots.size() + " roots in " + delta + "ms");
            synchronized (mLock) {