/*
 * Copyright (C) 2016 The Android Open Source Project
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

package android.os.health;

/**
 * Keys for {@link HealthStats} returned from
 * {@link SystemHealthManager#takeUidSnapshot(int) SystemHealthManager.takeUidSnapshot(int)},
 * {@link SystemHealthManager#takeMyUidSnapshot() SystemHealthManager.takeMyUidSnapshot()}, and
 * {@link SystemHealthManager#takeUidSnapshots(int[]) SystemHealthManager.takeUidSnapshots(int[])}.
 */
public final class UidHealthStats {

    private UidHealthStats() {
    }

    
How many milliseconds this statistics report covers in wall-clock time while the device was on battery including both screen-on and screen-off time.
/** * How many milliseconds this statistics report covers in wall-clock time while the * device was on battery including both screen-on and screen-off time. */
@HealthKeys.Constant(type=HealthKeys.TYPE_MEASUREMENT) public static final int MEASUREMENT_REALTIME_BATTERY_MS = HealthKeys.BASE_UID + 1;
How many milliseconds this statistics report covers that the CPU was running while the device was on battery including both screen-on and screen-off time.
/** * How many milliseconds this statistics report covers that the CPU was running while the * device was on battery including both screen-on and screen-off time. */
@HealthKeys.Constant(type=HealthKeys.TYPE_MEASUREMENT) public static final int MEASUREMENT_UPTIME_BATTERY_MS = HealthKeys.BASE_UID + 2;
How many milliseconds this statistics report covers in wall-clock time while the device was on battery including both screen-on and screen-off time.
/** * How many milliseconds this statistics report covers in wall-clock time while the * device was on battery including both screen-on and screen-off time. */
@HealthKeys.Constant(type=HealthKeys.TYPE_MEASUREMENT) public static final int MEASUREMENT_REALTIME_SCREEN_OFF_BATTERY_MS = HealthKeys.BASE_UID + 3;
How many milliseconds this statistics report covers that the CPU was running while the device was on battery including both screen-on and screen-off time.
/** * How many milliseconds this statistics report covers that the CPU was running while the * device was on battery including both screen-on and screen-off time. */
@HealthKeys.Constant(type=HealthKeys.TYPE_MEASUREMENT) public static final int MEASUREMENT_UPTIME_SCREEN_OFF_BATTERY_MS = HealthKeys.BASE_UID + 4;
Key for a TimerStat for the times a full wake lock was acquired for this uid.
/** * Key for a TimerStat for the times a * {@link android.os.PowerManager#FULL_WAKE_LOCK full wake lock} * was acquired for this uid. */
@HealthKeys.Constant(type=HealthKeys.TYPE_TIMERS) public static final int TIMERS_WAKELOCKS_FULL = HealthKeys.BASE_UID + 5;
Key for a TimerStat for the times a full wake lock was acquired for this uid.
/** * Key for a TimerStat for the times a * {@link android.os.PowerManager#PARTIAL_WAKE_LOCK full wake lock} * was acquired for this uid. */
@HealthKeys.Constant(type=HealthKeys.TYPE_TIMERS) public static final int TIMERS_WAKELOCKS_PARTIAL = HealthKeys.BASE_UID + 6; @HealthKeys.Constant(type=HealthKeys.TYPE_TIMERS) public static final int TIMERS_WAKELOCKS_WINDOW = HealthKeys.BASE_UID + 7;
Key for a TimerStat for the times a system-defined wakelock was acquired to allow the application to draw when it otherwise would not be able to (e.g. on the lock screen or doze screen).
/** * Key for a TimerStat for the times a system-defined wakelock was acquired * to allow the application to draw when it otherwise would not be able to * (e.g. on the lock screen or doze screen). */
@HealthKeys.Constant(type=HealthKeys.TYPE_TIMERS) public static final int TIMERS_WAKELOCKS_DRAW = HealthKeys.BASE_UID + 8;
Key for a map of Timers for the sync adapter syncs that were done for this uid.
/** * Key for a map of Timers for the sync adapter syncs that were done for * this uid. */
@HealthKeys.Constant(type=HealthKeys.TYPE_TIMERS) public static final int TIMERS_SYNCS = HealthKeys.BASE_UID + 9;
Key for a map of Timers for the JobScheduler jobs for this uid.
/** * Key for a map of Timers for the {@link android.app.job.JobScheduler} jobs for * this uid. */
@HealthKeys.Constant(type=HealthKeys.TYPE_TIMERS) public static final int TIMERS_JOBS = HealthKeys.BASE_UID + 10;
Key for a timer for the applications use of the GPS sensor.
/** * Key for a timer for the applications use of the GPS sensor. */
@HealthKeys.Constant(type=HealthKeys.TYPE_TIMER) public static final int TIMER_GPS_SENSOR = HealthKeys.BASE_UID + 11;
Key for a map of the sensor usage for this uid. The keys are a string representation of the handle for the sensor.
/** * Key for a map of the sensor usage for this uid. The keys are a * string representation of the handle for the sensor. */
@HealthKeys.Constant(type=HealthKeys.TYPE_TIMERS) public static final int TIMERS_SENSORS = HealthKeys.BASE_UID + 12;
Key for a HealthStats with PidHealthStats keys for each of the currently running processes for this uid.
/** * Key for a HealthStats with {@link PidHealthStats} keys for each of the * currently running processes for this uid. */
@HealthKeys.Constant(type=HealthKeys.TYPE_STATS) public static final int STATS_PIDS = HealthKeys.BASE_UID + 13;
Key for a HealthStats with ProcessHealthStats keys for each of the named processes for this uid.
/** * Key for a HealthStats with {@link ProcessHealthStats} keys for each of the * named processes for this uid. */
@HealthKeys.Constant(type=HealthKeys.TYPE_STATS) public static final int STATS_PROCESSES = HealthKeys.BASE_UID + 14;
Key for a HealthStats with PackageHealthStats keys for each of the APKs that share this uid.
/** * Key for a HealthStats with {@link PackageHealthStats} keys for each of the * APKs that share this uid. */
@HealthKeys.Constant(type=HealthKeys.TYPE_STATS) public static final int STATS_PACKAGES = HealthKeys.BASE_UID + 15;
Key for a measurement of number of millseconds the wifi controller was idle but turned on on behalf of this uid.
/** * Key for a measurement of number of millseconds the wifi controller was * idle but turned on on behalf of this uid. */
@HealthKeys.Constant(type=HealthKeys.TYPE_MEASUREMENT) public static final int MEASUREMENT_WIFI_IDLE_MS = HealthKeys.BASE_UID + 16;
Key for a measurement of number of millseconds the wifi transmitter was receiving data for this uid.
/** * Key for a measurement of number of millseconds the wifi transmitter was * receiving data for this uid. */
@HealthKeys.Constant(type=HealthKeys.TYPE_MEASUREMENT) public static final int MEASUREMENT_WIFI_RX_MS = HealthKeys.BASE_UID + 17;
Key for a measurement of number of millseconds the wifi transmitter was transmitting data for this uid.
/** * Key for a measurement of number of millseconds the wifi transmitter was * transmitting data for this uid. */
@HealthKeys.Constant(type=HealthKeys.TYPE_MEASUREMENT) public static final int MEASUREMENT_WIFI_TX_MS = HealthKeys.BASE_UID + 18;
Key for a measurement of the estimated number of mA*ms used by this uid for wifi, that is to say the number of milliseconds of wifi activity times the mA current during that period.
/** * Key for a measurement of the estimated number of mA*ms used by this uid * for wifi, that is to say the number of milliseconds of wifi activity * times the mA current during that period. */
@HealthKeys.Constant(type=HealthKeys.TYPE_MEASUREMENT) public static final int MEASUREMENT_WIFI_POWER_MAMS = HealthKeys.BASE_UID + 19;
Key for a measurement of number of millseconds the bluetooth controller was idle but turned on on behalf of this uid.
/** * Key for a measurement of number of millseconds the bluetooth controller was * idle but turned on on behalf of this uid. */
@HealthKeys.Constant(type=HealthKeys.TYPE_MEASUREMENT) public static final int MEASUREMENT_BLUETOOTH_IDLE_MS = HealthKeys.BASE_UID + 20;
Key for a measurement of number of millseconds the bluetooth transmitter was receiving data for this uid.
/** * Key for a measurement of number of millseconds the bluetooth transmitter was * receiving data for this uid. */
@HealthKeys.Constant(type=HealthKeys.TYPE_MEASUREMENT) public static final int MEASUREMENT_BLUETOOTH_RX_MS = HealthKeys.BASE_UID + 21;
Key for a measurement of number of millseconds the bluetooth transmitter was transmitting data for this uid.
/** * Key for a measurement of number of millseconds the bluetooth transmitter was * transmitting data for this uid. */
@HealthKeys.Constant(type=HealthKeys.TYPE_MEASUREMENT) public static final int MEASUREMENT_BLUETOOTH_TX_MS = HealthKeys.BASE_UID + 22;
Key for a measurement of the estimated number of mA*ms used by this uid for bluetooth, that is to say the number of milliseconds of activity times the mA current during that period.
/** * Key for a measurement of the estimated number of mA*ms used by this uid * for bluetooth, that is to say the number of milliseconds of activity * times the mA current during that period. */
@HealthKeys.Constant(type=HealthKeys.TYPE_MEASUREMENT) public static final int MEASUREMENT_BLUETOOTH_POWER_MAMS = HealthKeys.BASE_UID + 23;
Key for a measurement of number of millseconds the mobile radio controller was idle but turned on on behalf of this uid.
/** * Key for a measurement of number of millseconds the mobile radio controller was * idle but turned on on behalf of this uid. */
@HealthKeys.Constant(type=HealthKeys.TYPE_MEASUREMENT) public static final int MEASUREMENT_MOBILE_IDLE_MS = HealthKeys.BASE_UID + 24;
Key for a measurement of number of millseconds the mobile radio transmitter was receiving data for this uid.
/** * Key for a measurement of number of millseconds the mobile radio transmitter was * receiving data for this uid. */
@HealthKeys.Constant(type=HealthKeys.TYPE_MEASUREMENT) public static final int MEASUREMENT_MOBILE_RX_MS = HealthKeys.BASE_UID + 25;
Key for a measurement of number of millseconds the mobile radio transmitter was transmitting data for this uid.
/** * Key for a measurement of number of millseconds the mobile radio transmitter was * transmitting data for this uid. */
@HealthKeys.Constant(type=HealthKeys.TYPE_MEASUREMENT) public static final int MEASUREMENT_MOBILE_TX_MS = HealthKeys.BASE_UID + 26;
Key for a measurement of the estimated number of mA*ms used by this uid for mobile data, that is to say the number of milliseconds of activity times the mA current during that period.
/** * Key for a measurement of the estimated number of mA*ms used by this uid * for mobile data, that is to say the number of milliseconds of activity * times the mA current during that period. */
@HealthKeys.Constant(type=HealthKeys.TYPE_MEASUREMENT) public static final int MEASUREMENT_MOBILE_POWER_MAMS = HealthKeys.BASE_UID + 27;
Key for a measurement of number of millseconds the wifi controller was active on behalf of this uid.
/** * Key for a measurement of number of millseconds the wifi controller was * active on behalf of this uid. */
@HealthKeys.Constant(type=HealthKeys.TYPE_MEASUREMENT) public static final int MEASUREMENT_WIFI_RUNNING_MS = HealthKeys.BASE_UID + 28;
Key for a measurement of number of millseconds that this uid held a full wifi lock.
/** * Key for a measurement of number of millseconds that this uid held a full wifi lock. */
@HealthKeys.Constant(type=HealthKeys.TYPE_MEASUREMENT) public static final int MEASUREMENT_WIFI_FULL_LOCK_MS = HealthKeys.BASE_UID + 29;
Key for a timer for the count and duration of wifi scans done by this uid.
/** * Key for a timer for the count and duration of wifi scans done by this uid. */
@HealthKeys.Constant(type=HealthKeys.TYPE_TIMER) public static final int TIMER_WIFI_SCAN = HealthKeys.BASE_UID + 30;
Key for a measurement of number of millseconds that this uid was performing multicast wifi traffic.
/** * Key for a measurement of number of millseconds that this uid was performing * multicast wifi traffic. */
@HealthKeys.Constant(type=HealthKeys.TYPE_MEASUREMENT) public static final int MEASUREMENT_WIFI_MULTICAST_MS = HealthKeys.BASE_UID + 31;
Key for a timer for the count and duration of audio playback done by this uid.
/** * Key for a timer for the count and duration of audio playback done by this uid. */
@HealthKeys.Constant(type=HealthKeys.TYPE_TIMER) public static final int TIMER_AUDIO = HealthKeys.BASE_UID + 32;
Key for a timer for the count and duration of video playback done by this uid.
/** * Key for a timer for the count and duration of video playback done by this uid. */
@HealthKeys.Constant(type=HealthKeys.TYPE_TIMER) public static final int TIMER_VIDEO = HealthKeys.BASE_UID + 33;
Key for a timer for the count and duration this uid had the flashlight turned on.
/** * Key for a timer for the count and duration this uid had the flashlight turned on. */
@HealthKeys.Constant(type=HealthKeys.TYPE_TIMER) public static final int TIMER_FLASHLIGHT = HealthKeys.BASE_UID + 34;
Key for a timer for the count and duration this uid had the camera turned on.
/** * Key for a timer for the count and duration this uid had the camera turned on. */
@HealthKeys.Constant(type=HealthKeys.TYPE_TIMER) public static final int TIMER_CAMERA = HealthKeys.BASE_UID + 35;
Key for a timer for the count and duration of when an activity from this uid was the foreground activitiy.
/** * Key for a timer for the count and duration of when an activity from this uid * was the foreground activitiy. */
@HealthKeys.Constant(type=HealthKeys.TYPE_TIMER) public static final int TIMER_FOREGROUND_ACTIVITY = HealthKeys.BASE_UID + 36;
Key for a timer for the count and duration of when this uid was doing bluetooth scans.
/** * Key for a timer for the count and duration of when this uid was doing bluetooth scans. */
@HealthKeys.Constant(type=HealthKeys.TYPE_TIMER) public static final int TIMER_BLUETOOTH_SCAN = HealthKeys.BASE_UID + 37;
Key for a timer for the count and duration of when this uid was in the "top" process state.
/** * Key for a timer for the count and duration of when this uid was in the "top" process state. */
@HealthKeys.Constant(type=HealthKeys.TYPE_TIMER) public static final int TIMER_PROCESS_STATE_TOP_MS = HealthKeys.BASE_UID + 38;
Key for a timer for the count and duration of when this uid was in the "foreground service" process state.
/** * Key for a timer for the count and duration of when this uid was in the "foreground service" * process state. */
@HealthKeys.Constant(type=HealthKeys.TYPE_TIMER) public static final int TIMER_PROCESS_STATE_FOREGROUND_SERVICE_MS = HealthKeys.BASE_UID + 39;
Key for a timer for the count and duration of when this uid was in the "top sleeping" process state.
/** * Key for a timer for the count and duration of when this uid was in the "top sleeping" * process state. */
@HealthKeys.Constant(type=HealthKeys.TYPE_TIMER) public static final int TIMER_PROCESS_STATE_TOP_SLEEPING_MS = HealthKeys.BASE_UID + 40;
Key for a timer for the count and duration of when this uid was in the "foreground" process state.
/** * Key for a timer for the count and duration of when this uid was in the "foreground" * process state. */
@HealthKeys.Constant(type=HealthKeys.TYPE_TIMER) public static final int TIMER_PROCESS_STATE_FOREGROUND_MS = HealthKeys.BASE_UID + 41;
Key for a timer for the count and duration of when this uid was in the "background" process state.
/** * Key for a timer for the count and duration of when this uid was in the "background" * process state. */
@HealthKeys.Constant(type=HealthKeys.TYPE_TIMER) public static final int TIMER_PROCESS_STATE_BACKGROUND_MS = HealthKeys.BASE_UID + 42;
Key for a timer for the count and duration of when this uid was in the "cached" process state.
/** * Key for a timer for the count and duration of when this uid was in the "cached" process * state. */
@HealthKeys.Constant(type=HealthKeys.TYPE_TIMER) public static final int TIMER_PROCESS_STATE_CACHED_MS = HealthKeys.BASE_UID + 43;
Key for a timer for the count and duration this uid had the vibrator turned on.
/** * Key for a timer for the count and duration this uid had the vibrator turned on. */
@HealthKeys.Constant(type=HealthKeys.TYPE_TIMER) public static final int TIMER_VIBRATOR = HealthKeys.BASE_UID + 44;
Key for a measurement of number of software-generated user activity events caused by the UID. Calls to userActivity() reset the user activity countdown timer and keep the screen on for the user's preferred screen-on setting.
/** * Key for a measurement of number of software-generated user activity events caused * by the UID. Calls to userActivity() reset the user activity countdown timer and * keep the screen on for the user's preferred screen-on setting. */
@HealthKeys.Constant(type=HealthKeys.TYPE_MEASUREMENT) public static final int MEASUREMENT_OTHER_USER_ACTIVITY_COUNT = HealthKeys.BASE_UID + 45;
Key for a measurement of number of user activity events due to physical button presses caused by the UID. Calls to userActivity() reset the user activity countdown timer and keep the screen on for the user's preferred screen-on setting.
/** * Key for a measurement of number of user activity events due to physical button presses caused * by the UID. Calls to userActivity() reset the user activity countdown timer and * keep the screen on for the user's preferred screen-on setting. */
@HealthKeys.Constant(type=HealthKeys.TYPE_MEASUREMENT) public static final int MEASUREMENT_BUTTON_USER_ACTIVITY_COUNT = HealthKeys.BASE_UID + 46;
Key for a measurement of number of user activity events due to touch events caused by the UID. Calls to userActivity() reset the user activity countdown timer and keep the screen on for the user's preferred screen-on setting.
/** * Key for a measurement of number of user activity events due to touch events caused * by the UID. Calls to userActivity() reset the user activity countdown timer and * keep the screen on for the user's preferred screen-on setting. */
@HealthKeys.Constant(type=HealthKeys.TYPE_MEASUREMENT) public static final int MEASUREMENT_TOUCH_USER_ACTIVITY_COUNT = HealthKeys.BASE_UID + 47;
Key for a measurement of number of bytes received for this uid by the mobile radio.
/** * Key for a measurement of number of bytes received for this uid by the mobile radio. */
@HealthKeys.Constant(type=HealthKeys.TYPE_MEASUREMENT) public static final int MEASUREMENT_MOBILE_RX_BYTES = HealthKeys.BASE_UID + 48;
Key for a measurement of number of bytes transmitted for this uid by the mobile radio.
/** * Key for a measurement of number of bytes transmitted for this uid by the mobile radio. */
@HealthKeys.Constant(type=HealthKeys.TYPE_MEASUREMENT) public static final int MEASUREMENT_MOBILE_TX_BYTES = HealthKeys.BASE_UID + 49;
Key for a measurement of number of bytes received for this uid by the wifi radio.
/** * Key for a measurement of number of bytes received for this uid by the wifi radio. */
@HealthKeys.Constant(type=HealthKeys.TYPE_MEASUREMENT) public static final int MEASUREMENT_WIFI_RX_BYTES = HealthKeys.BASE_UID + 50;
Key for a measurement of number of bytes transmitted for this uid by the wifi radio.
/** * Key for a measurement of number of bytes transmitted for this uid by the wifi radio. */
@HealthKeys.Constant(type=HealthKeys.TYPE_MEASUREMENT) public static final int MEASUREMENT_WIFI_TX_BYTES = HealthKeys.BASE_UID + 51;
Key for a measurement of number of bytes received for this uid by the bluetooth radio.
/** * Key for a measurement of number of bytes received for this uid by the bluetooth radio. */
@HealthKeys.Constant(type=HealthKeys.TYPE_MEASUREMENT) public static final int MEASUREMENT_BLUETOOTH_RX_BYTES = HealthKeys.BASE_UID + 52;
Key for a measurement of number of bytes transmitted for this uid by the bluetooth radio.
/** * Key for a measurement of number of bytes transmitted for this uid by the bluetooth radio. */
@HealthKeys.Constant(type=HealthKeys.TYPE_MEASUREMENT) public static final int MEASUREMENT_BLUETOOTH_TX_BYTES = HealthKeys.BASE_UID + 53;
Key for a measurement of number of packets received for this uid by the mobile radio.
/** * Key for a measurement of number of packets received for this uid by the mobile radio. */
@HealthKeys.Constant(type=HealthKeys.TYPE_MEASUREMENT) public static final int MEASUREMENT_MOBILE_RX_PACKETS = HealthKeys.BASE_UID + 54;
Key for a measurement of number of packets transmitted for this uid by the mobile radio.
/** * Key for a measurement of number of packets transmitted for this uid by the mobile radio. */
@HealthKeys.Constant(type=HealthKeys.TYPE_MEASUREMENT) public static final int MEASUREMENT_MOBILE_TX_PACKETS = HealthKeys.BASE_UID + 55;
Key for a measurement of number of packets received for this uid by the wifi radio.
/** * Key for a measurement of number of packets received for this uid by the wifi radio. */
@HealthKeys.Constant(type=HealthKeys.TYPE_MEASUREMENT) public static final int MEASUREMENT_WIFI_RX_PACKETS = HealthKeys.BASE_UID + 56;
Key for a measurement of number of packets transmitted for this uid by the wifi radio.
/** * Key for a measurement of number of packets transmitted for this uid by the wifi radio. */
@HealthKeys.Constant(type=HealthKeys.TYPE_MEASUREMENT) public static final int MEASUREMENT_WIFI_TX_PACKETS = HealthKeys.BASE_UID + 57;
Key for a measurement of number of packets received for this uid by the bluetooth radio.
/** * Key for a measurement of number of packets received for this uid by the bluetooth radio. */
@HealthKeys.Constant(type=HealthKeys.TYPE_MEASUREMENT) public static final int MEASUREMENT_BLUETOOTH_RX_PACKETS = HealthKeys.BASE_UID + 58;
Key for a measurement of number of packets transmitted for this uid by the bluetooth radio.
/** * Key for a measurement of number of packets transmitted for this uid by the bluetooth radio. */
@HealthKeys.Constant(type=HealthKeys.TYPE_MEASUREMENT) public static final int MEASUREMENT_BLUETOOTH_TX_PACKETS = HealthKeys.BASE_UID + 59;
Key for a timer for the count and duration the mobile radio was turned on for this uid.
/** * Key for a timer for the count and duration the mobile radio was turned on for this uid. */
@HealthKeys.Constant(type=HealthKeys.TYPE_TIMER) public static final int TIMER_MOBILE_RADIO_ACTIVE = HealthKeys.BASE_UID + 61;
Key for a measurement of the number of milliseconds spent by the CPU running user space code for this uid.
/** * Key for a measurement of the number of milliseconds spent by the CPU running user space * code for this uid. */
@HealthKeys.Constant(type=HealthKeys.TYPE_MEASUREMENT) public static final int MEASUREMENT_USER_CPU_TIME_MS = HealthKeys.BASE_UID + 62;
Key for a measurement of the number of milliseconds spent by the CPU running kernel code for this uid.
/** * Key for a measurement of the number of milliseconds spent by the CPU running kernel * code for this uid. */
@HealthKeys.Constant(type=HealthKeys.TYPE_MEASUREMENT) public static final int MEASUREMENT_SYSTEM_CPU_TIME_MS = HealthKeys.BASE_UID + 63;
An estimate of the number of milliamp-microsends used by this uid.
Deprecated:this measurement is vendor-dependent and not reliable.
/** * An estimate of the number of milliamp-microsends used by this uid. * * @deprecated this measurement is vendor-dependent and not reliable. */
@Deprecated @HealthKeys.Constant(type=HealthKeys.TYPE_MEASUREMENT) public static final int MEASUREMENT_CPU_POWER_MAMS = HealthKeys.BASE_UID + 64;
@hide
/** * @hide */
public static final HealthKeys.Constants CONSTANTS = new HealthKeys.Constants(UidHealthStats.class); }