am: 64b2e26c4e
* commit '64b2e26c4ec30d8ee6829778a41029f4b691e208':
Fix a couple bad links in the javadoc for android.os.health.
Change-Id: I4823359d436aab34b4f032b466b184dc34731146
am: bdff78d9ea
* commit 'bdff78d9eadf2e9c0f8333aa457ffeac3b947fa8':
Fix a couple bad links in the javadoc for android.os.health.
Change-Id: If90e8eb85bfd85e3f46c04de34f4d1f4db177673
am: 3b25fd081d
* commit '3b25fd081d6af21b16ab4b96ead70766b3d78d06':
Fix a couple bad links in the javadoc for android.os.health.
Change-Id: Iec6ad93e7445df5d642aba24867c264c435c53ba
am: 5f0856afc3
* commit '5f0856afc3399e24bcdb3a862887bce5fab087f2':
Two phases to set the password for disk encryption
Change-Id: I33698902b9eb6345ee8eef5deae043132d7eb80d
am: d365ddbd73
* commit 'd365ddbd736729415df5a9b5823e74ad87ac2380':
Two phases to set the password for disk encryption
Change-Id: I11a856a217d8313925385e2b053afe2356a4646e
am: 9aa6bb5a4a
* commit '9aa6bb5a4a8bd00a175e8a9c338b52bc24a162b4':
Two phases to set the password for disk encryption
Change-Id: Ic8102ebd218f387236aa5ef013ccdf4bc8f58ce1
am: adf2a6240d
* commit 'adf2a6240dd0a732ece6c8aa7733ad77ff838819':
Flesh out the docs for the android.os.health package.
Properly blame the correct uid for wakeup alarms that don't have a WorkSource.
Change-Id: I489a00519a7484886f946c8d640dfa3fcb6bf3a7
am: 4240daca3a
* commit '4240daca3afe78652d775bf5431beb9e10c531d3':
Flesh out the docs for the android.os.health package.
Properly blame the correct uid for wakeup alarms that don't have a WorkSource.
Change-Id: I773937e0b0a5c1021e1c0716e06ec29f6f78a351
am: ac29617c6e
* commit 'ac29617c6e11085c9648d150a50c5daa15d65645':
Flesh out the docs for the android.os.health package.
Properly blame the correct uid for wakeup alarms that don't have a WorkSource.
Change-Id: If9d0461325336f6c5cb6faca34bac17c8ef6a35e
am: ac29617c6e
* commit 'ac29617c6e11085c9648d150a50c5daa15d65645':
Flesh out the docs for the android.os.health package.
Properly blame the correct uid for wakeup alarms that don't have a WorkSource.
Change-Id: I28bae3d984af6d19852fb63eda5fb21c1b6c98dd
am: 93b15870d5
* commit '93b15870d52e9115225b5cc1c9b7fb78b2b9500b':
Cancel animation and jump to current state if not animating picker
Change-Id: Ic72675504ac72cd1b19ec8049fd56b3f54401b72
am: 3f9d17fbe1
* commit '3f9d17fbe1614267dd25ac46d973acb205175cd7':
Cancel animation and jump to current state if not animating picker
Change-Id: I6834b9dfdde724dab3fe69a1467338f7c100ea99
am: d8c38b892b
* commit 'd8c38b892b86cc9cb94633b6f9d74126e2d53c60':
Cancel animation and jump to current state if not animating picker
Change-Id: Icdc36f4f5133b16a1b15d7cf58d1e0ef21fe9b7e
am: d8c38b892b
* commit 'd8c38b892b86cc9cb94633b6f9d74126e2d53c60':
Cancel animation and jump to current state if not animating picker
Change-Id: I20684e1e974e1d5f8f6987ca9eac17d3da470763
am: 9f144cb395
* commit '9f144cb3952c6367d113c8f77cc01394bd3751c0':
Fixed connectivity state in some restricted network scenarios.
Change-Id: I1bc51c4a06dad9245ce0ed884707855b2c04edf1
am: 87d20317bf
* commit '87d20317bf26e87ef58798d3c5aafb81aa163788':
Fixed connectivity state in some restricted network scenarios.
Change-Id: Ifeb332fbf00c554b78d0ad724b34e3a8ebfc9894
am: 638a6e8140
* commit '638a6e8140a22a0ddb5d5dacb02173795073bd1a':
Fixed connectivity state in some restricted network scenarios.
Change-Id: I5d3fdbbff6d92be9657d3ed466462ca911d20881
am: 638a6e8140
* commit '638a6e8140a22a0ddb5d5dacb02173795073bd1a':
Fixed connectivity state in some restricted network scenarios.
Change-Id: I0fd66b16c83680940f294ea8e117443ffd8a50cd
am: ad2b44c8c7
* commit 'ad2b44c8c7907a971e7437c5ccd0f823caec53fd':
Move the 'pretend idle jobs can run now' broadcast into AMS
Change-Id: I50b6ca257b7995d6a50fe938f8d4c788f739001a
NetworkPolicyManagerService (NMPS) keeps an internal list of uid
rules (mUidRules) for network restrictions, and when these rules
changes it needs to notify external listeners (such as
ConnectivityService / CS).
Prior to Android N, both Data Saver mode (the feature previously known
as "Restrict Baground Data") and Battery Save mode used the same set of
firewall rules to implement their restrictions: when Battery Saver mode
NPMS would mark all networks as metered and set the proper firewall
rules externally.
Recently, these 2 modes were split in 2 distinct firewall rules and
NMPS.updateRuleForRestrictBackgroundLocked() was changed to update
the mUidRules logic based on the Data Saver firewall (since the Battery
Saver firewall changes are handled externally, on
updateRuleForRestrictPowerLocked()). As such, CS was not notified when
the power-related changes were made, which would cause apps to get a
state of CONNECTED / CONNECTED when querying its active connection.
Another scenario that is not properly handled is when a UID whitelisted
for Data Saver is brought back to foreground: although the proper
firewall rules are set, CS is not notified, and the apps state would be
DISCONNECTED / BLOCKED.
This CL introduces many changes that fix this issue:
- Fixed updateRuleForRestrictBackgroundLocked() to invoke
onUidRulesChanged() when the Battery Saver status changed.
- Fixed updateRuleForRestrictBackgroundLocked() to invoke
onUidRulesChanged() when an app whitelisted for Data Saver is brought
back to the foreground.
- Added a new API (onRestrictPowerChanged() and getRestrictPower())
to notify external services about Battery Saver mode changes.
- Fixed CS logic to properly handle the Battery Saver changes.
Externally to this change, the CTS tests were also improved to verify
the apps get the proper connection state; they can be verified running:
cts-tradefed run commandAndExit cts -m CtsHostsideNetworkTests \
-t com.android.cts.net.HostsideRestrictBackgroundNetworkTests
BUG: 28521946
Change-Id: I8eaccd39968eb4b8c6b34f462fbc541e5daf55f1
am: 2591ee2b0b
* commit '2591ee2b0be76f2f592716cd04f7c3629f13b591':
Move the 'pretend idle jobs can run now' broadcast into AMS
Change-Id: Iaea15199390098250e7fdd171a9bb83ec1325887
am: 0588954071
* commit '058895407140de0e513b82150c3acb6131e971a2':
Move the 'pretend idle jobs can run now' broadcast into AMS
Change-Id: Ia97d382761fc8b9f2c11729cd027a2d8c6c9379b
am: 0588954071
* commit '058895407140de0e513b82150c3acb6131e971a2':
Move the 'pretend idle jobs can run now' broadcast into AMS
Change-Id: Id8bd50f0a5f6d46cf60dea690803081515cb21c3
Calling Objects.hash with a byte[] will call the identity hashCode on
the byte[] and this doesn't agree with the use of Objects.deepEquals
in equals.
Bug caught by error prone.
Also, replaced usage of Objects.deepEquals(mServiceDataUuid, ...) with
Objects.equals(mServiceDataUuid, ...), because mServiceDataUuid
is an Object of type ParcelUuid.
Bug: 28585195
Change-Id: Id92734874339985fedafe1a28286a6a4dcd88d3b