Loading src/com/android/settings/fuelgauge/PowerUsageAdvanced.java +29 −0 Original line number Diff line number Diff line Loading @@ -19,8 +19,11 @@ import android.app.settings.SettingsEnums; import android.content.Context; import android.content.Intent; import android.content.IntentFilter; import android.database.ContentObserver; import android.net.Uri; import android.os.BatteryManager; import android.os.Bundle; import android.os.Handler; import android.provider.SearchIndexableResource; import android.util.Log; Loading @@ -31,6 +34,7 @@ import androidx.loader.content.Loader; import com.android.settings.R; import com.android.settings.SettingsActivity; import com.android.settings.fuelgauge.BatteryBroadcastReceiver; import com.android.settings.overlay.FeatureFactory; import com.android.settings.search.BaseSearchIndexProvider; import com.android.settingslib.core.AbstractPreferenceController; Loading Loading @@ -63,6 +67,17 @@ public class PowerUsageAdvanced extends PowerUsageBase { private BatteryChartPreferenceController mBatteryChartPreferenceController; private BatteryAppListPreferenceController mBatteryAppListPreferenceController; private final ContentObserver mBatteryObserver = new ContentObserver(new Handler()) { @Override public void onChange(boolean selfChange) { Log.d(TAG, "onBatteryContentChange: " + selfChange); mIsChartDataLoaded = false; restartBatteryStatsLoader( BatteryBroadcastReceiver.BatteryUpdateType.MANUAL); } }; @Override public void onCreate(Bundle icicle) { super.onCreate(icicle); Loading Loading @@ -104,6 +119,20 @@ public class PowerUsageAdvanced extends PowerUsageBase { super.onPause(); // Resets the flag to reload usage data in onResume() callback. mIsChartDataLoaded = false; final Uri uri = mPowerUsageFeatureProvider.getBatteryHistoryUri(); if (uri != null) { getContext().getContentResolver().unregisterContentObserver(mBatteryObserver); } } @Override public void onResume() { super.onResume(); final Uri uri = mPowerUsageFeatureProvider.getBatteryHistoryUri(); if (uri != null) { getContext().getContentResolver().registerContentObserver( uri, /*notifyForDescendants*/ true, mBatteryObserver); } } @Override Loading src/com/android/settings/fuelgauge/PowerUsageFeatureProvider.java +6 −0 Original line number Diff line number Diff line Loading @@ -18,6 +18,7 @@ package com.android.settings.fuelgauge; import android.content.Context; import android.content.Intent; import android.net.Uri; import android.util.SparseIntArray; import com.android.internal.os.BatterySipper; Loading Loading @@ -141,4 +142,9 @@ public interface PowerUsageFeatureProvider { * Returns battery history data with corresponding timestamp key. */ Map<Long, Map<String, BatteryHistEntry>> getBatteryHistory(Context context); /** * Returns {@link Uri} to monitor battery history data is update. */ Uri getBatteryHistoryUri(); } src/com/android/settings/fuelgauge/PowerUsageFeatureProviderImpl.java +6 −0 Original line number Diff line number Diff line Loading @@ -19,6 +19,7 @@ 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.SparseIntArray; Loading Loading @@ -167,4 +168,9 @@ public class PowerUsageFeatureProviderImpl implements PowerUsageFeatureProvider public Map<Long, Map<String, BatteryHistEntry>> getBatteryHistory(Context context) { return null; } @Override public Uri getBatteryHistoryUri() { return null; } } Loading
src/com/android/settings/fuelgauge/PowerUsageAdvanced.java +29 −0 Original line number Diff line number Diff line Loading @@ -19,8 +19,11 @@ import android.app.settings.SettingsEnums; import android.content.Context; import android.content.Intent; import android.content.IntentFilter; import android.database.ContentObserver; import android.net.Uri; import android.os.BatteryManager; import android.os.Bundle; import android.os.Handler; import android.provider.SearchIndexableResource; import android.util.Log; Loading @@ -31,6 +34,7 @@ import androidx.loader.content.Loader; import com.android.settings.R; import com.android.settings.SettingsActivity; import com.android.settings.fuelgauge.BatteryBroadcastReceiver; import com.android.settings.overlay.FeatureFactory; import com.android.settings.search.BaseSearchIndexProvider; import com.android.settingslib.core.AbstractPreferenceController; Loading Loading @@ -63,6 +67,17 @@ public class PowerUsageAdvanced extends PowerUsageBase { private BatteryChartPreferenceController mBatteryChartPreferenceController; private BatteryAppListPreferenceController mBatteryAppListPreferenceController; private final ContentObserver mBatteryObserver = new ContentObserver(new Handler()) { @Override public void onChange(boolean selfChange) { Log.d(TAG, "onBatteryContentChange: " + selfChange); mIsChartDataLoaded = false; restartBatteryStatsLoader( BatteryBroadcastReceiver.BatteryUpdateType.MANUAL); } }; @Override public void onCreate(Bundle icicle) { super.onCreate(icicle); Loading Loading @@ -104,6 +119,20 @@ public class PowerUsageAdvanced extends PowerUsageBase { super.onPause(); // Resets the flag to reload usage data in onResume() callback. mIsChartDataLoaded = false; final Uri uri = mPowerUsageFeatureProvider.getBatteryHistoryUri(); if (uri != null) { getContext().getContentResolver().unregisterContentObserver(mBatteryObserver); } } @Override public void onResume() { super.onResume(); final Uri uri = mPowerUsageFeatureProvider.getBatteryHistoryUri(); if (uri != null) { getContext().getContentResolver().registerContentObserver( uri, /*notifyForDescendants*/ true, mBatteryObserver); } } @Override Loading
src/com/android/settings/fuelgauge/PowerUsageFeatureProvider.java +6 −0 Original line number Diff line number Diff line Loading @@ -18,6 +18,7 @@ package com.android.settings.fuelgauge; import android.content.Context; import android.content.Intent; import android.net.Uri; import android.util.SparseIntArray; import com.android.internal.os.BatterySipper; Loading Loading @@ -141,4 +142,9 @@ public interface PowerUsageFeatureProvider { * Returns battery history data with corresponding timestamp key. */ Map<Long, Map<String, BatteryHistEntry>> getBatteryHistory(Context context); /** * Returns {@link Uri} to monitor battery history data is update. */ Uri getBatteryHistoryUri(); }
src/com/android/settings/fuelgauge/PowerUsageFeatureProviderImpl.java +6 −0 Original line number Diff line number Diff line Loading @@ -19,6 +19,7 @@ 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.SparseIntArray; Loading Loading @@ -167,4 +168,9 @@ public class PowerUsageFeatureProviderImpl implements PowerUsageFeatureProvider public Map<Long, Map<String, BatteryHistEntry>> getBatteryHistory(Context context) { return null; } @Override public Uri getBatteryHistoryUri() { return null; } }