am: f9fdd303e8 -s ours
am skip reason: change_id I7c2cd91d0aef0d6436d250544db9bf2131e35075 with SHA1 6de48e4a86 is in history
Change-Id: Ia1aa0e5e91a1e2b086794e9ae81899015eaa49a5
am: 61c92a7da7 -s ours
am skip reason: change_id Idf0f88225c20fc0ed10ae4fccb705f988a3bec60 with SHA1 75b486e4c8 is in history
Change-Id: If2672f90225a113e9a471abf16ecedd92228d533
am: 180c7e6d16 -s ours
am skip reason: change_id I654c0e1f234d097a66f79ba8c019b8bebc794816 with SHA1 d8849f0351 is in history
Change-Id: I98cbcb39556dc739a23bed6c063f28a9f5a78507
am: b323683c45 -s ours
am skip reason: change_id I5c1f57108c4b67d24b198000d57216c63d35290a with SHA1 1033db8ddf is in history
Change-Id: I15fef0fde31b7b15c6444fbc6ed9ef9c328880c4
am: 7ed81d17ba -s ours
am skip reason: change_id I5c1f57108c4b67d24b198000d57216c63d35290a with SHA1 1033db8ddf is in history
Change-Id: Id074701210f4522750df7cd83f84a5f23bfb5b2d
Looper.myLooper() can return null, according to the docs.
But in the DisplayManagerGlobal code, this method is assumed to return
non-null looper.
To ensure that a looper is available, use the main thread looper if the
looper for the current thread is null.
Test: atest cts.ViewGroupTest
Bug: 123592612
Change-Id: I80aaf5703e62837720395bfac4d95144cd6ab9f0
The ApexManager class provides a cleaner interface to the apex service,
as well as providing caching for active packages, which can't change on
a running system. The cache is populated at boot time.
This CL will also cause PackageManager to stop reporting APEX packages
on devices that ship with flattened APEXs.
Test: atest apex_e2e_tests; used small app to verify API calls still
work; checked output of dumpsys.
Test: checked that on marlin (target with flatten APEX) no APEXs are
reported and no crashes are experienced at boot.
Fix: 123052859
Fix: 122638509
Fix: 124299505
Bug: 122952270
Change-Id: Iefe4fb42e455a7479ff47eb776d3492de8395469
RegisteredServicesCache caches services in an xml, so the system doesn't
have to scan all the apks. Whenever a package is changed
(add/remove/replaced), the broadcast receiver in RegisteredServicesCache
will refresh this cache by quering all matching services and reading
their
xml metadata. There is extra work done here, because only the changed
package
will have services added/removed.
The edge case is after a cache is invalidated, we want to query package
manager for everything, regardless of what changedUids is (we could
have arrived here if invalidateCache is called, and then a package
change event fires, before a getAllServices is called to rescan
everything).
Add a new test to verify that the optimization takes care of the case
when the cache is invalidated.
Bug: 117755076
Bug: 122912184
Test: atest RegisteredServicesCache
Test: dumpsys content # check sync adapters
Change-Id: I5c1f57108c4b67d24b198000d57216c63d35290a
(cherry picked from commit dc66ef5ed3)