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

Commit 614a7316 authored by TreeHugger Robot's avatar TreeHugger Robot Committed by Android (Google) Code Review
Browse files

Merge "BatteryStatsManager: Address API council feedback"

parents 782e5ac9 ed8b445e
Loading
Loading
Loading
Loading
+16 −15
Original line number Diff line number Diff line
@@ -8341,22 +8341,22 @@ package android.os {
    method @NonNull public android.os.BatterySaverPolicyConfig.Builder setLocationMode(int);
  }
  public class BatteryStatsManager {
  public final class BatteryStatsManager {
    method @NonNull @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public android.os.connectivity.CellularBatteryStats getCellularBatteryStats();
    method @NonNull @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public android.os.connectivity.WifiBatteryStats getWifiBatteryStats();
    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void noteFullWifiLockAcquiredFromSource(@NonNull android.os.WorkSource);
    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void noteFullWifiLockReleasedFromSource(@NonNull android.os.WorkSource);
    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void noteWifiBatchedScanStartedFromSource(@NonNull android.os.WorkSource, @IntRange(from=0) int);
    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void noteWifiBatchedScanStoppedFromSource(@NonNull android.os.WorkSource);
    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void noteWifiMulticastDisabled(int);
    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void noteWifiMulticastEnabled(int);
    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void noteWifiOff();
    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void noteWifiOn();
    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void noteWifiRssiChanged(@IntRange(from=0xffffff81, to=0) int);
    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void noteWifiScanStartedFromSource(@NonNull android.os.WorkSource);
    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);
    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void reportFullWifiLockAcquiredFromSource(@NonNull android.os.WorkSource);
    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void reportFullWifiLockReleasedFromSource(@NonNull android.os.WorkSource);
    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void reportWifiBatchedScanStartedFromSource(@NonNull android.os.WorkSource, @IntRange(from=0) int);
    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void reportWifiBatchedScanStoppedFromSource(@NonNull android.os.WorkSource);
    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void reportWifiMulticastDisabled(int);
    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void reportWifiMulticastEnabled(int);
    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void reportWifiOff();
    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void reportWifiOn();
    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void reportWifiRssiChanged(@IntRange(from=0xffffff81, to=0) int);
    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void reportWifiScanStartedFromSource(@NonNull android.os.WorkSource);
    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void reportWifiScanStoppedFromSource(@NonNull android.os.WorkSource);
    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void reportWifiState(int, @Nullable String);
    method @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS) public void reportWifiSupplicantStateChanged(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
@@ -9030,12 +9030,12 @@ package android.os.connectivity {
  public final class WifiBatteryStats implements android.os.Parcelable {
    method public int describeContents();
    method public long getAppScanRequestCount();
    method public long getEnergyConsumedMaMillis();
    method public long getIdleTimeMillis();
    method public long getKernelActiveTimeMillis();
    method public long getLoggingDurationMillis();
    method public long getMonitoredRailChargeConsumedMaMillis();
    method public long getNumAppScanRequest();
    method public long getNumBytesRx();
    method public long getNumBytesTx();
    method public long getNumPacketsRx();
@@ -14298,3 +14298,4 @@ package android.webkit {
  }
}
+14 −14
Original line number Diff line number Diff line
@@ -42,7 +42,7 @@ import java.lang.annotation.RetentionPolicy;
 */
@SystemApi
@SystemService(Context.BATTERY_STATS_SERVICE)
public class BatteryStatsManager {
public final class BatteryStatsManager {
    /**
     * Wifi states.
     *
@@ -166,7 +166,7 @@ public class BatteryStatsManager {
     * @param newRssi The new RSSI value.
     */
    @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS)
    public void noteWifiRssiChanged(@IntRange(from = -127, to = 0) int newRssi) {
    public void reportWifiRssiChanged(@IntRange(from = -127, to = 0) int newRssi) {
        try {
            mBatteryStats.noteWifiRssiChanged(newRssi);
        } catch (RemoteException e) {
@@ -178,7 +178,7 @@ public class BatteryStatsManager {
     * Indicates that wifi was toggled on.
     */
    @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS)
    public void noteWifiOn() {
    public void reportWifiOn() {
        try {
            mBatteryStats.noteWifiOn();
        } catch (RemoteException e) {
@@ -190,7 +190,7 @@ public class BatteryStatsManager {
     * Indicates that wifi was toggled off.
     */
    @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS)
    public void noteWifiOff() {
    public void reportWifiOff() {
        try {
            mBatteryStats.noteWifiOff();
        } catch (RemoteException e) {
@@ -205,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(@WifiState int newWifiState,
    public void reportWifiState(@WifiState int newWifiState,
            @Nullable String accessPoint) {
        try {
            mBatteryStats.noteWifiState(newWifiState, accessPoint);
@@ -220,7 +220,7 @@ public class BatteryStatsManager {
     * @param ws Worksource (to be used for battery blaming).
     */
    @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS)
    public void noteWifiScanStartedFromSource(@NonNull WorkSource ws) {
    public void reportWifiScanStartedFromSource(@NonNull WorkSource ws) {
        try {
            mBatteryStats.noteWifiScanStartedFromSource(ws);
        } catch (RemoteException e) {
@@ -234,7 +234,7 @@ public class BatteryStatsManager {
     * @param ws Worksource (to be used for battery blaming).
     */
    @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS)
    public void noteWifiScanStoppedFromSource(@NonNull WorkSource ws) {
    public void reportWifiScanStoppedFromSource(@NonNull WorkSource ws) {
        try {
            mBatteryStats.noteWifiScanStoppedFromSource(ws);
        } catch (RemoteException e) {
@@ -249,7 +249,7 @@ public class BatteryStatsManager {
     * @param csph Channels scanned per hour.
     */
    @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS)
    public void noteWifiBatchedScanStartedFromSource(@NonNull WorkSource ws,
    public void reportWifiBatchedScanStartedFromSource(@NonNull WorkSource ws,
            @IntRange(from = 0) int csph) {
        try {
            mBatteryStats.noteWifiBatchedScanStartedFromSource(ws, csph);
@@ -264,7 +264,7 @@ public class BatteryStatsManager {
     * @param ws Worksource (to be used for battery blaming).
     */
    @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS)
    public void noteWifiBatchedScanStoppedFromSource(@NonNull WorkSource ws) {
    public void reportWifiBatchedScanStoppedFromSource(@NonNull WorkSource ws) {
        try {
            mBatteryStats.noteWifiBatchedScanStoppedFromSource(ws);
        } catch (RemoteException e) {
@@ -308,7 +308,7 @@ public class BatteryStatsManager {
     * @param ws Worksource (to be used for battery blaming).
     */
    @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS)
    public void noteFullWifiLockAcquiredFromSource(@NonNull WorkSource ws) {
    public void reportFullWifiLockAcquiredFromSource(@NonNull WorkSource ws) {
        try {
            mBatteryStats.noteFullWifiLockAcquiredFromSource(ws);
        } catch (RemoteException e) {
@@ -322,7 +322,7 @@ public class BatteryStatsManager {
     * @param ws Worksource (to be used for battery blaming).
     */
    @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS)
    public void noteFullWifiLockReleasedFromSource(@NonNull WorkSource ws) {
    public void reportFullWifiLockReleasedFromSource(@NonNull WorkSource ws) {
        try {
            mBatteryStats.noteFullWifiLockReleasedFromSource(ws);
        } catch (RemoteException e) {
@@ -338,7 +338,7 @@ public class BatteryStatsManager {
     *                   authentication failure.
     */
    @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS)
    public void noteWifiSupplicantStateChanged(@WifiSupplState int newSupplState,
    public void reportWifiSupplicantStateChanged(@WifiSupplState int newSupplState,
            boolean failedAuth) {
        try {
            mBatteryStats.noteWifiSupplicantStateChanged(newSupplState, failedAuth);
@@ -353,7 +353,7 @@ public class BatteryStatsManager {
     * @param uid UID of the app that acquired the wifi lock (to be used for battery blaming).
     */
    @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS)
    public void noteWifiMulticastEnabled(int uid) {
    public void reportWifiMulticastEnabled(int uid) {
        try {
            mBatteryStats.noteWifiMulticastEnabled(uid);
        } catch (RemoteException e) {
@@ -367,7 +367,7 @@ public class BatteryStatsManager {
     * @param uid UID of the app that released the wifi lock (to be used for battery blaming).
     */
    @RequiresPermission(android.Manifest.permission.UPDATE_DEVICE_STATS)
    public void noteWifiMulticastDisabled(int uid) {
    public void reportWifiMulticastDisabled(int uid) {
        try {
            mBatteryStats.noteWifiMulticastDisabled(uid);
        } catch (RemoteException e) {
+81 −160
Original line number Diff line number Diff line
@@ -15,11 +15,13 @@
 */
package android.os.connectivity;

import static android.os.BatteryStats.NUM_WIFI_SIGNAL_STRENGTH_BINS;
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.SystemApi;
import android.os.BatteryStats;
import android.os.BatteryStatsManager;
import android.os.Parcel;
import android.os.Parcelable;

@@ -33,31 +35,50 @@ import java.util.Objects;
 */
@SystemApi
public final class WifiBatteryStats implements Parcelable {
    private long mLoggingDurationMillis = 0;
    private long mKernelActiveTimeMillis = 0;
    private long mNumPacketsTx = 0;
    private long mNumBytesTx = 0;
    private long mNumPacketsRx = 0;
    private long mNumBytesRx = 0;
    private long mSleepTimeMillis = 0;
    private long mScanTimeMillis = 0;
    private long mIdleTimeMillis = 0;
    private long mRxTimeMillis = 0;
    private long mTxTimeMillis = 0;
    private long mEnergyConsumedMaMillis = 0;
    private long mNumAppScanRequest = 0;
    private long[] mTimeInStateMillis =
        new long[BatteryStatsManager.NUM_WIFI_STATES];
    private long[] mTimeInSupplicantStateMillis =
        new long[BatteryStatsManager.NUM_WIFI_SUPPL_STATES];
    private long[] mTimeInRxSignalStrengthLevelMillis =
        new long[BatteryStats.NUM_WIFI_SIGNAL_STRENGTH_BINS];
    private long mMonitoredRailChargeConsumedMaMillis = 0;
    private final long mLoggingDurationMillis;
    private final long mKernelActiveTimeMillis;
    private final long mNumPacketsTx;
    private final long mNumBytesTx;
    private final long mNumPacketsRx;
    private final long mNumBytesRx;
    private final long mSleepTimeMillis;
    private final long mScanTimeMillis;
    private final long mIdleTimeMillis;
    private final long mRxTimeMillis;
    private final long mTxTimeMillis;
    private final long mEnergyConsumedMaMillis;
    private final long mAppScanRequestCount;
    private final long[] mTimeInStateMillis;
    private final long[] mTimeInSupplicantStateMillis;
    private final long[] mTimeInRxSignalStrengthLevelMillis;
    private final long mMonitoredRailChargeConsumedMaMillis;

    public static final @NonNull Parcelable.Creator<WifiBatteryStats> CREATOR =
            new Parcelable.Creator<WifiBatteryStats>() {
                public WifiBatteryStats createFromParcel(Parcel in) {
                    return new WifiBatteryStats(in);
                    long loggingDurationMillis = in.readLong();
                    long kernelActiveTimeMillis = in.readLong();
                    long numPacketsTx = in.readLong();
                    long numBytesTx = in.readLong();
                    long numPacketsRx = in.readLong();
                    long numBytesRx = in.readLong();
                    long sleepTimeMillis = in.readLong();
                    long scanTimeMillis = in.readLong();
                    long idleTimeMillis = in.readLong();
                    long rxTimeMillis = in.readLong();
                    long txTimeMillis = in.readLong();
                    long energyConsumedMaMillis = in.readLong();
                    long appScanRequestCount = in.readLong();
                    long[] timeInStateMillis = in.createLongArray();
                    long[] timeInRxSignalStrengthLevelMillis = in.createLongArray();
                    long[] timeInSupplicantStateMillis = in.createLongArray();
                    long monitoredRailChargeConsumedMaMillis = in.readLong();
                    return new WifiBatteryStats(loggingDurationMillis, kernelActiveTimeMillis,
                            numPacketsTx, numBytesTx, numPacketsRx, numBytesRx, sleepTimeMillis,
                            scanTimeMillis, idleTimeMillis, rxTimeMillis, txTimeMillis,
                            energyConsumedMaMillis, appScanRequestCount, timeInStateMillis,
                            timeInRxSignalStrengthLevelMillis, timeInSupplicantStateMillis,
                            monitoredRailChargeConsumedMaMillis);
                }

                public WifiBatteryStats[] newArray(int size) {
@@ -84,7 +105,7 @@ public final class WifiBatteryStats implements Parcelable {
        out.writeLong(mRxTimeMillis);
        out.writeLong(mTxTimeMillis);
        out.writeLong(mEnergyConsumedMaMillis);
        out.writeLong(mNumAppScanRequest);
        out.writeLong(mAppScanRequestCount);
        out.writeLongArray(mTimeInStateMillis);
        out.writeLongArray(mTimeInRxSignalStrengthLevelMillis);
        out.writeLongArray(mTimeInSupplicantStateMillis);
@@ -108,7 +129,7 @@ public final class WifiBatteryStats implements Parcelable {
                && this.mRxTimeMillis == otherStats.mRxTimeMillis
                && this.mTxTimeMillis == otherStats.mTxTimeMillis
                && this.mEnergyConsumedMaMillis == otherStats.mEnergyConsumedMaMillis
                && this.mNumAppScanRequest == otherStats.mNumAppScanRequest
                && this.mAppScanRequestCount == otherStats.mAppScanRequestCount
                && Arrays.equals(this.mTimeInStateMillis, otherStats.mTimeInStateMillis)
                && Arrays.equals(this.mTimeInSupplicantStateMillis,
                    otherStats.mTimeInSupplicantStateMillis)
@@ -123,33 +144,42 @@ public final class WifiBatteryStats implements Parcelable {
        return Objects.hash(mLoggingDurationMillis, mKernelActiveTimeMillis, mNumPacketsTx,
                mNumBytesTx, mNumPacketsRx, mNumBytesRx, mSleepTimeMillis, mScanTimeMillis,
                mIdleTimeMillis, mRxTimeMillis, mTxTimeMillis, mEnergyConsumedMaMillis,
                mNumAppScanRequest, Arrays.hashCode(mTimeInStateMillis),
                mAppScanRequestCount, Arrays.hashCode(mTimeInStateMillis),
                Arrays.hashCode(mTimeInSupplicantStateMillis),
                Arrays.hashCode(mTimeInRxSignalStrengthLevelMillis),
                mMonitoredRailChargeConsumedMaMillis);
    }

    /** @hide **/
    public WifiBatteryStats() {}

    private void readFromParcel(Parcel in) {
        mLoggingDurationMillis = in.readLong();
        mKernelActiveTimeMillis = in.readLong();
        mNumPacketsTx = in.readLong();
        mNumBytesTx = in.readLong();
        mNumPacketsRx = in.readLong();
        mNumBytesRx = in.readLong();
        mSleepTimeMillis = in.readLong();
        mScanTimeMillis = in.readLong();
        mIdleTimeMillis = in.readLong();
        mRxTimeMillis = in.readLong();
        mTxTimeMillis = in.readLong();
        mEnergyConsumedMaMillis = in.readLong();
        mNumAppScanRequest = in.readLong();
        in.readLongArray(mTimeInStateMillis);
        in.readLongArray(mTimeInRxSignalStrengthLevelMillis);
        in.readLongArray(mTimeInSupplicantStateMillis);
        mMonitoredRailChargeConsumedMaMillis = in.readLong();
    public WifiBatteryStats(long loggingDurationMillis, long kernelActiveTimeMillis,
            long numPacketsTx, long numBytesTx, long numPacketsRx, long numBytesRx,
            long sleepTimeMillis, long scanTimeMillis, long idleTimeMillis, long rxTimeMillis,
            long txTimeMillis, long energyConsumedMaMillis, long appScanRequestCount,
            @NonNull long[] timeInStateMillis, @NonNull long [] timeInRxSignalStrengthLevelMillis,
            @NonNull long[] timeInSupplicantStateMillis, long monitoredRailChargeConsumedMaMillis) {
        mLoggingDurationMillis = loggingDurationMillis;
        mKernelActiveTimeMillis = kernelActiveTimeMillis;
        mNumPacketsTx = numPacketsTx;
        mNumBytesTx = numBytesTx;
        mNumPacketsRx = numPacketsRx;
        mNumBytesRx = numBytesRx;
        mSleepTimeMillis = sleepTimeMillis;
        mScanTimeMillis = scanTimeMillis;
        mIdleTimeMillis = idleTimeMillis;
        mRxTimeMillis = rxTimeMillis;
        mTxTimeMillis = txTimeMillis;
        mEnergyConsumedMaMillis = energyConsumedMaMillis;
        mAppScanRequestCount = appScanRequestCount;
        mTimeInStateMillis = Arrays.copyOfRange(
                timeInStateMillis, 0,
                Math.min(timeInStateMillis.length, NUM_WIFI_STATES));
        mTimeInRxSignalStrengthLevelMillis = Arrays.copyOfRange(
                timeInRxSignalStrengthLevelMillis, 0,
                Math.min(timeInRxSignalStrengthLevelMillis.length, NUM_WIFI_SIGNAL_STRENGTH_BINS));
        mTimeInSupplicantStateMillis = Arrays.copyOfRange(
                timeInSupplicantStateMillis, 0,
                Math.min(timeInSupplicantStateMillis.length, NUM_WIFI_SUPPL_STATES));
        mMonitoredRailChargeConsumedMaMillis = monitoredRailChargeConsumedMaMillis;
    }

    /**
@@ -182,7 +212,7 @@ public final class WifiBatteryStats implements Parcelable {
    }

    /**
     * Returns the number of packets received over wifi within
     * Returns the number of bytes transmitted over wifi within
     * {@link #getLoggingDurationMillis()}.
     *
     * @return Number of packets received.
@@ -192,7 +222,7 @@ public final class WifiBatteryStats implements Parcelable {
    }

    /**
     * Returns the number of bytes transmitted over wifi within
     * Returns the number of packets received over wifi within
     * {@link #getLoggingDurationMillis()}.
     *
     * @return Number of bytes transmitted.
@@ -262,7 +292,7 @@ public final class WifiBatteryStats implements Parcelable {
    }

    /**
     * Returns an estimation of energy consumed by wifi chip within
     * Returns an estimation of energy consumed in millis by wifi chip within
     * {@link #getLoggingDurationMillis()}.
     *
     * @return Energy consumed in millis.
@@ -276,8 +306,8 @@ public final class WifiBatteryStats implements Parcelable {
     *
     * @return Number of app scans.
     */
    public long getNumAppScanRequest() {
        return mNumAppScanRequest;
    public long getAppScanRequestCount() {
        return mAppScanRequestCount;
    }

    /**
@@ -288,113 +318,4 @@ public final class WifiBatteryStats implements Parcelable {
    public long getMonitoredRailChargeConsumedMaMillis() {
        return mMonitoredRailChargeConsumedMaMillis;
    }

    /** @hide */
    public void setLoggingDurationMillis(long t) {
        mLoggingDurationMillis = t;
        return;
    }

    /** @hide */
    public void setKernelActiveTimeMillis(long t) {
        mKernelActiveTimeMillis = t;
        return;
    }

    /** @hide */
    public void setNumPacketsTx(long n) {
        mNumPacketsTx = n;
        return;
    }

    /** @hide */
    public void setNumBytesTx(long b) {
        mNumBytesTx = b;
        return;
    }

    /** @hide */
    public void setNumPacketsRx(long n) {
        mNumPacketsRx = n;
        return;
    }

    /** @hide */
    public void setNumBytesRx(long b) {
        mNumBytesRx = b;
        return;
    }

    /** @hide */
    public void setSleepTimeMillis(long t) {
        mSleepTimeMillis = t;
        return;
    }

    /** @hide */
    public void setScanTimeMillis(long t) {
        mScanTimeMillis = t;
        return;
    }

    /** @hide */
    public void setIdleTimeMillis(long t) {
        mIdleTimeMillis = t;
        return;
    }

    /** @hide */
    public void setRxTimeMillis(long t) {
        mRxTimeMillis = t;
        return;
    }

    /** @hide */
    public void setTxTimeMillis(long t) {
        mTxTimeMillis = t;
        return;
    }

    /** @hide */
    public void setEnergyConsumedMaMillis(long e) {
        mEnergyConsumedMaMillis = e;
        return;
    }

    /** @hide */
    public void setNumAppScanRequest(long n) {
        mNumAppScanRequest = n;
        return;
    }

    /** @hide */
    public void setTimeInStateMillis(long[] t) {
        mTimeInStateMillis = Arrays.copyOfRange(t, 0,
                Math.min(t.length, BatteryStatsManager.NUM_WIFI_STATES));
        return;
    }

    /** @hide */
    public void setTimeInRxSignalStrengthLevelMillis(long[] t) {
        mTimeInRxSignalStrengthLevelMillis = Arrays.copyOfRange(t, 0,
                Math.min(t.length, BatteryStats.NUM_WIFI_SIGNAL_STRENGTH_BINS));
        return;
    }

    /** @hide */
    public void setTimeInSupplicantStateMillis(long[] t) {
        mTimeInSupplicantStateMillis = Arrays.copyOfRange(
                t, 0, Math.min(t.length, BatteryStatsManager.NUM_WIFI_SUPPL_STATES));
        return;
    }

    /** @hide */
    public void setMonitoredRailChargeConsumedMaMillis(long monitoredRailEnergyConsumedMaMillis) {
        mMonitoredRailChargeConsumedMaMillis = monitoredRailEnergyConsumedMaMillis;
        return;
    }

    private WifiBatteryStats(Parcel in) {
        readFromParcel(in);
    }
}
+10 −19
Original line number Diff line number Diff line
@@ -12644,7 +12644,6 @@ public class BatteryStatsImpl extends BatteryStats {
    /*@hide */
    public WifiBatteryStats getWifiBatteryStats() {
        WifiBatteryStats s = new WifiBatteryStats();
        final int which = STATS_SINCE_CHARGED;
        final long rawRealTime = SystemClock.elapsedRealtime() * 1000;
        final ControllerActivityCounter counter = getWifiControllerActivity();
@@ -12675,24 +12674,16 @@ public class BatteryStatsImpl extends BatteryStats {
        for (int i=0; i<NUM_WIFI_SIGNAL_STRENGTH_BINS; i++) {
            timeSignalStrengthTimeMs[i] = getWifiSignalStrengthTime(i, rawRealTime, which) / 1000;
        }
        s.setLoggingDurationMillis(computeBatteryRealtime(rawRealTime, which) / 1000);
        s.setKernelActiveTimeMillis(getWifiActiveTime(rawRealTime, which) / 1000);
        s.setNumPacketsTx(getNetworkActivityPackets(NETWORK_WIFI_TX_DATA, which));
        s.setNumBytesTx(getNetworkActivityBytes(NETWORK_WIFI_TX_DATA, which));
        s.setNumPacketsRx(getNetworkActivityPackets(NETWORK_WIFI_RX_DATA, which));
        s.setNumBytesRx(getNetworkActivityBytes(NETWORK_WIFI_RX_DATA, which));
        s.setSleepTimeMillis(sleepTimeMs);
        s.setIdleTimeMillis(idleTimeMs);
        s.setRxTimeMillis(rxTimeMs);
        s.setTxTimeMillis(txTimeMs);
        s.setScanTimeMillis(scanTimeMs);
        s.setEnergyConsumedMaMillis(energyConsumedMaMs);
        s.setNumAppScanRequest(numAppScanRequest);
        s.setTimeInStateMillis(timeInStateMs);
        s.setTimeInSupplicantStateMillis(timeInSupplStateMs);
        s.setTimeInRxSignalStrengthLevelMillis(timeSignalStrengthTimeMs);
        s.setMonitoredRailChargeConsumedMaMillis(monitoredRailChargeConsumedMaMs);
        return s;
        return new WifiBatteryStats(
                computeBatteryRealtime(rawRealTime, which) / 1000,
                getWifiActiveTime(rawRealTime, which) / 1000,
                getNetworkActivityPackets(NETWORK_WIFI_TX_DATA, which),
                getNetworkActivityBytes(NETWORK_WIFI_TX_DATA, which),
                getNetworkActivityPackets(NETWORK_WIFI_RX_DATA, which),
                getNetworkActivityBytes(NETWORK_WIFI_RX_DATA, which),
                sleepTimeMs, scanTimeMs, idleTimeMs, rxTimeMs, txTimeMs, energyConsumedMaMs,
                numAppScanRequest, timeInStateMs, timeSignalStrengthTimeMs, timeInSupplStateMs,
                monitoredRailChargeConsumedMaMs);
    }
    /*@hide */