summaryrefslogtreecommitdiff
path: root/core/java/android/app/ContextImpl.java
diff options
context:
space:
mode:
authorTim Murray <timmurray@google.com>2020-02-21 20:22:19 +0000
committerAndroid (Google) Code Review <android-gerrit@google.com>2020-02-21 20:22:19 +0000
commit8a9c5795e075c5d27f3fb5b8901b76df2c5cbb93 (patch)
tree65e968d34a4fa256049ea8dc7548b6079449a1e7 /core/java/android/app/ContextImpl.java
parentb1b13b1b3ffe17f736de8587422a3da47f05e4d4 (diff)
parenta46b7b3f5e9398a245d0730d365d1f847d313938 (diff)
Merge "Cache package and permission information"
Diffstat (limited to 'core/java/android/app/ContextImpl.java')
-rw-r--r--core/java/android/app/ContextImpl.java23
1 files changed, 2 insertions, 21 deletions
diff --git a/core/java/android/app/ContextImpl.java b/core/java/android/app/ContextImpl.java
index 480ea8a25f91..96edca19afa7 100644
--- a/core/java/android/app/ContextImpl.java
+++ b/core/java/android/app/ContextImpl.java
@@ -73,6 +73,7 @@ import android.os.UserHandle;
import android.os.UserManager;
import android.os.storage.StorageManager;
import android.permission.IPermissionManager;
+import android.permission.PermissionManager;
import android.system.ErrnoException;
import android.system.Os;
import android.system.OsConstants;
@@ -1941,27 +1942,7 @@ class ContextImpl extends Context {
if (permission == null) {
throw new IllegalArgumentException("permission is null");
}
-
- final IActivityManager am = ActivityManager.getService();
- if (am == null) {
- // Well this is super awkward; we somehow don't have an active
- // ActivityManager instance. If we're testing a root or system
- // UID, then they totally have whatever permission this is.
- final int appId = UserHandle.getAppId(uid);
- if (appId == Process.ROOT_UID || appId == Process.SYSTEM_UID) {
- Slog.w(TAG, "Missing ActivityManager; assuming " + uid + " holds " + permission);
- return PERMISSION_GRANTED;
- }
- Slog.w(TAG, "Missing ActivityManager; assuming " + uid + " does not hold "
- + permission);
- return PackageManager.PERMISSION_DENIED;
- }
-
- try {
- return am.checkPermission(permission, pid, uid);
- } catch (RemoteException e) {
- throw e.rethrowFromSystemServer();
- }
+ return PermissionManager.checkPermission(permission, pid, uid);
}
/** @hide */