Merge "[1-time permissions] Use internal api to check proc states"
diff --git a/services/core/java/com/android/server/pm/permission/OneTimePermissionUserManager.java b/services/core/java/com/android/server/pm/permission/OneTimePermissionUserManager.java
index 2a65a01..8641b41 100644
--- a/services/core/java/com/android/server/pm/permission/OneTimePermissionUserManager.java
+++ b/services/core/java/com/android/server/pm/permission/OneTimePermissionUserManager.java
@@ -18,6 +18,7 @@
import android.annotation.NonNull;
import android.app.ActivityManager;
+import android.app.ActivityManagerInternal;
import android.app.AlarmManager;
import android.app.IActivityManager;
import android.app.IUidObserver;
@@ -34,6 +35,7 @@
import android.util.SparseArray;
import com.android.internal.annotations.GuardedBy;
+import com.android.server.LocalServices;
import com.android.server.PermissionThread;
/**
@@ -50,6 +52,7 @@
private final @NonNull Context mContext;
private final @NonNull IActivityManager mIActivityManager;
+ private final @NonNull ActivityManagerInternal mActivityManagerInternal;
private final @NonNull AlarmManager mAlarmManager;
private final @NonNull PermissionControllerManager mPermissionControllerManager;
@@ -80,6 +83,7 @@
OneTimePermissionUserManager(@NonNull Context context) {
mContext = context;
mIActivityManager = ActivityManager.getService();
+ mActivityManagerInternal = LocalServices.getService(ActivityManagerInternal.class);
mAlarmManager = context.getSystemService(AlarmManager.class);
mPermissionControllerManager = new PermissionControllerManager(
mContext, PermissionThread.getHandler());
@@ -243,12 +247,7 @@
}
private int getCurrentState() {
- try {
- return getStateFromProcState(mIActivityManager.getUidProcessState(mUid, null));
- } catch (RemoteException e) {
- Log.e(LOG_TAG, "Couldn't check uid proc state", e);
- }
- return STATE_GONE;
+ return getStateFromProcState(mActivityManagerInternal.getUidProcessState(mUid));
}
private int getStateFromProcState(int procState) {