Commit Graph

2090 Commits

Author SHA1 Message Date
TreeHugger Robot
be679b68a6 Merge "Clean up BatteryAppListPreferenceController" 2022-11-17 05:05:25 +00:00
Zaiyue Xue
7a30768503 Clean up BatteryAppListPreferenceController
Bug: 256123455
Bug: 258576047
Fix: 258576047
Test: presubmit
Change-Id: I8c3d05f76e7a6995fccc34b2cc60ee126bb3d350
2022-11-17 11:28:06 +08:00
ykhung
3cf14b682e Clean up the KEY_ROUTINE from the Settings
Fix: 258603978
Test: make RunSettingsRoboTests
Change-Id: I65033ca18953b57317af64418bb0b18d48eaacd8
2022-11-15 16:07:57 +08:00
ykhung
a2f5c5a24e Remove the 'schedule by routine' from the saver scheduler
Fix: 258603978
Test: make RunSettingsRoboTests
Change-Id: I6256957dc5a4be6699998c825fb32e03f638af39
2022-11-14 11:24:17 +08:00
ykhung
d66fd82c35 Verify and reset invalid battery setting in the data restore stage
Verify and reset invalid battery setting configuration in the data
restore stage to avoid resoring invalid configuration from other devices

Bug: 258243197
Test: make RunSettingsRoboTests
Change-Id: I1a0febd2ad527147e4e9e9c77734c4b51963263a
2022-11-14 01:51:46 +00:00
Zaiyue Xue
62a13f73a3 Merge "Update the preference controller in search index for battery usage." 2022-11-11 03:37:10 +00:00
TreeHugger Robot
b0503be6fd Merge "Fix app battery usage list launch incorrect works app" into tm-qpr-dev 2022-11-11 03:10:06 +00:00
Kuan Wang
6e23499e98 Remove the timestamps of last day for battery level chart if last day has less than 2 hours data. am: 57cb76428e am: 28bdf84b5a
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/20309948

Change-Id: I748c1247a96b3d4ae9160d76c768e2db7af2611a
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-11-10 11:46:43 +00:00
YK Hung
2cdc7409b5 Merge "Verify and reset invalid scheduled battery level in the booting stage" 2022-11-10 10:23:04 +00:00
Kuan Wang
57cb76428e Remove the timestamps of last day for battery level chart if last day has less than 2 hours data.
Test: make RunSettingsRoboTests
Bug: 256525782
Change-Id: I3f735f8f3ec10b2952b93111f0243e44117ff58a
2022-11-10 08:56:39 +00:00
ykhung
4c0de2685a Verify and reset invalid scheduled battery level in the booting stage
The minimum scheduled battery level is changed from 5% to 10% in T, if
users upgrade the device from S to T with invalid level value in
the Settings.Global, we have to force reset it into the new minimum
battery level value.

Bug: 258243197
Test: make RunSettingsRoboTests
Change-Id: I89003120aaebcff78d4bf3f7ae8b54e97adae3c8
2022-11-10 16:38:18 +08:00
Zaiyue Xue
c9d85ff63d Update the preference controller in search index for battery usage.
BatteryAppListPreferenceController is totally replaced by
BatteryChartPreferenceController now. Update the search index returns.

Bug: 256123455
Test: manual
Change-Id: I2340f1be0cee74771aab293a5df8551325c014be
2022-11-10 13:53:35 +08:00
Kuan Wang
d81a6ceefd Remove unnecessary check canScheduleExactAlarms() as Settings always
has the permission.

Test: make RunSettingsRoboTests
Bug: 256123455
Change-Id: I5089494164581465da9533671fc414c7bee1196f
2022-11-09 01:25:10 +00:00
Wesley Wang
5664ebc351 Merge "Add BatteryHistoricalLogUtil class" 2022-11-07 03:08:17 +00:00
Wesley Wang
d90026d184 Add BatteryHistoricalLogUtil class
- 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
2022-11-04 18:09:11 +08:00
Wesley Wang
8deb159e35 Fix app battery usage list launch incorrect works app
- 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
Merged-In: Id06ebb0f0fcd863e423acd7839f89bc0ae2444c1
2022-11-04 06:05:55 +00:00
Yi-Ling Chuang
e3fcf1f082 Remove BatteryFixSlice as it's not used
The BatteryFixSlice hasn't been used for a while, and it's introducing
memory leaks due to a design change at the framework's end. Hence,
remove it.

Bug: 245385410
Test: robotests
Change-Id: I517cab71a32613d5cb5fcd3beb991a24926a2902
2022-11-04 12:22:56 +08:00
Wesley Wang
eda172ce2c Fix app battery usage list launch incorrect works app
- 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
2022-11-03 11:32:30 +00:00
Kuan Wang
628f12c1ad Remove isChartGraphEnabled() which should always return true after
migration.

Bug: 253395332
Test: make RunSettingsRoboTests + manually
Change-Id: I0c4a6e00a7a9fd66d4050e5ddcf87176462067cd
2022-11-01 07:58:57 +00:00
Kuan Wang
a79edc3b56 Merge "Replaces getBatteryHistoryUri and getBatteryHistorySinceLastFullCharge with the new functions in DatabaseUtils." 2022-11-01 07:11:04 +00:00
Kuan Wang
45be6bae05 Listen ACTION_BATTERY_LEVEL_CHANGED in Settings and fetch usage data
when battery is full charged.

Bug: 253395332
Test: make RunSettingsRoboTests + manually
Change-Id: Ie83e5f319074ff404a600c4eb375fbecad651b6d
2022-11-01 06:39:21 +00:00
Kuan Wang
c5c87b7774 Replaces getBatteryHistoryUri and getBatteryHistorySinceLastFullCharge
with the new functions in DatabaseUtils.

Bug: 253395332
Test: make RunSettingsRoboTests + manually
Change-Id: I5f60cef80d1e9ba3f87ab6f84492463152a40276
2022-11-01 02:06:57 +00:00
Kuan Wang
df05a1378b Add hourly period job to fetch battery usage data in Settings.
Bug: 253395332
Test: make RunSettingsRoboTests + manually
Change-Id: I342066a30fed202e5013b8c2554f36d991975c3e
2022-11-01 02:05:14 +00:00
Kuan Wang
68670cd883 Add Zaiyue and I as the owners of battery usage.
Test: NA
Change-Id: If768f53a11df687974706346157b75d5cce14a0e
2022-10-31 10:26:50 +00:00
Chaohui Wang
dbead03b6a Add AppBatteryPreference for Spa
This is used in new App Info page.

To try:
1. adb shell am start -n com.android.settings/.spa.SpaActivity
2. Go to Apps -> All apps -> [One App] -> App battery usage

Bug: 236346018
Test: Unit test & Manual with Settings App
Change-Id: I4784e42f230534d8d843ec00de51032baffcb7e2
2022-10-28 11:18:21 +08:00
Zaiyue Xue
4fbd2064d6 Fix b/248686898: Battery Usage list renders items on top of each other after swiping back from an app
Root cause: When adding an animation to the hourly chartview which is scolled up out of the page, onBindViewHolder() will be trigered, then UI is refreshed again, and then the animation is added to the hourly charview again. This is a dead loop.

This fix adds animation to the hourly chartview only if the visibility is changed.

http://cs/android/packages/apps/Settings/src/com/android/settings/fuelgauge/batteryusage/BatteryChartPreferenceController.java;l=676;rcl=9f24ea815d637a05e1b7ddf2d4372d716d749229
http://cs/android/packages/apps/Settings/src/com/android/settings/fuelgauge/batteryusage/BatteryHistoryPreference.java;l=102;rcl=9f24ea815d637a05e1b7ddf2d4372d716d749229

Bug: 248686898
Fix: 248686898
Test: manually
Change-Id: I93d4d089f537515d452c1330f5d75a6726b229f8
(cherry picked from commit aabea16898)
Merged-In: I93d4d089f537515d452c1330f5d75a6726b229f8
2022-10-26 17:31:17 +08:00
Zaiyue Xue
aabea16898 Fix b/248686898: Battery Usage list renders items on top of each other after swiping back from an app
Root cause: When adding an animation to the hourly chartview which is scolled up out of the page, onBindViewHolder() will be trigered, then UI is refreshed again, and then the animation is added to the hourly charview again. This is a dead loop.

This fix adds animation to the hourly chartview only if the visibility is changed.

http://cs/android/packages/apps/Settings/src/com/android/settings/fuelgauge/batteryusage/BatteryChartPreferenceController.java;l=676;rcl=9f24ea815d637a05e1b7ddf2d4372d716d749229
http://cs/android/packages/apps/Settings/src/com/android/settings/fuelgauge/batteryusage/BatteryHistoryPreference.java;l=102;rcl=9f24ea815d637a05e1b7ddf2d4372d716d749229

Bug: 248686898
Fix: 248686898
Test: manually
Change-Id: I93d4d089f537515d452c1330f5d75a6726b229f8
2022-10-26 11:22:03 +08:00
Kuan Wang
cbaffa34bc Add functions of SI DatabaseUtils into Settings DatabaseUtils and remove
unused functions.

Bug: 253395332
Test: make RunSettingsRoboTests
Change-Id: I61feee3386d7291f9174acb884d09d7ab8733511
2022-10-21 04:48:14 +00:00
Kuan Wang
c7afa45eac Clean up unused function getHideApplicationSummary in
PowerUsageFeatureProvider.

Bug: 253395332
Bug: 254769892
Bug: 254769770
Test: make RunSettingsRoboTests
Change-Id: I6acf0cbdb7321934e85939e0acee567001107a17
2022-10-21 04:42:06 +00:00
Kuan Wang
b036cfabd6 Merge "Copy DatabaseUtils from SettingsGoogle to Settings and use the new Settings database." 2022-10-19 02:20:16 +00:00
Kuan Wang
547df61667 Copy DatabaseUtils from SettingsGoogle to Settings and use the new
Settings database.

Bug: 253395332
Test: make RunSettingsRoboTests
Change-Id: Idbe6d71b69b28d344db146d139b4b60e2e7434da
2022-10-19 02:20:00 +00:00
Kuan Wang
fb136dd8d5 Copy BatteryUsageLoaderService and BatteryBroadcastReceiver from
SettingsGoogle to Settings and rename them to BatteryUsageDataLoader and
BatteryUsageBroadcastReceiver.

Bug: 253395332
Test: make RunSettingsRoboTests
Change-Id: Ide7c572a7df826ca576223c297b8ec78c45cc94e
2022-10-19 02:19:57 +00:00
Kuan Wang
d16201a375 Merge "Copy BatterySettingsContentProvider from SettingsIntelligence to Settings and rename it to BatteryUsageContentProvider." 2022-10-18 02:26:48 +00:00
Kuan Wang
0a0ba915ca Copy BatterySettingsContentProvider from SettingsIntelligence to Settings and rename it to BatteryUsageContentProvider.
Bug: 253395332
Test: make RunSettingsRoboTests + manually
Change-Id: Ib6c2240cd065f6e29393e13b7231bba7afd2d850
2022-10-18 02:26:23 +00:00
Kuan Wang
f41ae57f17 Copy Battery Usage Database from SettingsIntelligence to Settings.
Bug: 253395332
Test: make RunSettingsRoboTests + manually
Change-Id: Ibdd2ace10d9e0893b3d96b345d563307b1890df6
2022-10-18 02:26:18 +00:00
YK Hung
a5069dbd43 Merge "Update Battery settings entry index summary" 2022-10-13 15:57:53 +00:00
Wesley Wang
14f1f4d292 Update Battery settings entry index summary
- Remove toLowerCase method
 screenshots:
   https://screenshot.googleplex.com/C2F4xvxQzh9NBW3.png
   https://screenshot.googleplex.com/PWiQs6KQcJiqd9U.png

Bug: 241064596
Test: make SettingsRoboTests
Change-Id: I51162fff96f083d40a4a20a6c4d3cf85c2dc8a41
2022-10-13 07:45:36 +00:00
Wesley Wang
77550eded2 Update battery sacer incorrect % string
Bug: 253248369
Test: make SettingsRoboTests
Change-Id: I745b6a7726647dbf2808c02708cf59cb501ea7fc
2022-10-13 06:05:54 +00:00
Wesley Wang
c8e077368f Fix battery saver number format issue
- The summary of battery saver scheduler use util to convert the number
   but saver sticky preference use another way to convert it, update
   them to use the same convert method

Bug: 250684701
Test: make SettingsRoboTests
Change-Id: I4f188a2e8e9d4810d187b870e331dc84f50b2b6f
2022-10-06 10:23:28 +00:00
Kuan Wang
56d1c2fa55 Extract the logic of loading battery usage data form BatteryUsageStats
in DataProcessor to make it reusable by BatteryUsageLoaderService.

Bug: 246233366
Test: make RunSettingsRoboTests + manually
Change-Id: I5c721120cc4005044def63937506cc64339a3e6b
2022-09-26 10:45:30 +00:00
TreeHugger Robot
49bdf64e2e Merge "Avoid fade animation when users switch index in hour chart." into tm-qpr-dev am: 581fd171b5 am: 4c9ca7563f
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/19997086

Change-Id: Idbc9311f681fbeda68d28e87a7664f12bc4c53b6
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-09-21 23:18:52 +00:00
Kuan Wang
b1b79bf0f0 Avoid fade animation when users switch index in hour chart.
Before: https://drive.google.com/file/d/13L1hfbhLiNY_GlT0zzE-SqU3fNXmdta6/view?usp=sharing
After: https://drive.google.com/file/d/1l75m1gzGBcy41SFHJvkcDiwaeZo0Rzpj/view?usp=sharing

Test: manually
Bug: 245655904
Change-Id: Iffaf5328b04ffb1f0ff155ecd8c67cd58b9cbfb5
2022-09-20 12:15:26 +08:00
Kuan Wang
bd9042c47f Show app list in Battery Usage page when there is no battery level data.
https://drive.google.com/file/d/1iQxKmEp_weNYdT4JnsiZgYy9mCdn7SRv/view?usp=sharing

Bug: 246233366
Test: make RunSettingsRoboTests + manually
Change-Id: If536c93652506c8009f5cabf3d0ae373b6825bfc
Merged-In: If536c93652506c8009f5cabf3d0ae373b6825bfc
2022-09-20 12:11:25 +08:00
Kuan Wang
1051fb16d8 Show app list in Battery Usage page when there is no battery level data.
https://drive.google.com/file/d/1mZ2Sn3dmjQcCxnhKqDPxfLJDyiTe6mEk/view?usp=sharing

Bug: 246233366
Test: make RunSettingsRoboTests + manually
Change-Id: If536c93652506c8009f5cabf3d0ae373b6825bfc
2022-09-19 07:09:37 +00:00
Zaiyue Xue
d4a26a7a80 Merge changes from topic "accessibility1" into tm-qpr-dev am: 9b24df2c38 am: 83ef9001e7
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/19771692

Change-Id: I8bf9b9c1a6f884850ff7c81965589b5724cdd065
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-09-15 01:39:50 +00:00
Kuan Wang
9059b26db8 Add logging for count of shown / hidden apps in Battery Usage page. am: 676bcedb85 am: 93c0d0227b
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/19893207

Change-Id: I8014b3155c6f731aa88133c718c986b09893723e
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-09-15 01:39:00 +00:00
Zaiyue Xue
9b24df2c38 Merge changes from topic "accessibility1" into tm-qpr-dev
* changes:
  Support accessibility for battery chart (4)
  Support accessibility for battery chart (3)
  Support accessibility for battery chart (2)
  Support accessibility for battery chart (1)
2022-09-14 05:46:17 +00:00
Kuan Wang
676bcedb85 Add logging for count of shown / hidden apps in Battery Usage page.
Bug: 245455490
Test: manually
Change-Id: I7342e822f00f9a0aedcef592cae9809251518812
2022-09-14 02:09:16 +00:00
YK Hung
e9ca70362c Merge "Add fade in / out animation for battery usage hourly chart." into tm-qpr-dev am: 2a33c12028 am: 63dd5861a9
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/19897905

Change-Id: Ieb54a462cc5cc5bc1f7135b92a010953cf365134
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-09-13 17:40:03 +00:00
Zaiyue Xue
525fd2dc3b Support accessibility for battery chart (4)
According to accessibility suggestion, when users double clicked a time slot in battery usage chart with TalkBack on, jump the accessibility focus to the app list category title to let users know what happened after click.

screen record: https://drive.google.com/file/d/13vvA2Il5lz9kvHegH9Tmbq9hJYFGVwJJ/view?usp=sharing&resourcekey=0-g3A29rVsd4NU37SwBD1uzQ

Bug: 242989585
Fix: 242989585
Test: manual

Change-Id: I8ab3b5f1364247121e43b0b8d51e8aa3743b5c2b
2022-09-13 14:50:57 +08:00