diff --git a/src/com/android/settings/fuelgauge/PowerUsageFeatureProvider.java b/src/com/android/settings/fuelgauge/PowerUsageFeatureProvider.java index 1720845c1f1..f6d153b1152 100644 --- a/src/com/android/settings/fuelgauge/PowerUsageFeatureProvider.java +++ b/src/com/android/settings/fuelgauge/PowerUsageFeatureProvider.java @@ -18,7 +18,6 @@ package com.android.settings.fuelgauge; import android.content.Context; import android.content.Intent; -import android.net.Uri; import android.util.SparseIntArray; import com.android.settings.fuelgauge.batteryusage.BatteryHistEntry; @@ -154,16 +153,6 @@ public interface PowerUsageFeatureProvider { */ Map> getBatteryHistory(Context context); - /** - * Returns battery history data since last full charge with corresponding timestamp key. - */ - Map> getBatteryHistorySinceLastFullCharge(Context context); - - /** - * Returns {@link Uri} to monitor battery history data is update. - */ - Uri getBatteryHistoryUri(); - /** * Returns {@link Set} for hidding applications background usage time. */ diff --git a/src/com/android/settings/fuelgauge/PowerUsageFeatureProviderImpl.java b/src/com/android/settings/fuelgauge/PowerUsageFeatureProviderImpl.java index 48f4421c431..ed6b62229c6 100644 --- a/src/com/android/settings/fuelgauge/PowerUsageFeatureProviderImpl.java +++ b/src/com/android/settings/fuelgauge/PowerUsageFeatureProviderImpl.java @@ -19,7 +19,6 @@ package com.android.settings.fuelgauge; import android.content.Context; import android.content.Intent; import android.content.pm.PackageManager; -import android.net.Uri; import android.os.Process; import android.util.ArraySet; import android.util.SparseIntArray; @@ -169,17 +168,6 @@ public class PowerUsageFeatureProviderImpl implements PowerUsageFeatureProvider return null; } - @Override - public Map> getBatteryHistorySinceLastFullCharge( - Context context) { - return null; - } - - @Override - public Uri getBatteryHistoryUri() { - return null; - } - @Override public Set getHideBackgroundUsageTimeSet(Context context) { return new ArraySet<>(); diff --git a/src/com/android/settings/fuelgauge/batteryusage/BatteryChartPreferenceController.java b/src/com/android/settings/fuelgauge/batteryusage/BatteryChartPreferenceController.java index 419ae90446b..6dd59b766ee 100644 --- a/src/com/android/settings/fuelgauge/batteryusage/BatteryChartPreferenceController.java +++ b/src/com/android/settings/fuelgauge/batteryusage/BatteryChartPreferenceController.java @@ -58,6 +58,7 @@ import com.android.settingslib.utils.StringUtil; import com.android.settingslib.widget.FooterPreference; import java.util.ArrayList; +import java.util.Calendar; import java.util.HashMap; import java.util.List; import java.util.Map; @@ -760,9 +761,7 @@ public class BatteryChartPreferenceController extends AbstractPreferenceControll public static List getAppBatteryUsageData(Context context) { final long start = System.currentTimeMillis(); final Map> batteryHistoryMap = - FeatureFactory.getFactory(context) - .getPowerUsageFeatureProvider(context) - .getBatteryHistorySinceLastFullCharge(context); + DatabaseUtils.getHistoryMapSinceLastFullCharge(context, Calendar.getInstance()); if (batteryHistoryMap == null || batteryHistoryMap.isEmpty()) { return null; } diff --git a/src/com/android/settings/fuelgauge/batteryusage/BatteryHistoryLoader.java b/src/com/android/settings/fuelgauge/batteryusage/BatteryHistoryLoader.java index 83b26150d39..9a0e410b3c9 100644 --- a/src/com/android/settings/fuelgauge/batteryusage/BatteryHistoryLoader.java +++ b/src/com/android/settings/fuelgauge/batteryusage/BatteryHistoryLoader.java @@ -17,10 +17,9 @@ package com.android.settings.fuelgauge.batteryusage; import android.content.Context; -import com.android.settings.fuelgauge.PowerUsageFeatureProvider; -import com.android.settings.overlay.FeatureFactory; import com.android.settingslib.utils.AsyncLoaderCompat; +import java.util.Calendar; import java.util.Map; /** Loader that can be used to load battery history information. */ @@ -41,8 +40,6 @@ public class BatteryHistoryLoader @Override public Map> loadInBackground() { - final PowerUsageFeatureProvider powerUsageFeatureProvider = - FeatureFactory.getFactory(mContext).getPowerUsageFeatureProvider(mContext); - return powerUsageFeatureProvider.getBatteryHistorySinceLastFullCharge(mContext); + return DatabaseUtils.getHistoryMapSinceLastFullCharge(mContext, Calendar.getInstance()); } } diff --git a/src/com/android/settings/fuelgauge/batteryusage/PowerUsageAdvanced.java b/src/com/android/settings/fuelgauge/batteryusage/PowerUsageAdvanced.java index b88d85ddd1f..1c1e6a576de 100644 --- a/src/com/android/settings/fuelgauge/batteryusage/PowerUsageAdvanced.java +++ b/src/com/android/settings/fuelgauge/batteryusage/PowerUsageAdvanced.java @@ -123,7 +123,7 @@ public class PowerUsageAdvanced extends PowerUsageBase { super.onPause(); // Resets the flag to reload usage data in onResume() callback. mIsChartDataLoaded = false; - final Uri uri = mPowerUsageFeatureProvider.getBatteryHistoryUri(); + final Uri uri = DatabaseUtils.BATTERY_CONTENT_URI; if (uri != null) { getContext().getContentResolver().unregisterContentObserver(mBatteryObserver); } @@ -132,7 +132,7 @@ public class PowerUsageAdvanced extends PowerUsageBase { @Override public void onResume() { super.onResume(); - final Uri uri = mPowerUsageFeatureProvider.getBatteryHistoryUri(); + final Uri uri = DatabaseUtils.BATTERY_CONTENT_URI; if (uri != null) { getContext().getContentResolver().registerContentObserver( uri, /*notifyForDescendants*/ true, mBatteryObserver); diff --git a/tests/robotests/src/com/android/settings/fuelgauge/batteryusage/BatteryHistoryLoaderTest.java b/tests/robotests/src/com/android/settings/fuelgauge/batteryusage/BatteryHistoryLoaderTest.java deleted file mode 100644 index 57178578169..00000000000 --- a/tests/robotests/src/com/android/settings/fuelgauge/batteryusage/BatteryHistoryLoaderTest.java +++ /dev/null @@ -1,61 +0,0 @@ -/* - * Copyright (C) 2022 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.batteryusage; - -import static com.google.common.truth.Truth.assertThat; - -import static org.mockito.Mockito.doReturn; - -import android.content.Context; - -import com.android.settings.testutils.FakeFeatureFactory; - -import org.junit.Before; -import org.junit.Test; -import org.junit.runner.RunWith; -import org.mockito.MockitoAnnotations; -import org.robolectric.RobolectricTestRunner; -import org.robolectric.RuntimeEnvironment; - -import java.util.HashMap; -import java.util.Map; - -@RunWith(RobolectricTestRunner.class) -public final class BatteryHistoryLoaderTest { - - private Context mContext; - private FakeFeatureFactory mFeatureFactory; - private BatteryHistoryLoader mBatteryHistoryLoader; - - @Before - public void setUp() { - MockitoAnnotations.initMocks(this); - - mContext = RuntimeEnvironment.application; - mFeatureFactory = FakeFeatureFactory.setupForTest(); - mBatteryHistoryLoader = new BatteryHistoryLoader(mContext); - } - - @Test - public void testLoadIBackground_returnsMapFromPowerFeatureProvider() { - final Map> batteryHistoryMap = new HashMap<>(); - doReturn(batteryHistoryMap).when(mFeatureFactory.powerUsageFeatureProvider) - .getBatteryHistorySinceLastFullCharge(mContext); - - assertThat(mBatteryHistoryLoader.loadInBackground()) - .isSameInstanceAs(batteryHistoryMap); - } -} diff --git a/tests/robotests/src/com/android/settings/fuelgauge/batteryusage/ConvertUtilsTest.java b/tests/robotests/src/com/android/settings/fuelgauge/batteryusage/ConvertUtilsTest.java index 2ae73b103e5..46ef7bc49e1 100644 --- a/tests/robotests/src/com/android/settings/fuelgauge/batteryusage/ConvertUtilsTest.java +++ b/tests/robotests/src/com/android/settings/fuelgauge/batteryusage/ConvertUtilsTest.java @@ -336,21 +336,6 @@ public final class ConvertUtilsTest { // Verifies the fake data is cleared out. assertThat(entryList.get(0).getPackageName()) .isNotEqualTo(ConvertUtils.FAKE_PACKAGE_NAME); - - // Adds lacked data into the battery history map. - final int remainingSize = 25 - batteryHistoryKeys.length; - for (int index = 0; index < remainingSize; index++) { - batteryHistoryMap.put(105L + index + 1, new HashMap<>()); - } - when(mPowerUsageFeatureProvider.getBatteryHistorySinceLastFullCharge(mContext)) - .thenReturn(batteryHistoryMap); - - final List batteryDiffEntryList = - BatteryChartPreferenceController.getAppBatteryUsageData(mContext); - - assertThat(batteryDiffEntryList).isNotEmpty(); - final BatteryDiffEntry resultEntry = batteryDiffEntryList.get(0); - assertThat(resultEntry.getPackageName()).isEqualTo("package2"); } @Test