diff options
| -rw-r--r-- | services/core/java/com/android/server/pm/ShortcutPackage.java | 23 |
1 files changed, 9 insertions, 14 deletions
diff --git a/services/core/java/com/android/server/pm/ShortcutPackage.java b/services/core/java/com/android/server/pm/ShortcutPackage.java index 8921fee6c8e0..3c0377ddaa11 100644 --- a/services/core/java/com/android/server/pm/ShortcutPackage.java +++ b/services/core/java/com/android/server/pm/ShortcutPackage.java @@ -23,7 +23,6 @@ import android.app.appsearch.AppSearchManager; import android.app.appsearch.AppSearchResult; import android.app.appsearch.AppSearchSession; import android.app.appsearch.GetByDocumentIdRequest; -import android.app.appsearch.PackageIdentifier; import android.app.appsearch.PutDocumentsRequest; import android.app.appsearch.RemoveByDocumentIdRequest; import android.app.appsearch.ReportUsageRequest; @@ -181,11 +180,6 @@ class ShortcutPackage extends ShortcutPackageItem { private final ArrayList<ShareTargetInfo> mShareTargets = new ArrayList<>(0); /** - * All external packages that have gained access to the shortcuts from this package - */ - private final Map<String, PackageIdentifier> mPackageIdentifiers = new ArrayMap<>(0); - - /** * # of times the package has called rate-limited APIs. */ private int mApiCallCount; @@ -2313,14 +2307,15 @@ class ShortcutPackage extends ShortcutPackageItem { } SetSchemaRequest.Builder schemaBuilder = new SetSchemaRequest.Builder() .addSchemas(AppSearchShortcutPerson.SCHEMA, AppSearchShortcutInfo.SCHEMA) - .setForceOverride(true); - for (PackageIdentifier pi : mPackageIdentifiers.values()) { - schemaBuilder = schemaBuilder - .setSchemaTypeVisibilityForPackage( - AppSearchShortcutPerson.SCHEMA_TYPE, true, pi) - .setSchemaTypeVisibilityForPackage( - AppSearchShortcutInfo.SCHEMA_TYPE, true, pi); - } + .setForceOverride(true) + .addRequiredPermissionsForSchemaTypeVisibility(AppSearchShortcutInfo.SCHEMA_TYPE, + Collections.singleton(SetSchemaRequest.READ_HOME_APP_SEARCH_DATA)) + .addRequiredPermissionsForSchemaTypeVisibility(AppSearchShortcutInfo.SCHEMA_TYPE, + Collections.singleton(SetSchemaRequest.READ_ASSISTANT_APP_SEARCH_DATA)) + .addRequiredPermissionsForSchemaTypeVisibility(AppSearchShortcutPerson.SCHEMA_TYPE, + Collections.singleton(SetSchemaRequest.READ_HOME_APP_SEARCH_DATA)) + .addRequiredPermissionsForSchemaTypeVisibility(AppSearchShortcutPerson.SCHEMA_TYPE, + Collections.singleton(SetSchemaRequest.READ_ASSISTANT_APP_SEARCH_DATA)); final AndroidFuture<AppSearchSession> future = new AndroidFuture<>(); session.setSchema( schemaBuilder.build(), mExecutor, mShortcutUser.mExecutor, result -> { |