Loading core/java/android/app/ActivityManager.java +1 −35 Original line number Diff line number Diff line Loading @@ -601,20 +601,6 @@ public class ActivityManager { @TestApi public static final int PROCESS_CAPABILITY_FOREGROUND_MICROPHONE = 1 << 2; // TODO: remove this when development is done. // These are debug flags used between OomAdjuster and AppOpsService to detect and report absence // of the real flags. /** @hide */ public static final int DEBUG_PROCESS_CAPABILITY_FOREGROUND_MICROPHONE_Q = 1 << 27; /** @hide */ public static final int DEBUG_PROCESS_CAPABILITY_FOREGROUND_CAMERA_Q = 1 << 28; /** @hide */ public static final int DEBUG_PROCESS_CAPABILITY_FOREGROUND_MICROPHONE = 1 << 29; /** @hide */ public static final int DEBUG_PROCESS_CAPABILITY_FOREGROUND_CAMERA = 1 << 30; /** @hide */ public static final int DEBUG_PROCESS_CAPABILITY_FOREGROUND_LOCATION = 1 << 31; /** @hide all capabilities, the ORing of all flags in {@link ProcessCapability}*/ @TestApi public static final int PROCESS_CAPABILITY_ALL = PROCESS_CAPABILITY_FOREGROUND_LOCATION Loading Loading @@ -653,29 +639,9 @@ public class ActivityManager { */ public static void printCapabilitiesFull(PrintWriter pw, @ProcessCapability int caps) { printCapabilitiesSummary(pw, caps); if ((caps & DEBUG_PROCESS_CAPABILITY_FOREGROUND_LOCATION) != 0) { pw.print(" !L"); } if ((caps & DEBUG_PROCESS_CAPABILITY_FOREGROUND_CAMERA) != 0) { pw.print(" !C"); } if ((caps & DEBUG_PROCESS_CAPABILITY_FOREGROUND_CAMERA_Q) != 0) { pw.print(" !Cq"); } if ((caps & DEBUG_PROCESS_CAPABILITY_FOREGROUND_MICROPHONE) != 0) { pw.print(" !M"); } if ((caps & DEBUG_PROCESS_CAPABILITY_FOREGROUND_MICROPHONE_Q) != 0) { pw.print(" !Mq"); } final int remain = caps & ~(PROCESS_CAPABILITY_FOREGROUND_LOCATION | PROCESS_CAPABILITY_FOREGROUND_CAMERA | PROCESS_CAPABILITY_FOREGROUND_MICROPHONE | DEBUG_PROCESS_CAPABILITY_FOREGROUND_LOCATION | DEBUG_PROCESS_CAPABILITY_FOREGROUND_CAMERA | DEBUG_PROCESS_CAPABILITY_FOREGROUND_CAMERA_Q | DEBUG_PROCESS_CAPABILITY_FOREGROUND_MICROPHONE | DEBUG_PROCESS_CAPABILITY_FOREGROUND_MICROPHONE_Q); | PROCESS_CAPABILITY_FOREGROUND_MICROPHONE); if (remain != 0) { pw.print('+'); pw.print(remain); Loading core/java/android/app/ActivityManagerInternal.java +0 −7 Original line number Diff line number Diff line Loading @@ -398,13 +398,6 @@ public abstract class ActivityManagerInternal { */ public abstract boolean isUidCurrentlyInstrumented(int uid); /** * Show a debug toast, asking user to file a bugreport. */ // TODO: remove this toast after feature development is done public abstract void showWhileInUseDebugToast(int uid, int op, int mode); /** Is this a device owner app? */ public abstract boolean isDeviceOwner(int uid); Loading services/core/java/com/android/server/am/ActiveServices.java +0 −46 Original line number Diff line number Diff line Loading @@ -4918,52 +4918,6 @@ public final class ActiveServices { if (isDeviceOwner) { return true; } r.mInfoDenyWhileInUsePermissionInFgs = "Background FGS start while-in-use permission restriction [callingPackage: " + callingPackage + "; callingUid: " + callingUid + "; intent: " + intent + "]"; return false; } // TODO: remove this toast after feature development is done void showWhileInUseDebugToastLocked(int uid, int op, int mode) { final UidRecord uidRec = mAm.mProcessList.getUidRecordLocked(uid); if (uidRec == null) { return; } for (int i = uidRec.procRecords.size() - 1; i >= 0; i--) { ProcessRecord pr = uidRec.procRecords.valueAt(i); if (pr.uid != uid) { continue; } for (int j = pr.numberOfRunningServices() - 1; j >= 0; j--) { ServiceRecord r = pr.getRunningServiceAt(j); if (!r.isForeground) { continue; } if (mode == DEBUG_FGS_ALLOW_WHILE_IN_USE) { if (!r.mAllowWhileInUsePermissionInFgs && r.mInfoDenyWhileInUsePermissionInFgs != null) { final String msg = r.mInfoDenyWhileInUsePermissionInFgs + " affected while-in-use permission:" + AppOpsManager.opToPublicName(op); Slog.wtf(TAG, msg); } } else if (mode == DEBUG_FGS_ENFORCE_TYPE) { final String msg = "FGS Missing foregroundServiceType in manifest file [callingPackage: " + r.mRecentCallingPackage + "; intent:" + r.intent.getIntent() + "] affected while-in-use permission:" + AppOpsManager.opToPublicName(op) + "; targetSdkVersion:" + r.appInfo.targetSdkVersion; Slog.wtf(TAG, msg); } } } } } services/core/java/com/android/server/am/ActivityManagerService.java +0 −9 Original line number Diff line number Diff line Loading @@ -19671,15 +19671,6 @@ public class ActivityManagerService extends IActivityManager.Stub return false; } // TODO: remove this toast after feature development is done @Override public void showWhileInUseDebugToast(int uid, int op, int mode) { synchronized (ActivityManagerService.this) { ActivityManagerService.this.mServices.showWhileInUseDebugToastLocked( uid, op, mode); } } @Override public void setDeviceOwnerUid(int uid) { synchronized (ActivityManagerService.this) { services/core/java/com/android/server/am/OomAdjuster.java +5 −24 Original line number Diff line number Diff line Loading @@ -1508,16 +1508,7 @@ public final class OomAdjuster { capabilityFromFGS |= (fgsType & FOREGROUND_SERVICE_TYPE_LOCATION) != 0 ? PROCESS_CAPABILITY_FOREGROUND_LOCATION : 0; } else { //The FGS has the location capability, but due to FGS BG start restriction it //lost the capability, use temp location capability to mark this case. //TODO: remove this block when development is done. capabilityFromFGS |= (fgsType & FOREGROUND_SERVICE_TYPE_LOCATION) != 0 ? ActivityManager.DEBUG_PROCESS_CAPABILITY_FOREGROUND_LOCATION : 0; } if (s.mAllowWhileInUsePermissionInFgs) { boolean enabled = false; try { enabled = mPlatformCompat.isChangeEnabled( Loading @@ -1527,23 +1518,13 @@ public final class OomAdjuster { if (enabled) { capabilityFromFGS |= (fgsType & FOREGROUND_SERVICE_TYPE_CAMERA) != 0 ? PROCESS_CAPABILITY_FOREGROUND_CAMERA : ActivityManager.DEBUG_PROCESS_CAPABILITY_FOREGROUND_CAMERA; != 0 ? PROCESS_CAPABILITY_FOREGROUND_CAMERA : 0; capabilityFromFGS |= (fgsType & FOREGROUND_SERVICE_TYPE_MICROPHONE) != 0 ? PROCESS_CAPABILITY_FOREGROUND_MICROPHONE : ActivityManager.DEBUG_PROCESS_CAPABILITY_FOREGROUND_MICROPHONE; != 0 ? PROCESS_CAPABILITY_FOREGROUND_MICROPHONE : 0; } else { // Remove fgsType check and assign PROCESS_CAPABILITY_FOREGROUND_CAMERA // and MICROPHONE when finish debugging. capabilityFromFGS |= (fgsType & FOREGROUND_SERVICE_TYPE_CAMERA) != 0 ? PROCESS_CAPABILITY_FOREGROUND_CAMERA : ActivityManager.DEBUG_PROCESS_CAPABILITY_FOREGROUND_CAMERA_Q; capabilityFromFGS |= (fgsType & FOREGROUND_SERVICE_TYPE_MICROPHONE) != 0 ? PROCESS_CAPABILITY_FOREGROUND_MICROPHONE : ActivityManager.DEBUG_PROCESS_CAPABILITY_FOREGROUND_MICROPHONE_Q; capabilityFromFGS |= PROCESS_CAPABILITY_FOREGROUND_CAMERA | PROCESS_CAPABILITY_FOREGROUND_MICROPHONE; } } } Loading Loading
core/java/android/app/ActivityManager.java +1 −35 Original line number Diff line number Diff line Loading @@ -601,20 +601,6 @@ public class ActivityManager { @TestApi public static final int PROCESS_CAPABILITY_FOREGROUND_MICROPHONE = 1 << 2; // TODO: remove this when development is done. // These are debug flags used between OomAdjuster and AppOpsService to detect and report absence // of the real flags. /** @hide */ public static final int DEBUG_PROCESS_CAPABILITY_FOREGROUND_MICROPHONE_Q = 1 << 27; /** @hide */ public static final int DEBUG_PROCESS_CAPABILITY_FOREGROUND_CAMERA_Q = 1 << 28; /** @hide */ public static final int DEBUG_PROCESS_CAPABILITY_FOREGROUND_MICROPHONE = 1 << 29; /** @hide */ public static final int DEBUG_PROCESS_CAPABILITY_FOREGROUND_CAMERA = 1 << 30; /** @hide */ public static final int DEBUG_PROCESS_CAPABILITY_FOREGROUND_LOCATION = 1 << 31; /** @hide all capabilities, the ORing of all flags in {@link ProcessCapability}*/ @TestApi public static final int PROCESS_CAPABILITY_ALL = PROCESS_CAPABILITY_FOREGROUND_LOCATION Loading Loading @@ -653,29 +639,9 @@ public class ActivityManager { */ public static void printCapabilitiesFull(PrintWriter pw, @ProcessCapability int caps) { printCapabilitiesSummary(pw, caps); if ((caps & DEBUG_PROCESS_CAPABILITY_FOREGROUND_LOCATION) != 0) { pw.print(" !L"); } if ((caps & DEBUG_PROCESS_CAPABILITY_FOREGROUND_CAMERA) != 0) { pw.print(" !C"); } if ((caps & DEBUG_PROCESS_CAPABILITY_FOREGROUND_CAMERA_Q) != 0) { pw.print(" !Cq"); } if ((caps & DEBUG_PROCESS_CAPABILITY_FOREGROUND_MICROPHONE) != 0) { pw.print(" !M"); } if ((caps & DEBUG_PROCESS_CAPABILITY_FOREGROUND_MICROPHONE_Q) != 0) { pw.print(" !Mq"); } final int remain = caps & ~(PROCESS_CAPABILITY_FOREGROUND_LOCATION | PROCESS_CAPABILITY_FOREGROUND_CAMERA | PROCESS_CAPABILITY_FOREGROUND_MICROPHONE | DEBUG_PROCESS_CAPABILITY_FOREGROUND_LOCATION | DEBUG_PROCESS_CAPABILITY_FOREGROUND_CAMERA | DEBUG_PROCESS_CAPABILITY_FOREGROUND_CAMERA_Q | DEBUG_PROCESS_CAPABILITY_FOREGROUND_MICROPHONE | DEBUG_PROCESS_CAPABILITY_FOREGROUND_MICROPHONE_Q); | PROCESS_CAPABILITY_FOREGROUND_MICROPHONE); if (remain != 0) { pw.print('+'); pw.print(remain); Loading
core/java/android/app/ActivityManagerInternal.java +0 −7 Original line number Diff line number Diff line Loading @@ -398,13 +398,6 @@ public abstract class ActivityManagerInternal { */ public abstract boolean isUidCurrentlyInstrumented(int uid); /** * Show a debug toast, asking user to file a bugreport. */ // TODO: remove this toast after feature development is done public abstract void showWhileInUseDebugToast(int uid, int op, int mode); /** Is this a device owner app? */ public abstract boolean isDeviceOwner(int uid); Loading
services/core/java/com/android/server/am/ActiveServices.java +0 −46 Original line number Diff line number Diff line Loading @@ -4918,52 +4918,6 @@ public final class ActiveServices { if (isDeviceOwner) { return true; } r.mInfoDenyWhileInUsePermissionInFgs = "Background FGS start while-in-use permission restriction [callingPackage: " + callingPackage + "; callingUid: " + callingUid + "; intent: " + intent + "]"; return false; } // TODO: remove this toast after feature development is done void showWhileInUseDebugToastLocked(int uid, int op, int mode) { final UidRecord uidRec = mAm.mProcessList.getUidRecordLocked(uid); if (uidRec == null) { return; } for (int i = uidRec.procRecords.size() - 1; i >= 0; i--) { ProcessRecord pr = uidRec.procRecords.valueAt(i); if (pr.uid != uid) { continue; } for (int j = pr.numberOfRunningServices() - 1; j >= 0; j--) { ServiceRecord r = pr.getRunningServiceAt(j); if (!r.isForeground) { continue; } if (mode == DEBUG_FGS_ALLOW_WHILE_IN_USE) { if (!r.mAllowWhileInUsePermissionInFgs && r.mInfoDenyWhileInUsePermissionInFgs != null) { final String msg = r.mInfoDenyWhileInUsePermissionInFgs + " affected while-in-use permission:" + AppOpsManager.opToPublicName(op); Slog.wtf(TAG, msg); } } else if (mode == DEBUG_FGS_ENFORCE_TYPE) { final String msg = "FGS Missing foregroundServiceType in manifest file [callingPackage: " + r.mRecentCallingPackage + "; intent:" + r.intent.getIntent() + "] affected while-in-use permission:" + AppOpsManager.opToPublicName(op) + "; targetSdkVersion:" + r.appInfo.targetSdkVersion; Slog.wtf(TAG, msg); } } } } }
services/core/java/com/android/server/am/ActivityManagerService.java +0 −9 Original line number Diff line number Diff line Loading @@ -19671,15 +19671,6 @@ public class ActivityManagerService extends IActivityManager.Stub return false; } // TODO: remove this toast after feature development is done @Override public void showWhileInUseDebugToast(int uid, int op, int mode) { synchronized (ActivityManagerService.this) { ActivityManagerService.this.mServices.showWhileInUseDebugToastLocked( uid, op, mode); } } @Override public void setDeviceOwnerUid(int uid) { synchronized (ActivityManagerService.this) {
services/core/java/com/android/server/am/OomAdjuster.java +5 −24 Original line number Diff line number Diff line Loading @@ -1508,16 +1508,7 @@ public final class OomAdjuster { capabilityFromFGS |= (fgsType & FOREGROUND_SERVICE_TYPE_LOCATION) != 0 ? PROCESS_CAPABILITY_FOREGROUND_LOCATION : 0; } else { //The FGS has the location capability, but due to FGS BG start restriction it //lost the capability, use temp location capability to mark this case. //TODO: remove this block when development is done. capabilityFromFGS |= (fgsType & FOREGROUND_SERVICE_TYPE_LOCATION) != 0 ? ActivityManager.DEBUG_PROCESS_CAPABILITY_FOREGROUND_LOCATION : 0; } if (s.mAllowWhileInUsePermissionInFgs) { boolean enabled = false; try { enabled = mPlatformCompat.isChangeEnabled( Loading @@ -1527,23 +1518,13 @@ public final class OomAdjuster { if (enabled) { capabilityFromFGS |= (fgsType & FOREGROUND_SERVICE_TYPE_CAMERA) != 0 ? PROCESS_CAPABILITY_FOREGROUND_CAMERA : ActivityManager.DEBUG_PROCESS_CAPABILITY_FOREGROUND_CAMERA; != 0 ? PROCESS_CAPABILITY_FOREGROUND_CAMERA : 0; capabilityFromFGS |= (fgsType & FOREGROUND_SERVICE_TYPE_MICROPHONE) != 0 ? PROCESS_CAPABILITY_FOREGROUND_MICROPHONE : ActivityManager.DEBUG_PROCESS_CAPABILITY_FOREGROUND_MICROPHONE; != 0 ? PROCESS_CAPABILITY_FOREGROUND_MICROPHONE : 0; } else { // Remove fgsType check and assign PROCESS_CAPABILITY_FOREGROUND_CAMERA // and MICROPHONE when finish debugging. capabilityFromFGS |= (fgsType & FOREGROUND_SERVICE_TYPE_CAMERA) != 0 ? PROCESS_CAPABILITY_FOREGROUND_CAMERA : ActivityManager.DEBUG_PROCESS_CAPABILITY_FOREGROUND_CAMERA_Q; capabilityFromFGS |= (fgsType & FOREGROUND_SERVICE_TYPE_MICROPHONE) != 0 ? PROCESS_CAPABILITY_FOREGROUND_MICROPHONE : ActivityManager.DEBUG_PROCESS_CAPABILITY_FOREGROUND_MICROPHONE_Q; capabilityFromFGS |= PROCESS_CAPABILITY_FOREGROUND_CAMERA | PROCESS_CAPABILITY_FOREGROUND_MICROPHONE; } } } Loading