* changes:
Fix typo in dexopt.secondary system property
Save package dex usage info after secondary dex reconciliation
Compile secondary dex files during background dexopt job
Add a shell command to force the background dexopt job
A bit more refactoring in BackgroundDexOptService
[PM] Clean up logic for secondary dex oat files
Compile secondary dex files in DexManager
Notify DexManager about new package installs
Bug: 1833991
Test: add a bogus entry to /syste/data/package-dex-usage.list
adb shell cmd package reconcile-secondary-dex-files
com.android.google.gms
wait a bit and check the bogus entry is gone
(cherry picked from commit b1097411028103b6c88ce325af23d2ff1ec746c8)
Change-Id: I23248b11ea07bceb6527f55bf62618d1b2c3d83d
Merged-In: Ic07126bfb8730933081a5e010e3c357d338786e8
Extend the backgound dexopt job to compile secondary dex files when
"dalvik.vm.deopt.secondary" system property is set to true.
Test: adb shell cmd package bg-dexopt-job
Bug: 32871170
(cherry picked from commit 51f521c3bf46e6040f36757bc53ea57ddc7be85e)
Change-Id: I220ff4ea26c4eee030ab1a9f4c957a09aa9f2f4c
Merged-In: If3a4b77f785e92c7f2f7869e25ff9b99904f165a
Add 'bg-dexopt-job' command to 'adb shell cmd package' which will force
the background dexopt job to run the optimizations immediately.
Note that the command only runs the background optimizer logic. It may
overlap with the actual job but the job scheduler will not be able to
cancel it. It will also run even if the device is not in the idle
maintenance mode.
Test: adb shell cmd package bg-dexopt-job
Bug: 32871170
(cherry picked from commit cb5f41ea11b1a6fcd0977a64ee146dde8f537076)
Change-Id: I82c781d46fe16e7b7566a5b5ee91be723a2125cb
Merged-In: I8b0112074220b2e09baf13d842401ee1cf306a89
Add logic in DexManager to reconcile secondary dex records with the
actual files on disk. If secondary dex files are moved or removed then
DexManager will remove the generated oat files during the call to
reconcileSecondaryOdex() and update its internal state.
Add 'adb shell cmd package reconcile-secondary-dex packageName' which
will force DexManager to sync its data with the actual secondary dex
files.
Test: devices bots
runtest -x .../PackageDexUsageTests.java
runtest -x .../DexManagerTests.java
adb shell cmd package reconcile-secondary-dex
com.android.google.gms (after artificially/temporarily renaming some
dex files)
Bug: 32871170
(cherry picked from commit c22c30ed1c05c5c24185dc4d380d1c5026923d46)
Change-Id: Ied9fcbfe367ed3a8250a9ba8d202518b264c64e8
Merged-In: Id2d72dc89995f89cf1ddf79ae4e992afd3f3c127
Add logic for secondary dex compilation in DexManager. Also, extend the
`cmd package compile` command with '--secondary-dex' option which will
compile all used secondary dex files for the given package.
Test: flash & boot,
cmd package compile --secondary-dex -f -m speed
com.google.android.gms
Bug: 32871170
(cherry picked from commit c22c30ed1c05c5c24185dc4d380d1c5026923d46)
Change-Id: I3cf26edbfb5e9f3683e608bb2a596e1ab5682bd4
Merged-In: Ia2b95cb70d26c4ead5cb650047641b0881ca84ae
This will update the internal cache so that the secondary dex files of
the new package can be found when loaded.
Test: runtest -x .../DexManagerTests.java
Bug: 32871170
(cherry picked from commit 0d4b8f8b0c963d9a1f5cb6aff11a11195a3df225)
Change-Id: I34008f6d262f19e88a346a36b83e4093b4129105
Merged-In: I0cb7158af249feeb01cf578a7544dda978eede9d
Also start using libbase style logging. Other log statements will
be converted in a follow up.
Test: make
Bug: 33579623
Change-Id: I34bb2ccab57e5bdd22aa35be8f8dcb68fdc4e097
Add (unhide) a public API which provides network requests with a
timeout. When timed-out the (newly unhidden) onUnavailable() callback
is triggered.
Note: this CL does not add a handler to the API to be consistent
with the existing APIs. There is a separate effort (b/32130437)
to update these APIs with Handlers.
Bug: 31399536
Test: unit tests and CTS (new)
Change-Id: I45ce9ada63372cb56937bb620bfbb7729e5e25d2
Address API Councils comment on documentation for isHomeProviderNetwork
field. Specifically, the expected value for this field for non-Passpoint
network configuration.
Bug: 35855359
Test: make -j32
Change-Id: Ie6cdcc39c5156dccc14ed144e58a6d2f201aef17
So that we can use these constants in WifiService and the apps
as well in the future.
While there, remove auth method "CHAP" from the supported list,
since it is currenlty not supported by WifiService.
Bug: 34206769
Test: make -j32
Change-Id: Icadc3b13f2b135d51445d336116fbba86e96b70f
I found there was a dead lock among main, android.display and GC threads
when running monkey test.
- Main thread got a mutex and was suspended by GC thread.
- Android.display thread waited for mutex held by main thread.
- GC thread waited for suspention of android.display thread.
This will lead to ANR or screen freeze.
Merged-In: I13cf1eca3cb3b7c01aa754874f2b48aab0b472e8
Change-Id: I13cf1eca3cb3b7c01aa754874f2b48aab0b472e8
Address API Council comments on doucmentation for the method calls
and constants related to EAP-SIM. While here, improve unit tests
to ensure that passing a null certificate (chain) causes the config
to forget any existing client certificates.
Bug: 35847887
Test: Unit tests
Change-Id: I1c4e18e1a7cfb61aa4764e32778793368938e70b
These are necessary to use the ICU TimeZone.getTimeZone(String, int) API
that was published in Android N.
Test: make update-api
Bug: 29318728
Change-Id: I078fb1cb93718b6e784f1de071b6f58f3abb7365