1. Update the dnd receiver to listen when dashboard summary running.
- remove the dnd receiver from Android manifest, and create it inside
the dnd condition.
- add lifecycle implementation to condition manager, so that the dnd
condition can know when to register and unregister the receiver.
- remove getReceiverClass() from dnd condition so that its receiver will
not be disabled by the default condition handling when condition is
silenced.
2. Remove all other conditions receiver from Android manifest.
- the broadcast receivers for HotspotCondition, AirplaneModeCondition,
CellularDataCondition from the manifest and create them inside the
condition classes.
- update Condition.onSilenceChanged() to register/unregister the
receivers instead of enable/disable the receiver class.
Change-Id: Iea6288382680df2b02884d1934b8db85daae404c
Fix: 35968517
Test: make RunSettingsRoboTests
The existing code checks during Settings startup whether the device is
managed. If it is not, EnterprisePrivacySettingsActivity is disabled.
If the device then becomes managed, Settings will not notice until
the next restart, causing any attempt to launch this Activity via an
Intent to crash.
This CL changes things so that the Activity is always enabled but
simply does nothing when launched on a non-managed device.
Bug: 34122104
Test: Integration test coming in a separate CL
Change-Id: I0a1dfcb41b405d981309696d97678df6787b4f72
If the category only contains one app, show usage time, otherwise
show app with maximum usage.
Also add usage time for apps in battery settings page.
Bug: 35396770
Test: RunSettingsRoboTests
Change-Id: I43fe9c2289535be2c1b95ffded6b52b0ff099589
The toggle disabling of Wi-Fi in its ENABLING and DISABLING states
are not in sync with the loading of access points, and so removed
the disabling entirely.
Bug:34287227
Test: manual inspection.
Change-Id: Ibcb401eaaa34be79e1e73a947b2ea845cca79996
In the app details, the first letter of the storage type was
capitalized, causing an odd string of "X used in Internal storage."
Change-Id: I2b4f23ea1799dc1730fdab596e4a87a0cb673c68
Fixes: 36001265
Test: Settings robotest
These two buttons(uninstall + forcestop) are used in both battery page
and app page, we should move the logic for these two buttons into one
place.
This cl creates the AppButtonsPreferenceController for the above
purpose. This cl only copies the logic to controller but hasn't make
InstalledAppDetails use this controller.
Since DialogFragment could not use function in controller directly,
the controller expose DialogListener and all the fragments must
implement this interface. Then they can delegate the method call
to controller directly.
The following cl will:
1. Make the InstalledAppDetails be compatible to controller
2. Make the InstalledAppDetails use this controller.
Bug: 35810915
Test: RunSettingsRoboTests
Change-Id: Ie2aa8064bcec3003233896c18be772825b12930a
- Call to MediaPlayer.create() method can return null, and hence we need
to check the return value before trying access the media player.
Change-Id: I4a5e0edbd6db21b678efb05ea733187f34185432
Fix: 36668356
Test: make RunSettingsRoboTests
Add null check for context when getting the suggestion identifier, since
this is called from async task and context might becomes null.
Change-Id: If17036803de1634891b659a4fc6bd4b8a76ef5fb
Fix: 36605386
Test: make RunSettingsRoboTests
The class UidDetailProvider providers details about a specific UID,
we can directly apply it here.
Optimize: https://code.google.com/p/android/issues/detail?id=237810
Test: for case TrafficStats.UID_REMOVED
1.add an new User
2.generate some data traffic under the new user
3.switch to the phone owner
4.delete the User added just now
5.go to Data usage and open the item "Removed apps and users"
for case TrafficStats.UID_TETHERING
1.open tethering and generate some data traffic
2.go to Data usage and open the item "Tethering & portable hotspot"
Change-Id: I05aa522728b296d6c06580adf809f274491cdcea
Signed-off-by: tiansiming <tiansiming@xiaomi.com>