Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 9ab79433 authored by Evan Severson's avatar Evan Severson Committed by Android (Google) Code Review
Browse files

Merge "Add debug logging for one-time permissions"

parents 1e88cfef 322de3ad
Loading
Loading
Loading
Loading
+25 −2
Original line number Diff line number Diff line
@@ -36,6 +36,8 @@ public class OneTimePermissionUserManager {

    private static final String LOG_TAG = OneTimePermissionUserManager.class.getSimpleName();

    private static final boolean DEBUG = true;

    private final @NonNull Context mContext;
    private final @NonNull ActivityManager mActivityManager;
    private final @NonNull AlarmManager mAlarmManager;
@@ -156,6 +158,14 @@ public class OneTimePermissionUserManager {

        private PackageInactivityListener(int uid, @NonNull String packageName, long timeout,
                int importanceToResetTimer, int importanceToKeepSessionAlive) {

            if (DEBUG) {
                Log.d(LOG_TAG,
                        "Start tracking " + packageName + ". uid=" + uid + " timeout=" + timeout
                                + " importanceToResetTimer=" + importanceToResetTimer
                                + " importanceToKeepSessionAlive=" + importanceToKeepSessionAlive);
            }

            mUid = uid;
            mPackageName = packageName;
            mTimeout = timeout;
@@ -182,6 +192,12 @@ public class OneTimePermissionUserManager {
            if (uid != mUid) {
                return;
            }


            if (DEBUG) {
                Log.d(LOG_TAG, "Importance changed for " + mPackageName + " (" + mUid + ")."
                        + " importance=" + importance);
            }
            synchronized (mInnerLock) {
                if (importance > IMPORTANCE_CACHED) {
                    onPackageInactiveLocked();
@@ -257,8 +273,15 @@ public class OneTimePermissionUserManager {
            mIsFinished = true;
            cancelAlarmLocked();
            mContext.getMainThreadHandler().post(
                    () -> mPermissionControllerManager.notifyOneTimePermissionSessionTimeout(
                            mPackageName));
                    () -> {
                        if (DEBUG) {
                            Log.d(LOG_TAG, "One time session expired for "
                                    + mPackageName + " (" + mUid + ").");
                        }

                        mPermissionControllerManager.notifyOneTimePermissionSessionTimeout(
                                mPackageName);
                    });
            mActivityManager.removeOnUidImportanceListener(mStartTimerListener);
            mActivityManager.removeOnUidImportanceListener(mSessionKillableListener);
            mActivityManager.removeOnUidImportanceListener(mGoneListener);