diff options
author | Dianne Hackborn <hackbod@google.com> | 2014-02-24 18:12:28 -0800 |
---|---|---|
committer | Dianne Hackborn <hackbod@google.com> | 2014-02-25 13:20:07 -0800 |
commit | a1f1a3c573acd91024fda0ceb3b921c73b186963 (patch) | |
tree | 9dd985041ab35ba093b53e4e1f69c9e48ed708b8 /core/java/com | |
parent | 24bcc34f78c0fa95a6b2feb1c06168d13f43ff1c (diff) | |
download | frameworks_base-a1f1a3c573acd91024fda0ceb3b921c73b186963.zip frameworks_base-a1f1a3c573acd91024fda0ceb3b921c73b186963.tar.gz frameworks_base-a1f1a3c573acd91024fda0ceb3b921c73b186963.tar.bz2 |
More battery stats.
- Add events for sync.
- Add more descriptive tags for wake events.
- Fix battery reset.
- Fix tracking of wifi data.
Change-Id: Ic07f2a86a5ed33e7da57eb1108c31c777ecd801f
Diffstat (limited to 'core/java/com')
-rw-r--r-- | core/java/com/android/internal/app/IBatteryStats.aidl | 7 | ||||
-rw-r--r-- | core/java/com/android/internal/os/BatteryStatsImpl.java | 16 |
2 files changed, 12 insertions, 11 deletions
diff --git a/core/java/com/android/internal/app/IBatteryStats.aidl b/core/java/com/android/internal/app/IBatteryStats.aidl index 1155cbb..892ad68 100644 --- a/core/java/com/android/internal/app/IBatteryStats.aidl +++ b/core/java/com/android/internal/app/IBatteryStats.aidl @@ -35,11 +35,12 @@ interface IBatteryStats { void noteEvent(int code, String name, int uid); - void noteStartWakelock(int uid, int pid, String name, int type, boolean unimportantForLogging); + void noteStartWakelock(int uid, int pid, String name, String historyName, + int type, boolean unimportantForLogging); void noteStopWakelock(int uid, int pid, String name, int type); - void noteStartWakelockFromSource(in WorkSource ws, int pid, String name, int type, - boolean unimportantForLogging); + void noteStartWakelockFromSource(in WorkSource ws, int pid, String name, String historyName, + int type, boolean unimportantForLogging); void noteStopWakelockFromSource(in WorkSource ws, int pid, String name, int type); void noteVibratorOn(int uid, long durationMillis); diff --git a/core/java/com/android/internal/os/BatteryStatsImpl.java b/core/java/com/android/internal/os/BatteryStatsImpl.java index 40e8727..8843500 100644 --- a/core/java/com/android/internal/os/BatteryStatsImpl.java +++ b/core/java/com/android/internal/os/BatteryStatsImpl.java @@ -2011,7 +2011,7 @@ public final class BatteryStatsImpl extends BatteryStats { addHistoryEventLocked(SystemClock.elapsedRealtime(), code, name, uid); } - public void noteStartWakeLocked(int uid, int pid, String name, int type, + public void noteStartWakeLocked(int uid, int pid, String name, String historyName, int type, boolean unimportantForLogging) { uid = mapUid(uid); final long elapsedRealtime = SystemClock.elapsedRealtime(); @@ -2023,7 +2023,7 @@ public final class BatteryStatsImpl extends BatteryStats { if (DEBUG_HISTORY) Slog.v(TAG, "Start wake lock to: " + Integer.toHexString(mHistoryCur.states)); mHistoryCur.wakelockTag = mHistoryCur.localWakelockTag; - mHistoryCur.wakelockTag.string = name; + mHistoryCur.wakelockTag.string = historyName != null ? historyName : name; mHistoryCur.wakelockTag.uid = uid; mWakeLockImportant = !unimportantForLogging; addHistoryRecordLocked(elapsedRealtime); @@ -2032,7 +2032,7 @@ public final class BatteryStatsImpl extends BatteryStats { // We'll try to update the last tag. mHistoryLastWritten.wakelockTag = null; mHistoryCur.wakelockTag = mHistoryCur.localWakelockTag; - mHistoryCur.wakelockTag.string = name; + mHistoryCur.wakelockTag.string = historyName != null ? historyName : name; mHistoryCur.wakelockTag.uid = uid; addHistoryRecordLocked(elapsedRealtime); } @@ -2070,11 +2070,11 @@ public final class BatteryStatsImpl extends BatteryStats { } } - public void noteStartWakeFromSourceLocked(WorkSource ws, int pid, String name, int type, - boolean unimportantForLogging) { + public void noteStartWakeFromSourceLocked(WorkSource ws, int pid, String name, + String historyName, int type, boolean unimportantForLogging) { int N = ws.size(); for (int i=0; i<N; i++) { - noteStartWakeLocked(ws.get(i), pid, name, type, unimportantForLogging); + noteStartWakeLocked(ws.get(i), pid, name, historyName, type, unimportantForLogging); } } @@ -2291,7 +2291,8 @@ public final class BatteryStatsImpl extends BatteryStats { // Fake a wake lock, so we consider the device waked as long // as the screen is on. - noteStartWakeLocked(-1, -1, "screen", WAKE_TYPE_PARTIAL, false); + noteStartWakeLocked(Process.myUid(), Process.myPid(), "screen", null, + WAKE_TYPE_PARTIAL, false); // Update discharge amounts. if (mOnBatteryInternal) { @@ -5662,7 +5663,6 @@ public final class BatteryStatsImpl extends BatteryStats { final NetworkStats delta = NetworkStats.subtract(snapshot, last, null, null, mTmpNetworkStats); mTmpNetworkStats = delta; - mLastWifiSnapshot = snapshot; final int size = delta.size(); for (int i = 0; i < size; i++) { |