1. Insert/Update/Query/Delete
2. Update the action when app been restricted
3. Display restriction time in RestrictedAppDetails
Bug: 111366678
Test: RunSettingsRoboTests
Change-Id: I77a53f70e1ce4b612aabe28b7a1bb5df8f3ec9d5
If an app been set default SMS/PHONE app, we need to unrestrict this
app. This CL extract a common function and invoke it when necessary.
Change-Id: Id29c5138438aa6f6f22cdd9c4ecf336de8481782
Fixes: 80305978
Test: robotests
1. Remove unused class and resources
2. Update function in AdvancedPowerUsageDetail since
we don't need pass in anomaly anymore
Change-Id: I96fbe5ddaae902b34b756c7aae0338e49afef1f3
Bug: 74529048
Test: 1. manual test in settings page. 2. robo test still pass
Before this CL, we will drop log for excessive bg anomaly that
target O or higher. This CL doesn't drop it however merge it to
ACTION_ANOMALY_IGNORED
Bug: 79944380
Test: RunSettingsRoboTests
Change-Id: I46d0bdb1191d8843ba373e59afb1b0ba16057661
We don't need it anymore because we don't auto restrict this
anomaly.
Bug: 79210436
Test: robo test still pass
Change-Id: I186213a57f9bf54a0e19985f2c92169c6dc0571c
Before this CL, we assumed all the apps in this page were restricted and
didn't consider that user may uncheck one and rotate the screen.
In this CL, when we create checkbox, we will update the state through
FAS API to make sure checkbox is up-to-date.
Change-Id: I4e89908591f0688b4170806db4b6631bf921f2e9
Fixes: 78161466
Test: RunSettingsRoboTests
In this CL, don't blame system app in anomaly detection and also
add log for it.
Following CL will update it to also check whether this system app
has launch entry.
Bug: 77477987
Test: RunSettingsRoboTests
Change-Id: I97490b32bc42ec2f8e03ec2d82f7c8bf89f9c66f
This only happens in new device with broken power_profile.xml, in
which it doesn't have screen power model.
This CL catches the null pointer crash and log it.
Change-Id: Iac23e3a8fc51385bdb22979c4b59000319f6fd49
Fixes: 74617269
Test: RunSettingsRoboTests
When there is average time estimation, change it to "Full charge lasts
about" and also update the time.
Also update the BatteryInfo to return average time estimation even
though it is charging.
Bug: 73018395
Test: RunSettingsRoboTests
Change-Id: Ib22dadb5716e3034c60aeeb7768fdbf0cc86be0c
This updates the Estimate data model class as well as the places
it is used to populate the new field when available.
Test: robotests
Bug: 74020365
Change-Id: Ibcecf933819f8b8cd8514205768569e9bd7d1517
(cherry picked from commit 453db0cdbc)
Merged-In: 453db0cdbc
Many features are using the enhanced estimates but the copy for them
has gotten out of sync. This CL moves shared strings between Settings
and SysUI to SettingsLib and also updates features that use the
strings to have consistent behavior/text.
Test: Robotests
Bug: 65656091
Bug: 66909350
Bug: 67469159
Change-Id: Ie5ef1ed65429ca9805cff374f1439e5d61eb6591
1. Move force standby action to BatteryUtils
2. Add click action for restricted preference(go to detail page)
3. Build app list in detail page using packageOps list
Bug: 71502850
Test: RunSettingsRoboTests
Change-Id: I1e6733e5402e7a854b07a8bbb43a86255276bfaa
1. Add both model and detector
2. Move the screen usage method to BatteryUtils
so we could reuse it.
3. Add and update the tests
Bug: 70570352
Test: RunSettingsRoboTests
Change-Id: I6a7248d9d48ee8cb6fc2c18c8c225210d49b6bc9
The message displayed in battery settings will now more accurately
reflect when an estimate is enhanced based on our updated
definition of what that means.
Test: robotests
Bug: 64833846
Change-Id: Id635d78d8f56d10253e22df2705af93f2693db70
In battery tips, we need synchronized method to get batteryInfo.
This cl move the logic to BatteryUtils, then in battery tips we
could use this method directly.
Bug: 70570352
Test: robotest still pass
Change-Id: Id69349a25395ae472a9b3152c6f04127ee32c4e1
Add foreground service time to foreground usage time of apps. This will
account for app usage that user is aware of but is not being displayed
on screen, such as playing music while screen is locked.
Change-Id: Ica9fe0819e46b50299eb2eab7f0483ea01441fb0
Fixes: 38313557
Test: RunSettingsRoboTests
In PowerUsageBase, it will store battery stats if it has a configuration
change, which will make BatteryStatsLoaderHelper never get the correct
battery stats because it uses Bundle.EMPTY as the bundle message.
This cl:
1. Remove the store action even though it is configuration change.
2. Always use null to get battery stats
3. Always start a battery status check in register()
Bug: 63658232
Test: RunSettingsRoboTests
Change-Id: Ifbf970c63378ed66dddcdae4d952b7d1fd84216a
This cl make it could have multiple actions for each anomaly type.
This includes:
1. Add field "targetSdkVersion", "bgRestrictionEnabled" in Anomaly
2. Add new action which includes "force stop" and "background check"
3. Add "sdkVersion" and "bgRestrictionEnabled" method in BatteryUtils
4. Update BackgroundCheckAction to check sdkVersion first
5. Update serveral tests and add new test
Bug: 63037765
Test: RunSettingsRoboTests
Change-Id: Iea7a131ee57d501f7737ae4a3ba672d948d05cd8
BatteryUtils.convertUsToMs and .convertMsToUs should be static, and now
they are.
Bug: 63347148
Test: make RunSettingsRoboTests
Change-Id: If652e2d3e1260df9a933805d7da670fbb26b2c25
For now it uses MIN(STATE_TOP_TIME, FOREGROUND_ACTIVITY_TIME) and this
method is used in both display and screen smearing.
Bug: 63080621
Test: RunSettingsRoboTests
Change-Id: I2ca3109697aa66fae67d8b2f4f10c4d08bb99d59
This Cl adds a few log statements to BatteryInfo to try
and determine what the bottleneck in the Battery Settings
Advanced page could be.
Test: robotests still pass
Bug: 62959645
Change-Id: I1ff712d97bc8be78873c63e187edbffa8e10cd21
The parameter in timer should be microseconds, not milliseconds
Bug: 63073847
Test: RunSettingsRoboTests
Change-Id: I5e451aee9eb30815fbefe12c0bfdc85dff884b8e
This cl changes it to:
foregroundTime = MIN(topTime, foregroundActivityTime);
Bug: 62884954
Test: RunSettingsRoboTests
Change-Id: I236c18b19c4f06c5a6d018bc06ffb9862af51de2
This cl refactor it so:
1. AnomayLoader could create its own BatteryStatsHelper if needed.
2. AnomalyDetector could detect the anomaly with a target package name
3. Remove FeatureProvider in AnomalyLoader and use
AnomalyDetectionPolicy instead
With this cl, we could add anomaly detection to battery usage page
more easily.
Bug: 36924669
Test: RunSettingsRoboTests
Change-Id: I1ee09701de8b5c8855f44e447813760285794c89
this CL changes BatteryInfo methods to all use the async style
callback approach it had for one of the methods. Non-async methods
are now annotated to only be used in worker threads. BatteryInfo
can now be obtained via callback by calling one of the async
methods. Alternatively if there is a worker thread available
the synchronous methods similar to the old ones can be used.
The callback methods have all been changed so that they cascade to a
async method that takes all the required info as paremeters. This
will minimize the amount of churn in files that currently use
BatteryInfo.
A new loader was created that can be used to get BatteryInfo in
places that wish to get it. This loader is used in
PowerUsageSummary to get the BatteryInfo.
Test: Robotests
Bug: 38399275
Bug: 38398949
Bug: 38399654
Change-Id: Ic5a82d8ca4c85fad1b883226327ec083badf861d
Then we could make sure the app list is sorted
Bug: 62035385
Test: RunSettingsRoboTests
Change-Id: I3fa3d6ffc5930cf011e382632143e459fdbc4369
Merged-In: I3fa3d6ffc5930cf011e382632143e459fdbc4369