Move the settings validators out to their own package so we can
reason about them more easily. This is the first step in a journey
which will end up with us not initialising them inside the Settings
object which, in turn, will reduce boot times.
Bug: 139449903
Test: atest RunBackupFrameworksServicesRoboTests CtsBackupTestCases CtsBackupHostTestCases GtsBackupTestCases GtsBackupHostTestCases
Change-Id: I611d9855fa91bbbbb6b0996e8ed6d765dca74717
It's needed by ActivityManager and PackageManager.
Also use a constant in Context for the name.
Test: flashed device with ag/9025572 and ag/9204795 and the platfrom
compat was accessible.
Change-Id: Ie1130a3f0bdd1769fe0755db0089702ea64d9db6
This CL adds a safeguard in ShareSheet to avoid calls to
AppPredictionService when the service is defined but is not available,
for example in the case of a wrong AiAi apk pushed from GooglePlay.
Bug: 138595943
Test: Manual test by removing the AiAi package from device
Change-Id: I4109c5122faa753d5111ee45698301cb6ccdd7b5
Packages with INTERACT_ACROSS_USERS_FULL can now access
ContentProvier#checkUser.
Bug: 139188114
Test: atest ContentProviderTest
Change-Id: Ie71387a26da66ebe34f296476c284c33abba6368
This feature is configurable and set to false as the default value. It
is overlayed as true for Automotive.
Bug: 138242566
Test: manual
Change-Id: I5dde8adc9d4ce749d895287ccf63017b284caec8
Added new dump method with indent parameter to add extra string indent
to the dump output.
Bug: 139097051
Test: build and ran app with/without indent.
Change-Id: Ie4973e75fd4c29505c8f8b5601da9236ebbf9943
This CL adds NewRollbacks to the return value of getAvailableRollbacks,
as long as the PackageRollbackInfo is complete (i.e. there is one for
each child session in the install).
Including these should avoid the potential race condition between the
install finishing and getAvailableRollbacks being called which affected
some of the tests. This means that the draining of the handler that was
previously added to getAvailableRollbacks can now be removed.
In order to avoid a similar race condition when rollbacks are expired, this
change also cancels corresponding NewRollbacks when expireRollbackForPackage
is called.
Bug: 136241838
Bug: 136548146
Test: atest RollbackTest
Test: manual local test with delay added to onFinished in the service callback
Change-Id: I015ee5925e38118c40f4b9e145f78fb12c0e2890
Add ability to give 'startup-agents' that are automatically loaded
when a (debuggable) app starts. These agents are any files in the
'code_cache/startup_agents' directory. The agents are started with the
apps data_directory as an argument.
Test: Install debuggable apk (here com.antonioleiva.bandhookkotlin)
walleye:/ $ run-as com.antonioleiva.bandhookkotlin sh
walleye:/data/data/com.antonioleiva.bandhookkotlin $ mkdir code_cache/startup_agents
walleye:/data/data/com.antonioleiva.bandhookkotlin $ cp /data/local/tmp/libtifasts32.so code_cache
walleye:/data/data/com.antonioleiva.bandhookkotlin $ cp /data/local/tmp/libtifasts64.so code_cache
walleye:/data/data/com.antonioleiva.bandhookkotlin $ cp /data/local/tmp/libchainagentss32.so code_cache/startup_agents/
walleye:/data/data/com.antonioleiva.bandhookkotlin $ cp /data/local/tmp/libchainagentss64.so code_cache/startup_agents/
walleye:/data/data/com.antonioleiva.bandhookkotlin $ echo $PWD/code_cache/libtifasts32.so=log,ClassLoad > chain_agents.txt
walleye:/data/data/com.antonioleiva.bandhookkotlin $ echo $PWD/code_cache/libtifasts64.so=log,ClassLoad >> chain_agents.txt
Start bandhookkotlin
Examine logcat
Bug: 135627501
Cherry-picked from commit c0fce111c8b due to merge conflict.
Change-Id: Ib82b27df90c7964a995288d8b2b3d348a11cdd80
Merged-In: Ib82b27df90c7964a995288d8b2b3d348a11cdd80
Simplifies the dismissal of the dialog, and allows for better
synchronization of when the client should receive the error. The only time
that BiometricService should dismiss the dialog is when authentication
is canceled due to another client, which is almost always due to
allowed-but-weird app behavior.
Bug: 135082347
Test: atest BiometricServiceTest
Test: atest BiometricDialogImplTest
Test: atest CommandQueueTest
Change-Id: I10daa798115e51af8a854759e30033c28e6636ba
Hiding of the BiometricDialog is (almost) all handled by SystemUI now.
BiometricService should only send results to the client when it receives
onDialogDismissed() from SystemUI
Bug: 135082347
Test: atest BiometricServiceTest
Change-Id: Ie91fd54680b942e421b7e187f1107ef7323ea719
1) Clean up BiometricDialogImpl. As a side-effect of 2, which cleans up
the dialog lifecycle, we no longer need to have a handler here. This
greatly simplifies the code here.
2) Clean up interface between BiometricDialogImpl and the UI
(BiometricDialogView).
3) Clean up interface between BimetricService and BiometricDialogImpl.
SystemUI is now responsible for dismissing the dialog.
Test: atest BiometricDialogImplTest
Bug: 138628043
Change-Id: Ic1fea4c05c27dfc7eb6fc661f517f0380b9fff99
There are non-app process usecases in framework code that need to have
access to this API.
Created a new package android.compat in frameworks/base/core following
previous definition of android.compat.Compatibility for app processes
(http://cs/android/libcore/luni/src/main/java/android/compat/Compatibility.java).
Bug: 137769727
Test: m
Change-Id: Ifc1b97ad40c2baf65a86169e101acfa72e3aae5f
Merged-In: Ifc1b97ad40c2baf65a86169e101acfa72e3aae5f