Loading api/system-current.txt +21 −0 Original line number Diff line number Diff line Loading @@ -6224,6 +6224,27 @@ package android.os { method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void noteWifiScanStoppedFromSource(@NonNull android.os.WorkSource); method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void noteWifiState(int, @Nullable String); method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void noteWifiSupplicantStateChanged(int, boolean); field public static final int WIFI_STATE_OFF = 0; // 0x0 field public static final int WIFI_STATE_OFF_SCANNING = 1; // 0x1 field public static final int WIFI_STATE_ON_CONNECTED_P2P = 5; // 0x5 field public static final int WIFI_STATE_ON_CONNECTED_STA = 4; // 0x4 field public static final int WIFI_STATE_ON_CONNECTED_STA_P2P = 6; // 0x6 field public static final int WIFI_STATE_ON_DISCONNECTED = 3; // 0x3 field public static final int WIFI_STATE_ON_NO_NETWORKS = 2; // 0x2 field public static final int WIFI_STATE_SOFT_AP = 7; // 0x7 field public static final int WIFI_SUPPL_STATE_ASSOCIATED = 7; // 0x7 field public static final int WIFI_SUPPL_STATE_ASSOCIATING = 6; // 0x6 field public static final int WIFI_SUPPL_STATE_AUTHENTICATING = 5; // 0x5 field public static final int WIFI_SUPPL_STATE_COMPLETED = 10; // 0xa field public static final int WIFI_SUPPL_STATE_DISCONNECTED = 1; // 0x1 field public static final int WIFI_SUPPL_STATE_DORMANT = 11; // 0xb field public static final int WIFI_SUPPL_STATE_FOUR_WAY_HANDSHAKE = 8; // 0x8 field public static final int WIFI_SUPPL_STATE_GROUP_HANDSHAKE = 9; // 0x9 field public static final int WIFI_SUPPL_STATE_INACTIVE = 3; // 0x3 field public static final int WIFI_SUPPL_STATE_INTERFACE_DISABLED = 2; // 0x2 field public static final int WIFI_SUPPL_STATE_INVALID = 0; // 0x0 field public static final int WIFI_SUPPL_STATE_SCANNING = 4; // 0x4 field public static final int WIFI_SUPPL_STATE_UNINITIALIZED = 12; // 0xc } public class Binder implements android.os.IBinder { Loading core/java/android/os/BatteryStats.java +4 −60 Original line number Diff line number Diff line Loading @@ -17,6 +17,8 @@ package android.os; import static android.app.ActivityManager.PROCESS_STATE_BOUND_TOP; import static android.os.BatteryStatsManager.NUM_WIFI_STATES; import static android.os.BatteryStatsManager.NUM_WIFI_SUPPL_STATES; import android.annotation.IntDef; import android.annotation.UnsupportedAppUsage; Loading @@ -24,6 +26,8 @@ import android.app.ActivityManager; import android.app.job.JobParameters; import android.content.Context; import android.content.pm.ApplicationInfo; import android.os.BatteryStatsManager.WifiState; import android.os.BatteryStatsManager.WifiSupplState; import android.server.ServerProtoEnums; import android.service.batterystats.BatteryStatsServiceDumpHistoryProto; import android.service.batterystats.BatteryStatsServiceDumpProto; Loading Loading @@ -2458,41 +2462,6 @@ public abstract class BatteryStats implements Parcelable { */ public abstract Timer getPhoneDataConnectionTimer(int dataType); public static final int WIFI_SUPPL_STATE_INVALID = 0; public static final int WIFI_SUPPL_STATE_DISCONNECTED = 1; public static final int WIFI_SUPPL_STATE_INTERFACE_DISABLED = 2; public static final int WIFI_SUPPL_STATE_INACTIVE = 3; public static final int WIFI_SUPPL_STATE_SCANNING = 4; public static final int WIFI_SUPPL_STATE_AUTHENTICATING = 5; public static final int WIFI_SUPPL_STATE_ASSOCIATING = 6; public static final int WIFI_SUPPL_STATE_ASSOCIATED = 7; public static final int WIFI_SUPPL_STATE_FOUR_WAY_HANDSHAKE = 8; public static final int WIFI_SUPPL_STATE_GROUP_HANDSHAKE = 9; public static final int WIFI_SUPPL_STATE_COMPLETED = 10; public static final int WIFI_SUPPL_STATE_DORMANT = 11; public static final int WIFI_SUPPL_STATE_UNINITIALIZED = 12; public static final int NUM_WIFI_SUPPL_STATES = WIFI_SUPPL_STATE_UNINITIALIZED+1; /** @hide */ @IntDef(flag = true, prefix = { "WIFI_SUPPL_STATE_" }, value = { WIFI_SUPPL_STATE_INVALID, WIFI_SUPPL_STATE_DISCONNECTED, WIFI_SUPPL_STATE_INTERFACE_DISABLED, WIFI_SUPPL_STATE_INACTIVE, WIFI_SUPPL_STATE_SCANNING, WIFI_SUPPL_STATE_AUTHENTICATING, WIFI_SUPPL_STATE_ASSOCIATING, WIFI_SUPPL_STATE_ASSOCIATED, WIFI_SUPPL_STATE_FOUR_WAY_HANDSHAKE, WIFI_SUPPL_STATE_GROUP_HANDSHAKE, WIFI_SUPPL_STATE_COMPLETED, WIFI_SUPPL_STATE_DORMANT, WIFI_SUPPL_STATE_UNINITIALIZED, }) @Retention(RetentionPolicy.SOURCE) public @interface WifiSupplState {} static final String[] WIFI_SUPPL_STATE_NAMES = { "invalid", "disconn", "disabled", "inactive", "scanning", "authenticating", "associating", "associated", "4-way-handshake", Loading Loading @@ -2635,31 +2604,6 @@ public abstract class BatteryStats implements Parcelable { @UnsupportedAppUsage public abstract long getGlobalWifiRunningTime(long elapsedRealtimeUs, int which); public static final int WIFI_STATE_OFF = 0; public static final int WIFI_STATE_OFF_SCANNING = 1; public static final int WIFI_STATE_ON_NO_NETWORKS = 2; public static final int WIFI_STATE_ON_DISCONNECTED = 3; public static final int WIFI_STATE_ON_CONNECTED_STA = 4; public static final int WIFI_STATE_ON_CONNECTED_P2P = 5; public static final int WIFI_STATE_ON_CONNECTED_STA_P2P = 6; public static final int WIFI_STATE_SOFT_AP = 7; public static final int NUM_WIFI_STATES = WIFI_STATE_SOFT_AP + 1; /** @hide */ @IntDef(flag = true, prefix = { "WIFI_STATE_" }, value = { WIFI_STATE_OFF, WIFI_STATE_OFF_SCANNING, WIFI_STATE_ON_NO_NETWORKS, WIFI_STATE_ON_DISCONNECTED, WIFI_STATE_ON_CONNECTED_STA, WIFI_STATE_ON_CONNECTED_P2P, WIFI_STATE_ON_CONNECTED_STA_P2P, WIFI_STATE_SOFT_AP }) @Retention(RetentionPolicy.SOURCE) public @interface WifiState {} static final String[] WIFI_STATE_NAMES = { "off", "scanning", "no_net", "disconn", "sta", "p2p", "sta_p2p", "soft_ap" Loading core/java/android/os/BatteryStatsManager.java +116 −2 Original line number Diff line number Diff line Loading @@ -16,6 +16,7 @@ package android.os; import android.annotation.IntDef; import android.annotation.IntRange; import android.annotation.NonNull; import android.annotation.Nullable; Loading @@ -28,6 +29,9 @@ import android.os.connectivity.WifiBatteryStats; import com.android.internal.app.IBatteryStats; import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; /** * This class provides an API surface for internal system components to report events that are * needed for battery usage/estimation and battery blaming for apps. Loading @@ -39,6 +43,116 @@ import com.android.internal.app.IBatteryStats; @SystemApi @SystemService(Context.BATTERY_STATS_SERVICE) public class BatteryStatsManager { /** * Wifi states. * * @see #noteWifiState(int, String) */ /** * Wifi fully off. */ public static final int WIFI_STATE_OFF = 0; /** * Wifi connectivity off, but scanning enabled. */ public static final int WIFI_STATE_OFF_SCANNING = 1; /** * Wifi on, but no saved infrastructure networks to connect to. */ public static final int WIFI_STATE_ON_NO_NETWORKS = 2; /** * Wifi on, but not connected to any infrastructure networks. */ public static final int WIFI_STATE_ON_DISCONNECTED = 3; /** * Wifi on and connected to a infrastructure network. */ public static final int WIFI_STATE_ON_CONNECTED_STA = 4; /** * Wifi on and connected to a P2P device, but no infrastructure connection to a network. */ public static final int WIFI_STATE_ON_CONNECTED_P2P = 5; /** * Wifi on and connected to both a P2P device and infrastructure connection to a network. */ public static final int WIFI_STATE_ON_CONNECTED_STA_P2P = 6; /** * SoftAp/Hotspot turned on. */ public static final int WIFI_STATE_SOFT_AP = 7; /** @hide */ public static final int NUM_WIFI_STATES = WIFI_STATE_SOFT_AP + 1; /** @hide */ @IntDef(flag = true, prefix = { "WIFI_STATE_" }, value = { WIFI_STATE_OFF, WIFI_STATE_OFF_SCANNING, WIFI_STATE_ON_NO_NETWORKS, WIFI_STATE_ON_DISCONNECTED, WIFI_STATE_ON_CONNECTED_STA, WIFI_STATE_ON_CONNECTED_P2P, WIFI_STATE_ON_CONNECTED_STA_P2P, WIFI_STATE_SOFT_AP }) @Retention(RetentionPolicy.SOURCE) public @interface WifiState {} /** * Wifi supplicant daemon states. * * @see android.net.wifi.SupplicantState for detailed description of states. * @see #noteWifiSupplicantStateChanged(int) */ /** @see android.net.wifi.SupplicantState#INVALID */ public static final int WIFI_SUPPL_STATE_INVALID = 0; /** @see android.net.wifi.SupplicantState#DISCONNECTED*/ public static final int WIFI_SUPPL_STATE_DISCONNECTED = 1; /** @see android.net.wifi.SupplicantState#INTERFACE_DISABLED */ public static final int WIFI_SUPPL_STATE_INTERFACE_DISABLED = 2; /** @see android.net.wifi.SupplicantState#INACTIVE*/ public static final int WIFI_SUPPL_STATE_INACTIVE = 3; /** @see android.net.wifi.SupplicantState#SCANNING*/ public static final int WIFI_SUPPL_STATE_SCANNING = 4; /** @see android.net.wifi.SupplicantState#AUTHENTICATING */ public static final int WIFI_SUPPL_STATE_AUTHENTICATING = 5; /** @see android.net.wifi.SupplicantState#ASSOCIATING */ public static final int WIFI_SUPPL_STATE_ASSOCIATING = 6; /** @see android.net.wifi.SupplicantState#ASSOCIATED */ public static final int WIFI_SUPPL_STATE_ASSOCIATED = 7; /** @see android.net.wifi.SupplicantState#FOUR_WAY_HANDSHAKE */ public static final int WIFI_SUPPL_STATE_FOUR_WAY_HANDSHAKE = 8; /** @see android.net.wifi.SupplicantState#GROUP_HANDSHAKE */ public static final int WIFI_SUPPL_STATE_GROUP_HANDSHAKE = 9; /** @see android.net.wifi.SupplicantState#COMPLETED */ public static final int WIFI_SUPPL_STATE_COMPLETED = 10; /** @see android.net.wifi.SupplicantState#DORMANT */ public static final int WIFI_SUPPL_STATE_DORMANT = 11; /** @see android.net.wifi.SupplicantState#UNINITIALIZED */ public static final int WIFI_SUPPL_STATE_UNINITIALIZED = 12; /** @hide */ public static final int NUM_WIFI_SUPPL_STATES = WIFI_SUPPL_STATE_UNINITIALIZED + 1; /** @hide */ @IntDef(flag = true, prefix = { "WIFI_SUPPL_STATE_" }, value = { WIFI_SUPPL_STATE_INVALID, WIFI_SUPPL_STATE_DISCONNECTED, WIFI_SUPPL_STATE_INTERFACE_DISABLED, WIFI_SUPPL_STATE_INACTIVE, WIFI_SUPPL_STATE_SCANNING, WIFI_SUPPL_STATE_AUTHENTICATING, WIFI_SUPPL_STATE_ASSOCIATING, WIFI_SUPPL_STATE_ASSOCIATED, WIFI_SUPPL_STATE_FOUR_WAY_HANDSHAKE, WIFI_SUPPL_STATE_GROUP_HANDSHAKE, WIFI_SUPPL_STATE_COMPLETED, WIFI_SUPPL_STATE_DORMANT, WIFI_SUPPL_STATE_UNINITIALIZED, }) @Retention(RetentionPolicy.SOURCE) public @interface WifiSupplState {} private final IBatteryStats mBatteryStats; /** @hide */ Loading Loading @@ -91,7 +205,7 @@ public class BatteryStatsManager { * @param accessPoint SSID of the network if wifi is connected to STA, else null. */ @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void noteWifiState(@BatteryStats.WifiState int newWifiState, public void noteWifiState(@WifiState int newWifiState, @Nullable String accessPoint) { try { mBatteryStats.noteWifiState(newWifiState, accessPoint); Loading Loading @@ -224,7 +338,7 @@ public class BatteryStatsManager { * authentication failure. */ @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void noteWifiSupplicantStateChanged(@BatteryStats.WifiSupplState int newSupplState, public void noteWifiSupplicantStateChanged(@WifiSupplState int newSupplState, boolean failedAuth) { try { mBatteryStats.noteWifiSupplicantStateChanged(newSupplState, failedAuth); Loading core/java/android/os/connectivity/WifiBatteryStats.java +5 −4 Original line number Diff line number Diff line Loading @@ -19,6 +19,7 @@ import android.annotation.NonNull; import android.annotation.Nullable; import android.annotation.SystemApi; import android.os.BatteryStats; import android.os.BatteryStatsManager; import android.os.Parcel; import android.os.Parcelable; Loading Loading @@ -46,9 +47,9 @@ public final class WifiBatteryStats implements Parcelable { private long mEnergyConsumedMaMillis = 0; private long mNumAppScanRequest = 0; private long[] mTimeInStateMillis = new long[BatteryStats.NUM_WIFI_STATES]; new long[BatteryStatsManager.NUM_WIFI_STATES]; private long[] mTimeInSupplicantStateMillis = new long[BatteryStats.NUM_WIFI_SUPPL_STATES]; new long[BatteryStatsManager.NUM_WIFI_SUPPL_STATES]; private long[] mTimeInRxSignalStrengthLevelMillis = new long[BatteryStats.NUM_WIFI_SIGNAL_STRENGTH_BINS]; private long mMonitoredRailChargeConsumedMaMillis = 0; Loading Loading @@ -369,7 +370,7 @@ public final class WifiBatteryStats implements Parcelable { /** @hide */ public void setTimeInStateMillis(long[] t) { mTimeInStateMillis = Arrays.copyOfRange(t, 0, Math.min(t.length, BatteryStats.NUM_WIFI_STATES)); Math.min(t.length, BatteryStatsManager.NUM_WIFI_STATES)); return; } Loading @@ -383,7 +384,7 @@ public final class WifiBatteryStats implements Parcelable { /** @hide */ public void setTimeInSupplicantStateMillis(long[] t) { mTimeInSupplicantStateMillis = Arrays.copyOfRange( t, 0, Math.min(t.length, BatteryStats.NUM_WIFI_SUPPL_STATES)); t, 0, Math.min(t.length, BatteryStatsManager.NUM_WIFI_SUPPL_STATES)); return; } Loading core/java/com/android/internal/os/BatteryStatsImpl.java +3 −0 Original line number Diff line number Diff line Loading @@ -16,6 +16,9 @@ package com.android.internal.os; import static android.os.BatteryStatsManager.NUM_WIFI_STATES; import static android.os.BatteryStatsManager.NUM_WIFI_SUPPL_STATES; import android.annotation.NonNull; import android.annotation.Nullable; import android.annotation.UnsupportedAppUsage; Loading Loading
api/system-current.txt +21 −0 Original line number Diff line number Diff line Loading @@ -6224,6 +6224,27 @@ package android.os { method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void noteWifiScanStoppedFromSource(@NonNull android.os.WorkSource); method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void noteWifiState(int, @Nullable String); method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void noteWifiSupplicantStateChanged(int, boolean); field public static final int WIFI_STATE_OFF = 0; // 0x0 field public static final int WIFI_STATE_OFF_SCANNING = 1; // 0x1 field public static final int WIFI_STATE_ON_CONNECTED_P2P = 5; // 0x5 field public static final int WIFI_STATE_ON_CONNECTED_STA = 4; // 0x4 field public static final int WIFI_STATE_ON_CONNECTED_STA_P2P = 6; // 0x6 field public static final int WIFI_STATE_ON_DISCONNECTED = 3; // 0x3 field public static final int WIFI_STATE_ON_NO_NETWORKS = 2; // 0x2 field public static final int WIFI_STATE_SOFT_AP = 7; // 0x7 field public static final int WIFI_SUPPL_STATE_ASSOCIATED = 7; // 0x7 field public static final int WIFI_SUPPL_STATE_ASSOCIATING = 6; // 0x6 field public static final int WIFI_SUPPL_STATE_AUTHENTICATING = 5; // 0x5 field public static final int WIFI_SUPPL_STATE_COMPLETED = 10; // 0xa field public static final int WIFI_SUPPL_STATE_DISCONNECTED = 1; // 0x1 field public static final int WIFI_SUPPL_STATE_DORMANT = 11; // 0xb field public static final int WIFI_SUPPL_STATE_FOUR_WAY_HANDSHAKE = 8; // 0x8 field public static final int WIFI_SUPPL_STATE_GROUP_HANDSHAKE = 9; // 0x9 field public static final int WIFI_SUPPL_STATE_INACTIVE = 3; // 0x3 field public static final int WIFI_SUPPL_STATE_INTERFACE_DISABLED = 2; // 0x2 field public static final int WIFI_SUPPL_STATE_INVALID = 0; // 0x0 field public static final int WIFI_SUPPL_STATE_SCANNING = 4; // 0x4 field public static final int WIFI_SUPPL_STATE_UNINITIALIZED = 12; // 0xc } public class Binder implements android.os.IBinder { Loading
core/java/android/os/BatteryStats.java +4 −60 Original line number Diff line number Diff line Loading @@ -17,6 +17,8 @@ package android.os; import static android.app.ActivityManager.PROCESS_STATE_BOUND_TOP; import static android.os.BatteryStatsManager.NUM_WIFI_STATES; import static android.os.BatteryStatsManager.NUM_WIFI_SUPPL_STATES; import android.annotation.IntDef; import android.annotation.UnsupportedAppUsage; Loading @@ -24,6 +26,8 @@ import android.app.ActivityManager; import android.app.job.JobParameters; import android.content.Context; import android.content.pm.ApplicationInfo; import android.os.BatteryStatsManager.WifiState; import android.os.BatteryStatsManager.WifiSupplState; import android.server.ServerProtoEnums; import android.service.batterystats.BatteryStatsServiceDumpHistoryProto; import android.service.batterystats.BatteryStatsServiceDumpProto; Loading Loading @@ -2458,41 +2462,6 @@ public abstract class BatteryStats implements Parcelable { */ public abstract Timer getPhoneDataConnectionTimer(int dataType); public static final int WIFI_SUPPL_STATE_INVALID = 0; public static final int WIFI_SUPPL_STATE_DISCONNECTED = 1; public static final int WIFI_SUPPL_STATE_INTERFACE_DISABLED = 2; public static final int WIFI_SUPPL_STATE_INACTIVE = 3; public static final int WIFI_SUPPL_STATE_SCANNING = 4; public static final int WIFI_SUPPL_STATE_AUTHENTICATING = 5; public static final int WIFI_SUPPL_STATE_ASSOCIATING = 6; public static final int WIFI_SUPPL_STATE_ASSOCIATED = 7; public static final int WIFI_SUPPL_STATE_FOUR_WAY_HANDSHAKE = 8; public static final int WIFI_SUPPL_STATE_GROUP_HANDSHAKE = 9; public static final int WIFI_SUPPL_STATE_COMPLETED = 10; public static final int WIFI_SUPPL_STATE_DORMANT = 11; public static final int WIFI_SUPPL_STATE_UNINITIALIZED = 12; public static final int NUM_WIFI_SUPPL_STATES = WIFI_SUPPL_STATE_UNINITIALIZED+1; /** @hide */ @IntDef(flag = true, prefix = { "WIFI_SUPPL_STATE_" }, value = { WIFI_SUPPL_STATE_INVALID, WIFI_SUPPL_STATE_DISCONNECTED, WIFI_SUPPL_STATE_INTERFACE_DISABLED, WIFI_SUPPL_STATE_INACTIVE, WIFI_SUPPL_STATE_SCANNING, WIFI_SUPPL_STATE_AUTHENTICATING, WIFI_SUPPL_STATE_ASSOCIATING, WIFI_SUPPL_STATE_ASSOCIATED, WIFI_SUPPL_STATE_FOUR_WAY_HANDSHAKE, WIFI_SUPPL_STATE_GROUP_HANDSHAKE, WIFI_SUPPL_STATE_COMPLETED, WIFI_SUPPL_STATE_DORMANT, WIFI_SUPPL_STATE_UNINITIALIZED, }) @Retention(RetentionPolicy.SOURCE) public @interface WifiSupplState {} static final String[] WIFI_SUPPL_STATE_NAMES = { "invalid", "disconn", "disabled", "inactive", "scanning", "authenticating", "associating", "associated", "4-way-handshake", Loading Loading @@ -2635,31 +2604,6 @@ public abstract class BatteryStats implements Parcelable { @UnsupportedAppUsage public abstract long getGlobalWifiRunningTime(long elapsedRealtimeUs, int which); public static final int WIFI_STATE_OFF = 0; public static final int WIFI_STATE_OFF_SCANNING = 1; public static final int WIFI_STATE_ON_NO_NETWORKS = 2; public static final int WIFI_STATE_ON_DISCONNECTED = 3; public static final int WIFI_STATE_ON_CONNECTED_STA = 4; public static final int WIFI_STATE_ON_CONNECTED_P2P = 5; public static final int WIFI_STATE_ON_CONNECTED_STA_P2P = 6; public static final int WIFI_STATE_SOFT_AP = 7; public static final int NUM_WIFI_STATES = WIFI_STATE_SOFT_AP + 1; /** @hide */ @IntDef(flag = true, prefix = { "WIFI_STATE_" }, value = { WIFI_STATE_OFF, WIFI_STATE_OFF_SCANNING, WIFI_STATE_ON_NO_NETWORKS, WIFI_STATE_ON_DISCONNECTED, WIFI_STATE_ON_CONNECTED_STA, WIFI_STATE_ON_CONNECTED_P2P, WIFI_STATE_ON_CONNECTED_STA_P2P, WIFI_STATE_SOFT_AP }) @Retention(RetentionPolicy.SOURCE) public @interface WifiState {} static final String[] WIFI_STATE_NAMES = { "off", "scanning", "no_net", "disconn", "sta", "p2p", "sta_p2p", "soft_ap" Loading
core/java/android/os/BatteryStatsManager.java +116 −2 Original line number Diff line number Diff line Loading @@ -16,6 +16,7 @@ package android.os; import android.annotation.IntDef; import android.annotation.IntRange; import android.annotation.NonNull; import android.annotation.Nullable; Loading @@ -28,6 +29,9 @@ import android.os.connectivity.WifiBatteryStats; import com.android.internal.app.IBatteryStats; import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; /** * This class provides an API surface for internal system components to report events that are * needed for battery usage/estimation and battery blaming for apps. Loading @@ -39,6 +43,116 @@ import com.android.internal.app.IBatteryStats; @SystemApi @SystemService(Context.BATTERY_STATS_SERVICE) public class BatteryStatsManager { /** * Wifi states. * * @see #noteWifiState(int, String) */ /** * Wifi fully off. */ public static final int WIFI_STATE_OFF = 0; /** * Wifi connectivity off, but scanning enabled. */ public static final int WIFI_STATE_OFF_SCANNING = 1; /** * Wifi on, but no saved infrastructure networks to connect to. */ public static final int WIFI_STATE_ON_NO_NETWORKS = 2; /** * Wifi on, but not connected to any infrastructure networks. */ public static final int WIFI_STATE_ON_DISCONNECTED = 3; /** * Wifi on and connected to a infrastructure network. */ public static final int WIFI_STATE_ON_CONNECTED_STA = 4; /** * Wifi on and connected to a P2P device, but no infrastructure connection to a network. */ public static final int WIFI_STATE_ON_CONNECTED_P2P = 5; /** * Wifi on and connected to both a P2P device and infrastructure connection to a network. */ public static final int WIFI_STATE_ON_CONNECTED_STA_P2P = 6; /** * SoftAp/Hotspot turned on. */ public static final int WIFI_STATE_SOFT_AP = 7; /** @hide */ public static final int NUM_WIFI_STATES = WIFI_STATE_SOFT_AP + 1; /** @hide */ @IntDef(flag = true, prefix = { "WIFI_STATE_" }, value = { WIFI_STATE_OFF, WIFI_STATE_OFF_SCANNING, WIFI_STATE_ON_NO_NETWORKS, WIFI_STATE_ON_DISCONNECTED, WIFI_STATE_ON_CONNECTED_STA, WIFI_STATE_ON_CONNECTED_P2P, WIFI_STATE_ON_CONNECTED_STA_P2P, WIFI_STATE_SOFT_AP }) @Retention(RetentionPolicy.SOURCE) public @interface WifiState {} /** * Wifi supplicant daemon states. * * @see android.net.wifi.SupplicantState for detailed description of states. * @see #noteWifiSupplicantStateChanged(int) */ /** @see android.net.wifi.SupplicantState#INVALID */ public static final int WIFI_SUPPL_STATE_INVALID = 0; /** @see android.net.wifi.SupplicantState#DISCONNECTED*/ public static final int WIFI_SUPPL_STATE_DISCONNECTED = 1; /** @see android.net.wifi.SupplicantState#INTERFACE_DISABLED */ public static final int WIFI_SUPPL_STATE_INTERFACE_DISABLED = 2; /** @see android.net.wifi.SupplicantState#INACTIVE*/ public static final int WIFI_SUPPL_STATE_INACTIVE = 3; /** @see android.net.wifi.SupplicantState#SCANNING*/ public static final int WIFI_SUPPL_STATE_SCANNING = 4; /** @see android.net.wifi.SupplicantState#AUTHENTICATING */ public static final int WIFI_SUPPL_STATE_AUTHENTICATING = 5; /** @see android.net.wifi.SupplicantState#ASSOCIATING */ public static final int WIFI_SUPPL_STATE_ASSOCIATING = 6; /** @see android.net.wifi.SupplicantState#ASSOCIATED */ public static final int WIFI_SUPPL_STATE_ASSOCIATED = 7; /** @see android.net.wifi.SupplicantState#FOUR_WAY_HANDSHAKE */ public static final int WIFI_SUPPL_STATE_FOUR_WAY_HANDSHAKE = 8; /** @see android.net.wifi.SupplicantState#GROUP_HANDSHAKE */ public static final int WIFI_SUPPL_STATE_GROUP_HANDSHAKE = 9; /** @see android.net.wifi.SupplicantState#COMPLETED */ public static final int WIFI_SUPPL_STATE_COMPLETED = 10; /** @see android.net.wifi.SupplicantState#DORMANT */ public static final int WIFI_SUPPL_STATE_DORMANT = 11; /** @see android.net.wifi.SupplicantState#UNINITIALIZED */ public static final int WIFI_SUPPL_STATE_UNINITIALIZED = 12; /** @hide */ public static final int NUM_WIFI_SUPPL_STATES = WIFI_SUPPL_STATE_UNINITIALIZED + 1; /** @hide */ @IntDef(flag = true, prefix = { "WIFI_SUPPL_STATE_" }, value = { WIFI_SUPPL_STATE_INVALID, WIFI_SUPPL_STATE_DISCONNECTED, WIFI_SUPPL_STATE_INTERFACE_DISABLED, WIFI_SUPPL_STATE_INACTIVE, WIFI_SUPPL_STATE_SCANNING, WIFI_SUPPL_STATE_AUTHENTICATING, WIFI_SUPPL_STATE_ASSOCIATING, WIFI_SUPPL_STATE_ASSOCIATED, WIFI_SUPPL_STATE_FOUR_WAY_HANDSHAKE, WIFI_SUPPL_STATE_GROUP_HANDSHAKE, WIFI_SUPPL_STATE_COMPLETED, WIFI_SUPPL_STATE_DORMANT, WIFI_SUPPL_STATE_UNINITIALIZED, }) @Retention(RetentionPolicy.SOURCE) public @interface WifiSupplState {} private final IBatteryStats mBatteryStats; /** @hide */ Loading Loading @@ -91,7 +205,7 @@ public class BatteryStatsManager { * @param accessPoint SSID of the network if wifi is connected to STA, else null. */ @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void noteWifiState(@BatteryStats.WifiState int newWifiState, public void noteWifiState(@WifiState int newWifiState, @Nullable String accessPoint) { try { mBatteryStats.noteWifiState(newWifiState, accessPoint); Loading Loading @@ -224,7 +338,7 @@ public class BatteryStatsManager { * authentication failure. */ @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void noteWifiSupplicantStateChanged(@BatteryStats.WifiSupplState int newSupplState, public void noteWifiSupplicantStateChanged(@WifiSupplState int newSupplState, boolean failedAuth) { try { mBatteryStats.noteWifiSupplicantStateChanged(newSupplState, failedAuth); Loading
core/java/android/os/connectivity/WifiBatteryStats.java +5 −4 Original line number Diff line number Diff line Loading @@ -19,6 +19,7 @@ import android.annotation.NonNull; import android.annotation.Nullable; import android.annotation.SystemApi; import android.os.BatteryStats; import android.os.BatteryStatsManager; import android.os.Parcel; import android.os.Parcelable; Loading Loading @@ -46,9 +47,9 @@ public final class WifiBatteryStats implements Parcelable { private long mEnergyConsumedMaMillis = 0; private long mNumAppScanRequest = 0; private long[] mTimeInStateMillis = new long[BatteryStats.NUM_WIFI_STATES]; new long[BatteryStatsManager.NUM_WIFI_STATES]; private long[] mTimeInSupplicantStateMillis = new long[BatteryStats.NUM_WIFI_SUPPL_STATES]; new long[BatteryStatsManager.NUM_WIFI_SUPPL_STATES]; private long[] mTimeInRxSignalStrengthLevelMillis = new long[BatteryStats.NUM_WIFI_SIGNAL_STRENGTH_BINS]; private long mMonitoredRailChargeConsumedMaMillis = 0; Loading Loading @@ -369,7 +370,7 @@ public final class WifiBatteryStats implements Parcelable { /** @hide */ public void setTimeInStateMillis(long[] t) { mTimeInStateMillis = Arrays.copyOfRange(t, 0, Math.min(t.length, BatteryStats.NUM_WIFI_STATES)); Math.min(t.length, BatteryStatsManager.NUM_WIFI_STATES)); return; } Loading @@ -383,7 +384,7 @@ public final class WifiBatteryStats implements Parcelable { /** @hide */ public void setTimeInSupplicantStateMillis(long[] t) { mTimeInSupplicantStateMillis = Arrays.copyOfRange( t, 0, Math.min(t.length, BatteryStats.NUM_WIFI_SUPPL_STATES)); t, 0, Math.min(t.length, BatteryStatsManager.NUM_WIFI_SUPPL_STATES)); return; } Loading
core/java/com/android/internal/os/BatteryStatsImpl.java +3 −0 Original line number Diff line number Diff line Loading @@ -16,6 +16,9 @@ package com.android.internal.os; import static android.os.BatteryStatsManager.NUM_WIFI_STATES; import static android.os.BatteryStatsManager.NUM_WIFI_SUPPL_STATES; import android.annotation.NonNull; import android.annotation.Nullable; import android.annotation.UnsupportedAppUsage; Loading