summaryrefslogtreecommitdiffstats
path: root/core/java/com/android
diff options
context:
space:
mode:
authorDianne Hackborn <hackbod@google.com>2014-02-24 18:12:28 -0800
committerDianne Hackborn <hackbod@google.com>2014-02-25 13:20:07 -0800
commita1f1a3c573acd91024fda0ceb3b921c73b186963 (patch)
tree9dd985041ab35ba093b53e4e1f69c9e48ed708b8 /core/java/com/android
parent24bcc34f78c0fa95a6b2feb1c06168d13f43ff1c (diff)
downloadframeworks_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/android')
-rw-r--r--core/java/com/android/internal/app/IBatteryStats.aidl7
-rw-r--r--core/java/com/android/internal/os/BatteryStatsImpl.java16
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++) {