Loading api/system-current.txt +5 −4 Original line number Diff line number Diff line Loading @@ -347,10 +347,11 @@ package android.app { field public static final String OPSTR_WRITE_ICC_SMS = "android:write_icc_sms"; field public static final String OPSTR_WRITE_SMS = "android:write_sms"; field public static final String OPSTR_WRITE_WALLPAPER = "android:write_wallpaper"; field public static final int UID_STATE_BACKGROUND = 4; // 0x4 field public static final int UID_STATE_CACHED = 5; // 0x5 field public static final int UID_STATE_FOREGROUND = 3; // 0x3 field public static final int UID_STATE_FOREGROUND_SERVICE = 2; // 0x2 field public static final int UID_STATE_BACKGROUND = 5; // 0x5 field public static final int UID_STATE_CACHED = 6; // 0x6 field public static final int UID_STATE_FOREGROUND = 4; // 0x4 field public static final int UID_STATE_FOREGROUND_SERVICE = 3; // 0x3 field public static final int UID_STATE_FOREGROUND_SERVICE_LOCATION = 2; // 0x2 field public static final int UID_STATE_PERSISTENT = 0; // 0x0 field public static final int UID_STATE_TOP = 1; // 0x1 } Loading api/test-current.txt +5 −4 Original line number Diff line number Diff line Loading @@ -164,10 +164,11 @@ package android.app { field public static final int OP_COARSE_LOCATION = 0; // 0x0 field public static final int OP_RECORD_AUDIO = 27; // 0x1b field public static final int OP_SYSTEM_ALERT_WINDOW = 24; // 0x18 field public static final int UID_STATE_BACKGROUND = 4; // 0x4 field public static final int UID_STATE_CACHED = 5; // 0x5 field public static final int UID_STATE_FOREGROUND = 3; // 0x3 field public static final int UID_STATE_FOREGROUND_SERVICE = 2; // 0x2 field public static final int UID_STATE_BACKGROUND = 5; // 0x5 field public static final int UID_STATE_CACHED = 6; // 0x6 field public static final int UID_STATE_FOREGROUND = 4; // 0x4 field public static final int UID_STATE_FOREGROUND_SERVICE = 3; // 0x3 field public static final int UID_STATE_FOREGROUND_SERVICE_LOCATION = 2; // 0x2 field public static final int UID_STATE_PERSISTENT = 0; // 0x0 field public static final int UID_STATE_TOP = 1; // 0x1 } Loading core/java/android/app/ActivityManager.java +29 −18 Original line number Diff line number Diff line Loading @@ -505,71 +505,74 @@ public class ActivityManager { @UnsupportedAppUsage public static final int PROCESS_STATE_TOP = 2; /** @hide Process is hosting a foreground service with location type. */ public static final int PROCESS_STATE_FOREGROUND_SERVICE_LOCATION = 3; /** @hide Process is hosting a foreground service. */ @UnsupportedAppUsage public static final int PROCESS_STATE_FOREGROUND_SERVICE = 3; public static final int PROCESS_STATE_FOREGROUND_SERVICE = 4; /** @hide Process is hosting a foreground service due to a system binding. */ @UnsupportedAppUsage public static final int PROCESS_STATE_BOUND_FOREGROUND_SERVICE = 4; public static final int PROCESS_STATE_BOUND_FOREGROUND_SERVICE = 5; /** @hide Process is important to the user, and something they are aware of. */ public static final int PROCESS_STATE_IMPORTANT_FOREGROUND = 5; public static final int PROCESS_STATE_IMPORTANT_FOREGROUND = 6; /** @hide Process is important to the user, but not something they are aware of. */ @UnsupportedAppUsage public static final int PROCESS_STATE_IMPORTANT_BACKGROUND = 6; public static final int PROCESS_STATE_IMPORTANT_BACKGROUND = 7; /** @hide Process is in the background transient so we will try to keep running. */ public static final int PROCESS_STATE_TRANSIENT_BACKGROUND = 7; public static final int PROCESS_STATE_TRANSIENT_BACKGROUND = 8; /** @hide Process is in the background running a backup/restore operation. */ public static final int PROCESS_STATE_BACKUP = 8; public static final int PROCESS_STATE_BACKUP = 9; /** @hide Process is in the background running a service. Unlike oom_adj, this level * is used for both the normal running in background state and the executing * operations state. */ @UnsupportedAppUsage public static final int PROCESS_STATE_SERVICE = 9; public static final int PROCESS_STATE_SERVICE = 10; /** @hide Process is in the background running a receiver. Note that from the * perspective of oom_adj, receivers run at a higher foreground level, but for our * prioritization here that is not necessary and putting them below services means * many fewer changes in some process states as they receive broadcasts. */ @UnsupportedAppUsage public static final int PROCESS_STATE_RECEIVER = 10; public static final int PROCESS_STATE_RECEIVER = 11; /** @hide Same as {@link #PROCESS_STATE_TOP} but while device is sleeping. */ public static final int PROCESS_STATE_TOP_SLEEPING = 11; public static final int PROCESS_STATE_TOP_SLEEPING = 12; /** @hide Process is in the background, but it can't restore its state so we want * to try to avoid killing it. */ public static final int PROCESS_STATE_HEAVY_WEIGHT = 12; public static final int PROCESS_STATE_HEAVY_WEIGHT = 13; /** @hide Process is in the background but hosts the home activity. */ @UnsupportedAppUsage public static final int PROCESS_STATE_HOME = 13; public static final int PROCESS_STATE_HOME = 14; /** @hide Process is in the background but hosts the last shown activity. */ public static final int PROCESS_STATE_LAST_ACTIVITY = 14; public static final int PROCESS_STATE_LAST_ACTIVITY = 15; /** @hide Process is being cached for later use and contains activities. */ @UnsupportedAppUsage public static final int PROCESS_STATE_CACHED_ACTIVITY = 15; public static final int PROCESS_STATE_CACHED_ACTIVITY = 16; /** @hide Process is being cached for later use and is a client of another cached * process that contains activities. */ public static final int PROCESS_STATE_CACHED_ACTIVITY_CLIENT = 16; public static final int PROCESS_STATE_CACHED_ACTIVITY_CLIENT = 17; /** @hide Process is being cached for later use and has an activity that corresponds * to an existing recent task. */ public static final int PROCESS_STATE_CACHED_RECENT = 17; public static final int PROCESS_STATE_CACHED_RECENT = 18; /** @hide Process is being cached for later use and is empty. */ public static final int PROCESS_STATE_CACHED_EMPTY = 18; public static final int PROCESS_STATE_CACHED_EMPTY = 19; /** @hide Process does not exist. */ public static final int PROCESS_STATE_NONEXISTENT = 19; public static final int PROCESS_STATE_NONEXISTENT = 20; // NOTE: If PROCESS_STATEs are added, then new fields must be added // to frameworks/base/core/proto/android/app/enums.proto and the following method must Loading @@ -594,6 +597,7 @@ public class ActivityManager { return AppProtoEnums.PROCESS_STATE_PERSISTENT_UI; case PROCESS_STATE_TOP: return AppProtoEnums.PROCESS_STATE_TOP; case PROCESS_STATE_FOREGROUND_SERVICE_LOCATION: case PROCESS_STATE_FOREGROUND_SERVICE: return AppProtoEnums.PROCESS_STATE_FOREGROUND_SERVICE; case PROCESS_STATE_BOUND_FOREGROUND_SERVICE: Loading Loading @@ -646,6 +650,12 @@ public class ActivityManager { return procState >= PROCESS_STATE_TRANSIENT_BACKGROUND; } /** @hide Is this a foreground service type? */ public static boolean isForegroundService(int procState) { return procState == PROCESS_STATE_FOREGROUND_SERVICE_LOCATION || procState == PROCESS_STATE_FOREGROUND_SERVICE; } /** @hide requestType for assist context: only basic information. */ public static final int ASSIST_CONTEXT_BASIC = 0; Loading Loading @@ -2874,7 +2884,7 @@ public class ActivityManager { return IMPORTANCE_PERCEPTIBLE; } else if (procState >= PROCESS_STATE_IMPORTANT_FOREGROUND) { return IMPORTANCE_VISIBLE; } else if (procState >= PROCESS_STATE_FOREGROUND_SERVICE) { } else if (procState >= PROCESS_STATE_FOREGROUND_SERVICE_LOCATION) { return IMPORTANCE_FOREGROUND_SERVICE; } else { return IMPORTANCE_FOREGROUND; Loading Loading @@ -2936,6 +2946,7 @@ public class ActivityManager { return PROCESS_STATE_IMPORTANT_FOREGROUND; } else if (importance >= IMPORTANCE_FOREGROUND_SERVICE) { return PROCESS_STATE_FOREGROUND_SERVICE; // TODO: Asymmetrical mapping for LOCATION service type. Ok? } else { return PROCESS_STATE_TOP; } Loading core/java/android/app/AppOpsManager.java +21 −6 Original line number Diff line number Diff line Loading @@ -218,6 +218,7 @@ public class AppOpsManager { @IntDef(flag = true, prefix = { "UID_STATE_" }, value = { UID_STATE_PERSISTENT, UID_STATE_TOP, UID_STATE_FOREGROUND_SERVICE_LOCATION, UID_STATE_FOREGROUND_SERVICE, UID_STATE_FOREGROUND, UID_STATE_BACKGROUND, Loading Loading @@ -247,19 +248,27 @@ public class AppOpsManager { @SystemApi public static final int UID_STATE_TOP = 1; /** * Metrics about an op when its uid is running a foreground service with location type. * @hide */ @TestApi @SystemApi public static final int UID_STATE_FOREGROUND_SERVICE_LOCATION = 2; /** * Metrics about an op when its uid is running a foreground service. * @hide */ @TestApi @SystemApi public static final int UID_STATE_FOREGROUND_SERVICE = 2; public static final int UID_STATE_FOREGROUND_SERVICE = 3; /** * Last UID state in which we don't restrict what an op can do. * @hide */ public static final int UID_STATE_LAST_NON_RESTRICTED = UID_STATE_FOREGROUND_SERVICE; public static final int UID_STATE_LAST_NON_RESTRICTED = UID_STATE_FOREGROUND_SERVICE_LOCATION; /** * Metrics about an op when its uid is in the foreground for any other reasons. Loading @@ -267,7 +276,7 @@ public class AppOpsManager { */ @TestApi @SystemApi public static final int UID_STATE_FOREGROUND = 3; public static final int UID_STATE_FOREGROUND = 4; /** * Metrics about an op when its uid is in the background for any reason. Loading @@ -275,7 +284,7 @@ public class AppOpsManager { */ @TestApi @SystemApi public static final int UID_STATE_BACKGROUND = 4; public static final int UID_STATE_BACKGROUND = 5; /** * Metrics about an op when its uid is cached. Loading @@ -283,13 +292,13 @@ public class AppOpsManager { */ @TestApi @SystemApi public static final int UID_STATE_CACHED = 5; public static final int UID_STATE_CACHED = 6; /** * Number of uid states we track. * @hide */ public static final int _NUM_UID_STATE = 6; public static final int _NUM_UID_STATE = 7; // when adding one of these: // - increment _NUM_OP Loading Loading @@ -3270,6 +3279,7 @@ public class AppOpsManager { * * @param uidState The UID state for which to query. Could be one of * {@link #UID_STATE_PERSISTENT}, {@link #UID_STATE_TOP}, * {@link #UID_STATE_FOREGROUND_SERVICE_LOCATION}, * {@link #UID_STATE_FOREGROUND_SERVICE}, {@link #UID_STATE_FOREGROUND}, * {@link #UID_STATE_BACKGROUND}, {@link #UID_STATE_CACHED}. * Loading Loading @@ -3320,6 +3330,7 @@ public class AppOpsManager { * * @param uidState The UID state for which to query. Could be one of * {@link #UID_STATE_PERSISTENT}, {@link #UID_STATE_TOP}, * {@link #UID_STATE_FOREGROUND_SERVICE_LOCATION}, * {@link #UID_STATE_FOREGROUND_SERVICE}, {@link #UID_STATE_FOREGROUND}, * {@link #UID_STATE_BACKGROUND}, {@link #UID_STATE_CACHED}. * Loading Loading @@ -3370,6 +3381,7 @@ public class AppOpsManager { * * @param uidState The UID state for which to query. Could be one of * {@link #UID_STATE_PERSISTENT}, {@link #UID_STATE_TOP}, * {@link #UID_STATE_FOREGROUND_SERVICE_LOCATION}, * {@link #UID_STATE_FOREGROUND_SERVICE}, {@link #UID_STATE_FOREGROUND}, * {@link #UID_STATE_BACKGROUND}, {@link #UID_STATE_CACHED}. * Loading Loading @@ -4787,6 +4799,9 @@ public class AppOpsManager { case UID_STATE_TOP: { return "UID_STATE_TOP"; } case UID_STATE_FOREGROUND_SERVICE_LOCATION: { return "UID_STATE_FOREGROUND_SERVICE_LOCATION"; } case UID_STATE_FOREGROUND_SERVICE: { return "UID_STATE_FOREGROUND_SERVICE"; } Loading core/java/android/os/BatteryStats.java +6 −2 Original line number Diff line number Diff line Loading @@ -16,6 +16,8 @@ package android.os; import static android.app.ActivityManager.PROCESS_STATE_FOREGROUND_SERVICE_LOCATION; import android.app.ActivityManager; import android.app.job.JobParameters; import android.content.Context; Loading Loading @@ -578,7 +580,7 @@ public abstract class BatteryStats implements Parcelable { return ActivityManager.PROCESS_STATE_NONEXISTENT; } else if (procState == ActivityManager.PROCESS_STATE_TOP) { return Uid.PROCESS_STATE_TOP; } else if (procState == ActivityManager.PROCESS_STATE_FOREGROUND_SERVICE) { } else if (ActivityManager.isForegroundService(procState)) { // State when app has put itself in the foreground. return Uid.PROCESS_STATE_FOREGROUND_SERVICE; } else if (procState <= ActivityManager.PROCESS_STATE_IMPORTANT_FOREGROUND) { Loading Loading @@ -818,7 +820,9 @@ public abstract class BatteryStats implements Parcelable { * is not attributed to any non-critical process states. */ public static final int[] CRITICAL_PROC_STATES = { PROCESS_STATE_TOP, PROCESS_STATE_FOREGROUND_SERVICE, PROCESS_STATE_FOREGROUND PROCESS_STATE_TOP, PROCESS_STATE_FOREGROUND_SERVICE_LOCATION, PROCESS_STATE_FOREGROUND_SERVICE, PROCESS_STATE_FOREGROUND }; public abstract long getProcessStateTime(int state, long elapsedRealtimeUs, int which); Loading Loading
api/system-current.txt +5 −4 Original line number Diff line number Diff line Loading @@ -347,10 +347,11 @@ package android.app { field public static final String OPSTR_WRITE_ICC_SMS = "android:write_icc_sms"; field public static final String OPSTR_WRITE_SMS = "android:write_sms"; field public static final String OPSTR_WRITE_WALLPAPER = "android:write_wallpaper"; field public static final int UID_STATE_BACKGROUND = 4; // 0x4 field public static final int UID_STATE_CACHED = 5; // 0x5 field public static final int UID_STATE_FOREGROUND = 3; // 0x3 field public static final int UID_STATE_FOREGROUND_SERVICE = 2; // 0x2 field public static final int UID_STATE_BACKGROUND = 5; // 0x5 field public static final int UID_STATE_CACHED = 6; // 0x6 field public static final int UID_STATE_FOREGROUND = 4; // 0x4 field public static final int UID_STATE_FOREGROUND_SERVICE = 3; // 0x3 field public static final int UID_STATE_FOREGROUND_SERVICE_LOCATION = 2; // 0x2 field public static final int UID_STATE_PERSISTENT = 0; // 0x0 field public static final int UID_STATE_TOP = 1; // 0x1 } Loading
api/test-current.txt +5 −4 Original line number Diff line number Diff line Loading @@ -164,10 +164,11 @@ package android.app { field public static final int OP_COARSE_LOCATION = 0; // 0x0 field public static final int OP_RECORD_AUDIO = 27; // 0x1b field public static final int OP_SYSTEM_ALERT_WINDOW = 24; // 0x18 field public static final int UID_STATE_BACKGROUND = 4; // 0x4 field public static final int UID_STATE_CACHED = 5; // 0x5 field public static final int UID_STATE_FOREGROUND = 3; // 0x3 field public static final int UID_STATE_FOREGROUND_SERVICE = 2; // 0x2 field public static final int UID_STATE_BACKGROUND = 5; // 0x5 field public static final int UID_STATE_CACHED = 6; // 0x6 field public static final int UID_STATE_FOREGROUND = 4; // 0x4 field public static final int UID_STATE_FOREGROUND_SERVICE = 3; // 0x3 field public static final int UID_STATE_FOREGROUND_SERVICE_LOCATION = 2; // 0x2 field public static final int UID_STATE_PERSISTENT = 0; // 0x0 field public static final int UID_STATE_TOP = 1; // 0x1 } Loading
core/java/android/app/ActivityManager.java +29 −18 Original line number Diff line number Diff line Loading @@ -505,71 +505,74 @@ public class ActivityManager { @UnsupportedAppUsage public static final int PROCESS_STATE_TOP = 2; /** @hide Process is hosting a foreground service with location type. */ public static final int PROCESS_STATE_FOREGROUND_SERVICE_LOCATION = 3; /** @hide Process is hosting a foreground service. */ @UnsupportedAppUsage public static final int PROCESS_STATE_FOREGROUND_SERVICE = 3; public static final int PROCESS_STATE_FOREGROUND_SERVICE = 4; /** @hide Process is hosting a foreground service due to a system binding. */ @UnsupportedAppUsage public static final int PROCESS_STATE_BOUND_FOREGROUND_SERVICE = 4; public static final int PROCESS_STATE_BOUND_FOREGROUND_SERVICE = 5; /** @hide Process is important to the user, and something they are aware of. */ public static final int PROCESS_STATE_IMPORTANT_FOREGROUND = 5; public static final int PROCESS_STATE_IMPORTANT_FOREGROUND = 6; /** @hide Process is important to the user, but not something they are aware of. */ @UnsupportedAppUsage public static final int PROCESS_STATE_IMPORTANT_BACKGROUND = 6; public static final int PROCESS_STATE_IMPORTANT_BACKGROUND = 7; /** @hide Process is in the background transient so we will try to keep running. */ public static final int PROCESS_STATE_TRANSIENT_BACKGROUND = 7; public static final int PROCESS_STATE_TRANSIENT_BACKGROUND = 8; /** @hide Process is in the background running a backup/restore operation. */ public static final int PROCESS_STATE_BACKUP = 8; public static final int PROCESS_STATE_BACKUP = 9; /** @hide Process is in the background running a service. Unlike oom_adj, this level * is used for both the normal running in background state and the executing * operations state. */ @UnsupportedAppUsage public static final int PROCESS_STATE_SERVICE = 9; public static final int PROCESS_STATE_SERVICE = 10; /** @hide Process is in the background running a receiver. Note that from the * perspective of oom_adj, receivers run at a higher foreground level, but for our * prioritization here that is not necessary and putting them below services means * many fewer changes in some process states as they receive broadcasts. */ @UnsupportedAppUsage public static final int PROCESS_STATE_RECEIVER = 10; public static final int PROCESS_STATE_RECEIVER = 11; /** @hide Same as {@link #PROCESS_STATE_TOP} but while device is sleeping. */ public static final int PROCESS_STATE_TOP_SLEEPING = 11; public static final int PROCESS_STATE_TOP_SLEEPING = 12; /** @hide Process is in the background, but it can't restore its state so we want * to try to avoid killing it. */ public static final int PROCESS_STATE_HEAVY_WEIGHT = 12; public static final int PROCESS_STATE_HEAVY_WEIGHT = 13; /** @hide Process is in the background but hosts the home activity. */ @UnsupportedAppUsage public static final int PROCESS_STATE_HOME = 13; public static final int PROCESS_STATE_HOME = 14; /** @hide Process is in the background but hosts the last shown activity. */ public static final int PROCESS_STATE_LAST_ACTIVITY = 14; public static final int PROCESS_STATE_LAST_ACTIVITY = 15; /** @hide Process is being cached for later use and contains activities. */ @UnsupportedAppUsage public static final int PROCESS_STATE_CACHED_ACTIVITY = 15; public static final int PROCESS_STATE_CACHED_ACTIVITY = 16; /** @hide Process is being cached for later use and is a client of another cached * process that contains activities. */ public static final int PROCESS_STATE_CACHED_ACTIVITY_CLIENT = 16; public static final int PROCESS_STATE_CACHED_ACTIVITY_CLIENT = 17; /** @hide Process is being cached for later use and has an activity that corresponds * to an existing recent task. */ public static final int PROCESS_STATE_CACHED_RECENT = 17; public static final int PROCESS_STATE_CACHED_RECENT = 18; /** @hide Process is being cached for later use and is empty. */ public static final int PROCESS_STATE_CACHED_EMPTY = 18; public static final int PROCESS_STATE_CACHED_EMPTY = 19; /** @hide Process does not exist. */ public static final int PROCESS_STATE_NONEXISTENT = 19; public static final int PROCESS_STATE_NONEXISTENT = 20; // NOTE: If PROCESS_STATEs are added, then new fields must be added // to frameworks/base/core/proto/android/app/enums.proto and the following method must Loading @@ -594,6 +597,7 @@ public class ActivityManager { return AppProtoEnums.PROCESS_STATE_PERSISTENT_UI; case PROCESS_STATE_TOP: return AppProtoEnums.PROCESS_STATE_TOP; case PROCESS_STATE_FOREGROUND_SERVICE_LOCATION: case PROCESS_STATE_FOREGROUND_SERVICE: return AppProtoEnums.PROCESS_STATE_FOREGROUND_SERVICE; case PROCESS_STATE_BOUND_FOREGROUND_SERVICE: Loading Loading @@ -646,6 +650,12 @@ public class ActivityManager { return procState >= PROCESS_STATE_TRANSIENT_BACKGROUND; } /** @hide Is this a foreground service type? */ public static boolean isForegroundService(int procState) { return procState == PROCESS_STATE_FOREGROUND_SERVICE_LOCATION || procState == PROCESS_STATE_FOREGROUND_SERVICE; } /** @hide requestType for assist context: only basic information. */ public static final int ASSIST_CONTEXT_BASIC = 0; Loading Loading @@ -2874,7 +2884,7 @@ public class ActivityManager { return IMPORTANCE_PERCEPTIBLE; } else if (procState >= PROCESS_STATE_IMPORTANT_FOREGROUND) { return IMPORTANCE_VISIBLE; } else if (procState >= PROCESS_STATE_FOREGROUND_SERVICE) { } else if (procState >= PROCESS_STATE_FOREGROUND_SERVICE_LOCATION) { return IMPORTANCE_FOREGROUND_SERVICE; } else { return IMPORTANCE_FOREGROUND; Loading Loading @@ -2936,6 +2946,7 @@ public class ActivityManager { return PROCESS_STATE_IMPORTANT_FOREGROUND; } else if (importance >= IMPORTANCE_FOREGROUND_SERVICE) { return PROCESS_STATE_FOREGROUND_SERVICE; // TODO: Asymmetrical mapping for LOCATION service type. Ok? } else { return PROCESS_STATE_TOP; } Loading
core/java/android/app/AppOpsManager.java +21 −6 Original line number Diff line number Diff line Loading @@ -218,6 +218,7 @@ public class AppOpsManager { @IntDef(flag = true, prefix = { "UID_STATE_" }, value = { UID_STATE_PERSISTENT, UID_STATE_TOP, UID_STATE_FOREGROUND_SERVICE_LOCATION, UID_STATE_FOREGROUND_SERVICE, UID_STATE_FOREGROUND, UID_STATE_BACKGROUND, Loading Loading @@ -247,19 +248,27 @@ public class AppOpsManager { @SystemApi public static final int UID_STATE_TOP = 1; /** * Metrics about an op when its uid is running a foreground service with location type. * @hide */ @TestApi @SystemApi public static final int UID_STATE_FOREGROUND_SERVICE_LOCATION = 2; /** * Metrics about an op when its uid is running a foreground service. * @hide */ @TestApi @SystemApi public static final int UID_STATE_FOREGROUND_SERVICE = 2; public static final int UID_STATE_FOREGROUND_SERVICE = 3; /** * Last UID state in which we don't restrict what an op can do. * @hide */ public static final int UID_STATE_LAST_NON_RESTRICTED = UID_STATE_FOREGROUND_SERVICE; public static final int UID_STATE_LAST_NON_RESTRICTED = UID_STATE_FOREGROUND_SERVICE_LOCATION; /** * Metrics about an op when its uid is in the foreground for any other reasons. Loading @@ -267,7 +276,7 @@ public class AppOpsManager { */ @TestApi @SystemApi public static final int UID_STATE_FOREGROUND = 3; public static final int UID_STATE_FOREGROUND = 4; /** * Metrics about an op when its uid is in the background for any reason. Loading @@ -275,7 +284,7 @@ public class AppOpsManager { */ @TestApi @SystemApi public static final int UID_STATE_BACKGROUND = 4; public static final int UID_STATE_BACKGROUND = 5; /** * Metrics about an op when its uid is cached. Loading @@ -283,13 +292,13 @@ public class AppOpsManager { */ @TestApi @SystemApi public static final int UID_STATE_CACHED = 5; public static final int UID_STATE_CACHED = 6; /** * Number of uid states we track. * @hide */ public static final int _NUM_UID_STATE = 6; public static final int _NUM_UID_STATE = 7; // when adding one of these: // - increment _NUM_OP Loading Loading @@ -3270,6 +3279,7 @@ public class AppOpsManager { * * @param uidState The UID state for which to query. Could be one of * {@link #UID_STATE_PERSISTENT}, {@link #UID_STATE_TOP}, * {@link #UID_STATE_FOREGROUND_SERVICE_LOCATION}, * {@link #UID_STATE_FOREGROUND_SERVICE}, {@link #UID_STATE_FOREGROUND}, * {@link #UID_STATE_BACKGROUND}, {@link #UID_STATE_CACHED}. * Loading Loading @@ -3320,6 +3330,7 @@ public class AppOpsManager { * * @param uidState The UID state for which to query. Could be one of * {@link #UID_STATE_PERSISTENT}, {@link #UID_STATE_TOP}, * {@link #UID_STATE_FOREGROUND_SERVICE_LOCATION}, * {@link #UID_STATE_FOREGROUND_SERVICE}, {@link #UID_STATE_FOREGROUND}, * {@link #UID_STATE_BACKGROUND}, {@link #UID_STATE_CACHED}. * Loading Loading @@ -3370,6 +3381,7 @@ public class AppOpsManager { * * @param uidState The UID state for which to query. Could be one of * {@link #UID_STATE_PERSISTENT}, {@link #UID_STATE_TOP}, * {@link #UID_STATE_FOREGROUND_SERVICE_LOCATION}, * {@link #UID_STATE_FOREGROUND_SERVICE}, {@link #UID_STATE_FOREGROUND}, * {@link #UID_STATE_BACKGROUND}, {@link #UID_STATE_CACHED}. * Loading Loading @@ -4787,6 +4799,9 @@ public class AppOpsManager { case UID_STATE_TOP: { return "UID_STATE_TOP"; } case UID_STATE_FOREGROUND_SERVICE_LOCATION: { return "UID_STATE_FOREGROUND_SERVICE_LOCATION"; } case UID_STATE_FOREGROUND_SERVICE: { return "UID_STATE_FOREGROUND_SERVICE"; } Loading
core/java/android/os/BatteryStats.java +6 −2 Original line number Diff line number Diff line Loading @@ -16,6 +16,8 @@ package android.os; import static android.app.ActivityManager.PROCESS_STATE_FOREGROUND_SERVICE_LOCATION; import android.app.ActivityManager; import android.app.job.JobParameters; import android.content.Context; Loading Loading @@ -578,7 +580,7 @@ public abstract class BatteryStats implements Parcelable { return ActivityManager.PROCESS_STATE_NONEXISTENT; } else if (procState == ActivityManager.PROCESS_STATE_TOP) { return Uid.PROCESS_STATE_TOP; } else if (procState == ActivityManager.PROCESS_STATE_FOREGROUND_SERVICE) { } else if (ActivityManager.isForegroundService(procState)) { // State when app has put itself in the foreground. return Uid.PROCESS_STATE_FOREGROUND_SERVICE; } else if (procState <= ActivityManager.PROCESS_STATE_IMPORTANT_FOREGROUND) { Loading Loading @@ -818,7 +820,9 @@ public abstract class BatteryStats implements Parcelable { * is not attributed to any non-critical process states. */ public static final int[] CRITICAL_PROC_STATES = { PROCESS_STATE_TOP, PROCESS_STATE_FOREGROUND_SERVICE, PROCESS_STATE_FOREGROUND PROCESS_STATE_TOP, PROCESS_STATE_FOREGROUND_SERVICE_LOCATION, PROCESS_STATE_FOREGROUND_SERVICE, PROCESS_STATE_FOREGROUND }; public abstract long getProcessStateTime(int state, long elapsedRealtimeUs, int which); Loading