summaryrefslogtreecommitdiffstats
path: root/src/com/android/settings/fuelgauge
diff options
context:
space:
mode:
authorJason Monk <jmonk@google.com>2015-06-04 10:50:25 -0400
committerJason Monk <jmonk@google.com>2015-06-04 10:52:01 -0400
commit6880ec09cd95359d42007d3c76ac4b9905743de7 (patch)
tree54fac9f873755a858bd64421ec543b6bee732444 /src/com/android/settings/fuelgauge
parentfb32790adc9ed647ad4e77c9613a860f9b76e855 (diff)
downloadpackages_apps_Settings-6880ec09cd95359d42007d3c76ac4b9905743de7.zip
packages_apps_Settings-6880ec09cd95359d42007d3c76ac4b9905743de7.tar.gz
packages_apps_Settings-6880ec09cd95359d42007d3c76ac4b9905743de7.tar.bz2
Fix crash in battery screen
Also add a fake app item Bug: 21624653 Change-Id: I1a8598472e014f773d2396a9a08fd03e8e32b400
Diffstat (limited to 'src/com/android/settings/fuelgauge')
-rw-r--r--src/com/android/settings/fuelgauge/FakeUid.java246
-rw-r--r--src/com/android/settings/fuelgauge/PowerUsageSummary.java4
2 files changed, 249 insertions, 1 deletions
diff --git a/src/com/android/settings/fuelgauge/FakeUid.java b/src/com/android/settings/fuelgauge/FakeUid.java
new file mode 100644
index 0000000..25ed8ae
--- /dev/null
+++ b/src/com/android/settings/fuelgauge/FakeUid.java
@@ -0,0 +1,246 @@
+/*
+ * Copyright (C) 2015 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.settings.fuelgauge;
+
+import android.os.BatteryStats.Timer;
+import android.os.BatteryStats.Uid;
+import android.os.Process;
+import android.util.ArrayMap;
+import android.util.SparseArray;
+
+/**
+ * Fake UID for testing power usage screen.
+ */
+public class FakeUid extends Uid {
+
+ @Override
+ public int getUid() {
+ return Process.FIRST_APPLICATION_UID;
+ }
+
+ @Override
+ public ArrayMap<String, ? extends Wakelock> getWakelockStats() {
+ return null;
+ }
+
+ @Override
+ public ArrayMap<String, ? extends Timer> getSyncStats() {
+ return null;
+ }
+
+ @Override
+ public ArrayMap<String, ? extends Timer> getJobStats() {
+ return null;
+ }
+
+ @Override
+ public SparseArray<? extends Sensor> getSensorStats() {
+ return null;
+ }
+
+ @Override
+ public SparseArray<? extends Pid> getPidStats() {
+ return null;
+ }
+
+ @Override
+ public ArrayMap<String, ? extends Proc> getProcessStats() {
+ return null;
+ }
+
+ @Override
+ public ArrayMap<String, ? extends Pkg> getPackageStats() {
+ return null;
+ }
+
+ @Override
+ public long getWifiControllerActivity(int type, int which) {
+ return 0;
+ }
+
+ @Override
+ public void noteWifiRunningLocked(long elapsedRealtime) {
+ }
+
+ @Override
+ public void noteWifiStoppedLocked(long elapsedRealtime) {
+ }
+
+ @Override
+ public void noteFullWifiLockAcquiredLocked(long elapsedRealtime) {
+ }
+
+ @Override
+ public void noteFullWifiLockReleasedLocked(long elapsedRealtime) {
+ }
+
+ @Override
+ public void noteWifiScanStartedLocked(long elapsedRealtime) {
+ }
+
+ @Override
+ public void noteWifiScanStoppedLocked(long elapsedRealtime) {
+ }
+
+ @Override
+ public void noteWifiBatchedScanStartedLocked(int csph, long elapsedRealtime) {
+ }
+
+ @Override
+ public void noteWifiBatchedScanStoppedLocked(long elapsedRealtime) {
+ }
+
+ @Override
+ public void noteWifiMulticastEnabledLocked(long elapsedRealtime) {
+ }
+
+ @Override
+ public void noteWifiMulticastDisabledLocked(long elapsedRealtime) {
+ }
+
+ @Override
+ public void noteActivityResumedLocked(long elapsedRealtime) {
+ }
+
+ @Override
+ public void noteActivityPausedLocked(long elapsedRealtime) {
+ }
+
+ @Override
+ public long getWifiRunningTime(long elapsedRealtimeUs, int which) {
+ return 0;
+ }
+
+ @Override
+ public long getFullWifiLockTime(long elapsedRealtimeUs, int which) {
+ return 0;
+ }
+
+ @Override
+ public long getWifiScanTime(long elapsedRealtimeUs, int which) {
+ return 0;
+ }
+
+ @Override
+ public int getWifiScanCount(int which) {
+ return 0;
+ }
+
+ @Override
+ public long getWifiBatchedScanTime(int csphBin, long elapsedRealtimeUs, int which) {
+ return 0;
+ }
+
+ @Override
+ public int getWifiBatchedScanCount(int csphBin, int which) {
+ return 0;
+ }
+
+ @Override
+ public long getWifiMulticastTime(long elapsedRealtimeUs, int which) {
+ return 0;
+ }
+
+ @Override
+ public Timer getAudioTurnedOnTimer() {
+ return null;
+ }
+
+ @Override
+ public Timer getVideoTurnedOnTimer() {
+ return null;
+ }
+
+ @Override
+ public Timer getFlashlightTurnedOnTimer() {
+ return null;
+ }
+
+ @Override
+ public Timer getCameraTurnedOnTimer() {
+ return null;
+ }
+
+ @Override
+ public Timer getForegroundActivityTimer() {
+ return null;
+ }
+
+ @Override
+ public long getProcessStateTime(int state, long elapsedRealtimeUs, int which) {
+ return 0;
+ }
+
+ @Override
+ public Timer getVibratorOnTimer() {
+ return null;
+ }
+
+ @Override
+ public void noteUserActivityLocked(int type) {
+ }
+
+ @Override
+ public boolean hasUserActivity() {
+ return false;
+ }
+
+ @Override
+ public int getUserActivityCount(int type, int which) {
+ return 0;
+ }
+
+ @Override
+ public boolean hasNetworkActivity() {
+ return false;
+ }
+
+ @Override
+ public long getNetworkActivityBytes(int type, int which) {
+ return 0;
+ }
+
+ @Override
+ public long getNetworkActivityPackets(int type, int which) {
+ return 0;
+ }
+
+ @Override
+ public long getMobileRadioActiveTime(int which) {
+ return 0;
+ }
+
+ @Override
+ public int getMobileRadioActiveCount(int which) {
+ return 0;
+ }
+
+ @Override
+ public long getUserCpuTimeUs(int which) {
+ return 0;
+ }
+
+ @Override
+ public long getSystemCpuTimeUs(int which) {
+ return 0;
+ }
+
+ @Override
+ public long getTimeAtCpuSpeed(int step, int which) {
+ return 0;
+ }
+}
diff --git a/src/com/android/settings/fuelgauge/PowerUsageSummary.java b/src/com/android/settings/fuelgauge/PowerUsageSummary.java
index 1fe59e9..d5e7bf7 100644
--- a/src/com/android/settings/fuelgauge/PowerUsageSummary.java
+++ b/src/com/android/settings/fuelgauge/PowerUsageSummary.java
@@ -35,8 +35,8 @@ import android.view.MenuItem;
import com.android.internal.logging.MetricsLogger;
import com.android.internal.os.BatterySipper;
-import com.android.internal.os.PowerProfile;
import com.android.internal.os.BatterySipper.DrainType;
+import com.android.internal.os.PowerProfile;
import com.android.settings.HelpUtils;
import com.android.settings.R;
import com.android.settings.Settings.HighPowerApplicationsActivity;
@@ -282,6 +282,8 @@ public class PowerUsageSummary extends PowerUsageBase {
stats.add(new BatterySipper(type, null, use));
use += 5;
}
+ BatterySipper sipper = new BatterySipper(DrainType.APP, new FakeUid(), use);
+ stats.add(sipper);
return stats;
}