Use IntroPreference to show apps' icon and label in
(1) App info > App battery usage page
(2)App info > App battery usage > Allow background usage
Bug: 349652542
Test: visual
Flag: EXEMPT flag by System prop
Change-Id: I44f3369e48f073d98455fcab3ccd10ffecdb8d66
- Use one Controller to manage preferences related to battery Optimization Mode.
- Move optimization mode & preferences status update logic from Fragment to Controller.
Bug: 373544647
Test: atest AdvancedPowerUsageDetailTest PowerBackgroundUsageDetailTest BatteryOptimizationModePreferenceControllerTest BackgroundUsageAllowabilityPreferenceControllerTest
Flag: EXEMPT for simple fix
Change-Id: I2b1fed837fb4904e4118ab51c1d0cda36c0f6198
Before the setup flow completion, don't allow the app info page in App battery usage to be launched.
Bug: 327748846
Test: atest SettingsRoboTests + manual test
- factory reset + launch app battery usage app info via ADB during Setup -> verify app closes
Flag : EXEMPT bugfix
Change-Id: I486820ca2afecc02729a56a3c531fb931c1907d0
- Fetch foreground service info through new api from UidBatteryConsumer.
- Record fgs & bg usage time separately, combine them till ui display.
Bug: 315255868
Test: make RunSettingsRoboTests ROBOTEST_FILTER="com.android.settings.fuelgauge.*"
Change-Id: Ic19844db7908a6ae6522c7a72972f44f94dcfca4
Current failing tests: ab/I64100010182936387
Had to Ignore some of com.android.settings.accessibility tests, which will be fixed separately
Bug: 261728063
Test: atest SettingsRoboTests -- --test-arg com.android.tradefed.testtype.IsolatedHostTest:java-flags:-XX:CompressedClassSpaceSize=3g
Change-Id: I4a0cb992db924936826e0c9808accc78dddb5f30
This is to meet the Guidelines for Logging Package Names: go/package-name-logging-guidance
Bug: 267430574
Fix: 267430574
Test: presubmit
Change-Id: Icf10000f5dcf87e45175d4005af8365191ad444d
So the next cl (new summary for battery detail page) doesn't need to
deal with isValidToShowSummary=true case.
Bug: 262802531
Test: presubmit
Change-Id: I88528caedb29d61a05b40d3ca435fc007bf3f54c
Change all the "from last full charge" to "since last full charge".
Bug: 257404630
Fix: 257404630
Test: presubmit
Change-Id: Ib316e9fecac60f388e2b1810de9a65c540c52358
- Impl optimize mode log mechanism to record optimize setup flow
- Log optimize action with MANUAL, APPLY, RESET and RESTORE
- Use proto file to serialize logs
sample result: https://screenshot.googleplex.com/5KPrHVGb4pMvS7V.png
Bug: 241735485
Test: make SettingsRoboTests
Change-Id: I879663de4cf45d0cfb9cd7eee957eeb65addfbe1
- App usage page only use package name to launch the page, it can not
identify the different userId between normal app and work profile
app, add extra userId info into launch args
- Remove no battery usage state/string if usage time is empty
Bug: 251471047
Test: make SettingsRoboTests
Change-Id: Id06ebb0f0fcd863e423acd7839f89bc0ae2444c1
We have two different "Optimization mode" page design in the android R to support bi-state for AOSP and tri-state for Pixel device. From android T, we always show tri-state for both AOSP and Pixel. So it's time to clean up the legacy design for bi-state.
This change doesn't include string resources cleanup, which will be
included in a separated cl.
Bug: 232037602
Test: make RunSettingsRoboTests
Change-Id: I5194201d0b11e2dcea958d49bf07ed837a386465
Hide the running time information for "Android System" entry, since this
entry will combine multiple system components together. It will provide
incorrect running time information. The getRealUid() method maps many
UIDs to Process.SYSTEM_UID(1000), which results in combining all of
those UIDs into one "Android System" entry. This is the expected behavior.
Bug: 220717612
Test: make RunSettingsRoboTests -j56 ROBOTEST_FILTER="com.android.settings.fuelgauge"
Change-Id: I9d44fe8490ad5c684419b8ebf8d7d5576a42788a
Fix incorrect usage for the logging method to cause the schedule type
and percentage data is not logged into the WW, since
MetricsFeatureProvider doesn't support log Pair.of() data into the
WestWorld or Clearcut directly, it is used for EventLogWriter only
Bug: 202906853
Test: make SettingsRoboTests
Change-Id: I9f1d157c77df9bd74f441105318790a2505a9c01
- Move to onPause to avoid some corner case (like kill apps from recent
app won't trigger onDestroy)
Bug: 195306545
Test: make SettingsRoboTests
Change-Id: I89445a7138c30e6c869ce1c5c9a3f818997d99a7
- Log the optimize mode only when leave this page and mode changed
- Update mOptimizationMode at onResume to make sure the state is sync
with framework
Bug: 195306545
Test: make SettingsRoboTests
Change-Id: Iab116220cd7d2b1bdb1c170c4b47016c763bf4fe
- Present empty string when this app consumed power but no usage time,
usually they are some system components
Bug: 197749108
Test: make -j64 RunSettingsRoboTest
Change-Id: I1e88babb30c871748fa1f5fc23c7b4d834e384fd
- Reverts commit e7cca4cd81
- Add try-catch to handle unexpected operate
Reason for revert: Previous fix will cause a side effect which makes app stuck at Optimize mode after switching state from Unrestricted to Optimize, add a try catch to handle previous issue first
BYPASS_INCLUSIVE_LANGUAGE_REASON=legacy naming, not edit by this code change
Bug: 199892006
Test: make SettingsRoboTests
Change-Id: I3b1850ab66bbf4cd605f14152a244a8ed7edd578
Merged-In: I3b1850ab66bbf4cd605f14152a244a8ed7edd578
This reverts commit 3f7839cad0.
Reason for revert: This fix will cause a side effect which makes app switch state from Unrestricted to Optimize then it will lock at Optimize mode only, will prepare other cl to fix the previous issue
Change-Id: Ic5232eb0099fa1591f15e72747eca4d08b9af9b9
- Check PowerSaveWhitelistExceptIdle list before update each apps
optimizaton mode to avoid duplicate remove action
- Make those apps which under PowerSaveWhitelistExceptIdle list keep at
optimized mode only
BYPASS_INCLUSIVE_LANGUAGE_REASON=legacy naming, not edit by this code change
Bug: 199892006
Test: make SettingsRoboTests
Change-Id: I3cd10cf51b5132fc12a83e9554801ec4e8578cd1
Merged-In: I3cd10cf51b5132fc12a83e9554801ec4e8578cd1
- Check PowerSaveWhitelistExceptIdle list before update each apps
optimizaton mode to avoid duplicate remove action
- Make those apps which under PowerSaveWhitelistExceptIdle list keep at
optimized mode only
BYPASS_INCLUSIVE_LANGUAGE_REASON=legacy naming, not edit by this code change
Bug: 199892006
Test: make SettingsRoboTests
Change-Id: I3cd10cf51b5132fc12a83e9554801ec4e8578cd1
Invoke BackupManager.dataChanged() when app optimization mode is changed
to notify BackupManager to execute Settings agent to backup data in the
next backup session, when performing the partial backup event.
Bug: 192523697
Bug: 197608038
Bug: 194633034
Test: make SettingsRoboTests
Change-Id: I456acc2594d22503763e4ce286435148ae0644a4
This change is to reduce ambiguity as we're adding the option to style the preference like a checkbox as well.
Bug: 190180868
Test: SelectorWithWidgetPreferenceTest, RunSettingsLibRoboTests
Change-Id: Ie414347bf67ed394ef495604890c5851fc42dbc7
- Add new battery entry to app info battery preference, support both
legacy and new args, controlled by P/H
- Add a method to check is work profile app or not, use owner context to
query correct context for feature provider
- Add string for new args
Bug: 178197718
Test: make RunSettingsRoboTests
Change-Id: Ic93142a0c5e2851917cb3e224340a6e3e81fd801
- Update active time string with "last full charge" when new graph disabled
Bug: 187666107
Test: make SettingsRoboTests
Change-Id: Ie790600dcbe8b845ad63edd46b4a95a317c623a3