summaryrefslogtreecommitdiff
path: root/core/java
diff options
context:
space:
mode:
authorPatrick Baumann <patb@google.com>2020-09-23 18:28:16 +0000
committerAutomerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>2020-09-23 18:28:16 +0000
commit0e914bd10254d3a747eff4313f812aaa3287983d (patch)
tree29e11b688087d2fa8dafca64d85ab777e0c5768f /core/java
parent6e8d9e5cb643492173707d0207a2afc8a23d63b6 (diff)
parente530998c9edf8210dc8078cd9100a8a904ac556f (diff)
Merge "Expose grantImplicitAccess in IPackageManager" into rvc-qpr-dev am: e530998c9e
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/12294962 Change-Id: I31db3a2016da589f2c0b7f4bc955a870ebc384c5
Diffstat (limited to 'core/java')
-rw-r--r--core/java/android/content/pm/IPackageManager.aidl2
-rw-r--r--core/java/android/content/pm/PackageManager.java14
2 files changed, 16 insertions, 0 deletions
diff --git a/core/java/android/content/pm/IPackageManager.aidl b/core/java/android/content/pm/IPackageManager.aidl
index f257326904fd..2138f53e9f54 100644
--- a/core/java/android/content/pm/IPackageManager.aidl
+++ b/core/java/android/content/pm/IPackageManager.aidl
@@ -785,4 +785,6 @@ interface IPackageManager {
List<String> getMimeGroup(String packageName, String group);
boolean isAutoRevokeWhitelisted(String packageName);
+
+ void grantImplicitAccess(int queryingUid, String visibleAuthority);
}
diff --git a/core/java/android/content/pm/PackageManager.java b/core/java/android/content/pm/PackageManager.java
index 46af6303d04d..0789cfb2af56 100644
--- a/core/java/android/content/pm/PackageManager.java
+++ b/core/java/android/content/pm/PackageManager.java
@@ -8018,6 +8018,20 @@ public abstract class PackageManager {
"getMimeGroup not implemented in subclass");
}
+ /**
+ * Grants implicit visibility of the package that provides an authority to a querying UID.
+ *
+ * @throws SecurityException when called by a package other than the contacts provider
+ * @hide
+ */
+ public void grantImplicitAccess(int queryingUid, String visibleAuthority) {
+ try {
+ ActivityThread.getPackageManager().grantImplicitAccess(queryingUid, visibleAuthority);
+ } catch (RemoteException e) {
+ throw e.rethrowFromSystemServer();
+ }
+ }
+
// Some of the flags don't affect the query result, but let's be conservative and cache
// each combination of flags separately.