Add new calls to bugreport API, all the while keeping the previous code
and logic untouched.
Added feature flag in Settings which if untouched, runs the old dumpstate workflow
by default. To test the new workflow turn on the feature flag from UI or
`adb shell setprop settings_call_bugreport_api true`.
Add permission TRIGGER_SHELL_BUGREPORT so that not all can send
broadcasts to trigger bugreports.
Create new receiver BugreportRequestedReceiver for the new broadcast intent that the shell app will
use.
Whitelist Shell app to use the bugreport API.
Bug: 123617758
Test: manually built and flash to device. Turn on the feature flag, generate bugreports and check
the onProgress and onFinish notifications.
Test: Turn off the feature flag test old workflow.
Change-Id: I1c7c258a48815a0386d7d4771301cd76f9cae3d0
Stores experiment ids to disk for watchdog rollback initiate/success
events as discussed.
Test: gts in topic
Bug: 131768455
Change-Id: I32768fe5c5c21c43811e25d8f87faae0c8d82c1f
Previously, if a MemoryIntArray is written to a parcel from multiple
threads, we'll create multiple ParcelFileDescriptors that own the same
file descriptor, which fdsan doesn't like. Instead of adopting and then
detaching, use ParcelFileDescriptor::fromFd which dups behind the scenes.
Bug: http://b/132720476
Test: treehugger
Change-Id: Iad4930cc2d8c59a9348fedb0889d24cb566afa62
Test: Automated tests pass. GAD still displays correctly when holding down power button.
Bug: 123397865
Bug: 127644235
Change-Id: I5ca5e760d9a987c75a93c43783ad2b38728d48fc
The reverted change causes a regression where we can get an IllegalStateException
during finalization as we are adopting the native fd in a ParcelFileDescriptor
which takes ownership of the fd. However, the order of finalization is undefined
and if the ParcelFileDescriptor is finalized before the MemoryIntArray we would
get an exception when running the finalization of the latter.
bug:124056170
This reverts commit c81f53f7f1.
Change-Id: I8debb9c5f4c87b1a657084139b27f40b7956fe59
Add a comment noting that the check to throw the exception is
intentionally second so that it's out of the critical path.
Bug: 118339123
Test: N/A
Change-Id: I36c5ea67579bcd7906f711530392110d9987ffb4
Apps targeting Pie or older will get the old undefined behavior. Apps
targeting Q or newer will get the OutOfBoundsException.
Bug: 118339123
Test: atest CtsUtilTestCases
Change-Id: Ibf5467aadec4a2f76ee180e963afeaf5a8a013a2
Original CL ag/5907902 has many merge conflicts so re-posting a trimmed
down version of it.
Initially migrating just the RemoteFillService, with the intention to
migrate others in separate CLs.
Fixes: 122480607
Test: atest CtsAutoFillServiceTestCases
Change-Id: Ibae8b0aa32a7c8283b0fb6eb3c288769b730149a
QuotaController was inadvertently updating all Timers for a particular
user whenever any process state crossed the FOREGROUND_SERVICE
threshold, instead of only updating the Timer for the specific UID.
Also adding more data to QuotaController's dump to make future debugging
easier.
Bug: 129117282
Test: atest com.android.server.job.controllers.QuotaControllerTest
Test: atest CtsJobSchedulerTestCases
Change-Id: Ic8d9e6478e61cc62318ae5651f0526e41a71de8d
This gives supported densities every 20dpi at the low end of densities,
which is where all current automotive screens sit.
BUG: 127714569
Test: None, just adding constants.
Change-Id: I6dd96493bf4474a55f22ce4ddbe27566d4ab9deb