summaryrefslogtreecommitdiff
path: root/core/java/android/app/ContextImpl.java
diff options
context:
space:
mode:
authorTodd Kennedy <toddke@google.com>2019-07-02 07:35:15 -0700
committerTodd Kennedy <toddke@google.com>2019-07-02 13:17:05 -0700
commit8f135982a868abb9365ca7bd86173ce214dc5019 (patch)
tree598752b506183d043f1531fa39f1a1959efc76e2 /core/java/android/app/ContextImpl.java
parentb9914e06cc631bc0683fa88b2f6016db85ad06c3 (diff)
Create permission manager AIDL
Today, the package manager largely routes any permission related method to the PermissionManagerService. But, PermissionManagerService is a service in name only. Instead, we will make the PermissionManagerService a real service and direct API calls directly to it. We will likely need to maintain all of the public permission APIs that already exist on PackageManager. However, the public -> private implementation will go directly to PermissionManagerService. Bug: 135279435 Test: Manual. Device boots Change-Id: Ia4992ba6d1f4b9050db98c7d7647d51a5d45fcbe
Diffstat (limited to 'core/java/android/app/ContextImpl.java')
-rw-r--r--core/java/android/app/ContextImpl.java8
1 files changed, 5 insertions, 3 deletions
diff --git a/core/java/android/app/ContextImpl.java b/core/java/android/app/ContextImpl.java
index 41a4fba0434c..ef23d5e7a424 100644
--- a/core/java/android/app/ContextImpl.java
+++ b/core/java/android/app/ContextImpl.java
@@ -68,6 +68,7 @@ import android.os.Trace;
import android.os.UserHandle;
import android.os.UserManager;
import android.os.storage.StorageManager;
+import android.permission.IPermissionManager;
import android.system.ErrnoException;
import android.system.Os;
import android.system.OsConstants;
@@ -297,10 +298,11 @@ class ContextImpl extends Context {
return mPackageManager;
}
- IPackageManager pm = ActivityThread.getPackageManager();
- if (pm != null) {
+ final IPackageManager pm = ActivityThread.getPackageManager();
+ final IPermissionManager permissionManager = ActivityThread.getPermissionManager();
+ if (pm != null && permissionManager != null) {
// Doesn't matter if we make more than one instance.
- return (mPackageManager = new ApplicationPackageManager(this, pm));
+ return (mPackageManager = new ApplicationPackageManager(this, pm, permissionManager));
}
return null;