Update to follow battery stats change.
Improve how we decide that WIFI is on. Change-Id: If209d85dd88b6bdd56913684a890f732b8234a8c
This commit is contained in:
@@ -545,6 +545,7 @@ public class BatteryHistoryChart extends View {
|
|||||||
long lastWallTime = 0;
|
long lastWallTime = 0;
|
||||||
long lastRealtime = 0;
|
long lastRealtime = 0;
|
||||||
int aggrStates = 0;
|
int aggrStates = 0;
|
||||||
|
int aggrStates2 = 0;
|
||||||
boolean first = true;
|
boolean first = true;
|
||||||
if (stats.startIteratingHistoryLocked()) {
|
if (stats.startIteratingHistoryLocked()) {
|
||||||
final HistoryItem rec = new HistoryItem();
|
final HistoryItem rec = new HistoryItem();
|
||||||
@@ -569,6 +570,7 @@ public class BatteryHistoryChart extends View {
|
|||||||
lastInteresting = pos;
|
lastInteresting = pos;
|
||||||
mHistDataEnd = rec.time;
|
mHistDataEnd = rec.time;
|
||||||
aggrStates |= rec.states;
|
aggrStates |= rec.states;
|
||||||
|
aggrStates2 |= rec.states2;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -577,7 +579,10 @@ public class BatteryHistoryChart extends View {
|
|||||||
mEndWallTime = mEndDataWallTime + (remainingTimeUs/1000);
|
mEndWallTime = mEndDataWallTime + (remainingTimeUs/1000);
|
||||||
mNumHist = lastInteresting;
|
mNumHist = lastInteresting;
|
||||||
mHaveGps = (aggrStates&HistoryItem.STATE_GPS_ON_FLAG) != 0;
|
mHaveGps = (aggrStates&HistoryItem.STATE_GPS_ON_FLAG) != 0;
|
||||||
mHaveWifi = (aggrStates&HistoryItem.STATE_WIFI_RUNNING_FLAG) != 0;
|
mHaveWifi = (aggrStates2&HistoryItem.STATE2_WIFI_RUNNING_FLAG) != 0
|
||||||
|
|| (aggrStates&(HistoryItem.STATE_WIFI_FULL_LOCK_FLAG
|
||||||
|
|HistoryItem.STATE_WIFI_MULTICAST_ON_FLAG
|
||||||
|
|HistoryItem.STATE_WIFI_SCAN_FLAG)) != 0;
|
||||||
if (!com.android.settings.Utils.isWifiOnly(getContext())) {
|
if (!com.android.settings.Utils.isWifiOnly(getContext())) {
|
||||||
mHavePhoneSignal = true;
|
mHavePhoneSignal = true;
|
||||||
}
|
}
|
||||||
@@ -774,7 +779,8 @@ public class BatteryHistoryChart extends View {
|
|||||||
Path curLevelPath = null;
|
Path curLevelPath = null;
|
||||||
Path lastLinePath = null;
|
Path lastLinePath = null;
|
||||||
boolean lastCharging = false, lastScreenOn = false, lastGpsOn = false;
|
boolean lastCharging = false, lastScreenOn = false, lastGpsOn = false;
|
||||||
boolean lastWifiRunning = false, lastCpuRunning = false;
|
boolean lastWifiRunning = false, lastWifiSupplRunning = false, lastCpuRunning = false;
|
||||||
|
int lastWifiSupplState = BatteryStats.WIFI_SUPPL_STATE_INVALID;
|
||||||
final int N = mNumHist;
|
final int N = mNumHist;
|
||||||
if (mStats.startIteratingHistoryLocked()) {
|
if (mStats.startIteratingHistoryLocked()) {
|
||||||
final HistoryItem rec = new HistoryItem();
|
final HistoryItem rec = new HistoryItem();
|
||||||
@@ -868,8 +874,33 @@ public class BatteryHistoryChart extends View {
|
|||||||
lastGpsOn = gpsOn;
|
lastGpsOn = gpsOn;
|
||||||
}
|
}
|
||||||
|
|
||||||
final boolean wifiRunning =
|
final int wifiSupplState =
|
||||||
(rec.states&HistoryItem.STATE_WIFI_RUNNING_FLAG) != 0;
|
((rec.states2&HistoryItem.STATE2_WIFI_SUPPL_STATE_MASK)
|
||||||
|
>> HistoryItem.STATE2_WIFI_SUPPL_STATE_SHIFT);
|
||||||
|
boolean wifiRunning;
|
||||||
|
if (lastWifiSupplState != wifiSupplState) {
|
||||||
|
lastWifiSupplState = wifiSupplState;
|
||||||
|
switch (wifiSupplState) {
|
||||||
|
case BatteryStats.WIFI_SUPPL_STATE_DISCONNECTED:
|
||||||
|
case BatteryStats.WIFI_SUPPL_STATE_DORMANT:
|
||||||
|
case BatteryStats.WIFI_SUPPL_STATE_INACTIVE:
|
||||||
|
case BatteryStats.WIFI_SUPPL_STATE_INTERFACE_DISABLED:
|
||||||
|
case BatteryStats.WIFI_SUPPL_STATE_INVALID:
|
||||||
|
case BatteryStats.WIFI_SUPPL_STATE_UNINITIALIZED:
|
||||||
|
wifiRunning = lastWifiSupplRunning = false;
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
wifiRunning = lastWifiSupplRunning = true;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
wifiRunning = lastWifiSupplRunning;
|
||||||
|
}
|
||||||
|
if ((rec.states&(HistoryItem.STATE_WIFI_FULL_LOCK_FLAG
|
||||||
|
|HistoryItem.STATE_WIFI_MULTICAST_ON_FLAG
|
||||||
|
|HistoryItem.STATE_WIFI_SCAN_FLAG)) != 0) {
|
||||||
|
wifiRunning = true;
|
||||||
|
}
|
||||||
if (wifiRunning != lastWifiRunning) {
|
if (wifiRunning != lastWifiRunning) {
|
||||||
if (wifiRunning) {
|
if (wifiRunning) {
|
||||||
mWifiRunningPath.moveTo(x, h-mWifiRunningOffset);
|
mWifiRunningPath.moveTo(x, h-mWifiRunningOffset);
|
||||||
@@ -899,8 +930,8 @@ public class BatteryHistoryChart extends View {
|
|||||||
} else if ((rec.states&HistoryItem.STATE_PHONE_SCANNING_FLAG) != 0) {
|
} else if ((rec.states&HistoryItem.STATE_PHONE_SCANNING_FLAG) != 0) {
|
||||||
bin = 1;
|
bin = 1;
|
||||||
} else {
|
} else {
|
||||||
bin = (rec.states&HistoryItem.STATE_SIGNAL_STRENGTH_MASK)
|
bin = (rec.states&HistoryItem.STATE_PHONE_SIGNAL_STRENGTH_MASK)
|
||||||
>> HistoryItem.STATE_SIGNAL_STRENGTH_SHIFT;
|
>> HistoryItem.STATE_PHONE_SIGNAL_STRENGTH_SHIFT;
|
||||||
bin += 2;
|
bin += 2;
|
||||||
}
|
}
|
||||||
mPhoneSignalChart.addTick(x, bin);
|
mPhoneSignalChart.addTick(x, bin);
|
||||||
|
Reference in New Issue
Block a user