If the user is not unlocked, log at the warning level instead of error
to reduce logspam from non-direct boot aware providers.
Fixes: 148747075
Test: manual (observe logs before and after user unlock)
Change-Id: Icd0fb23982a78fb413f329da93b2ce01d37aca2a
Remove the debug code for feature:
1. Background started FGS while-in-use permission restriction
2. Foreground service type camera and microphone.
Bug: 158579189
Test: atest cts/tests/app/src/android/app/cts/ActivityManagerApi29Test.java
atest cts/tests/app/src/android/app/cts/ActivityManagerFgsBgStartTest.java
atest cts/tests/app/src/android/app/cts/ActivityManagerProcessStateTest.java
Change-Id: I9669db918af3740509a090c3075d93588110cea1
Previously we add uid to PendingStartActivityUids at activity start.
Now we also add uid to PendingStartActivityUids at activity resumed
because we can not wait for updateOomAdj() to be run by a runnable that
WindowManager send to DisplayThread at activity resumed.
At ActivityManagerService.getProcessStatesAndOomScoresForPIDs(), if the
ProcessRecord is in PendingStartActivityUids, we hard code the
ProcessRecord to be PROCESS_STATE_TOP and FOREGROUND_APP_ADJ, ahead of
result of updateOomAdj() the comes later.
Bug: 155143386, 157180494
Test: Reproduce steps of 155143386, swipe between GCA and
Snapchat, camera access is allowed after swipe.
Change-Id: Ia11b0e3400e4df851b250beb01dcfda43580668b
Revert submission 11618534-rename-resources
Reason for revert: Possible cause of ~20 test failues, see b/158441669
Reverted Changes:
I5b5b6699f:Use permissionController name rather than hardcode...
I47105cb3a:Remove hardcoding of permission controller package...
I70a43c216:Use aapt2 flag --rename-resources-package in soong...
I60c7f60e9:Use overriden id for resource getIdentifier
Ie8e1c7a9e:Remove resource getIdentifier workaround
Change-Id: Ifdf120ab407db9057810129c3c7bd873524d9129
The offset was computed based off the offset represented by
the most recent historical file while we have to use the time
this file was written.
Also now we persist the history on reboot and shutdown,
significantly minimizing the possibility of data loss.
Added test API to emulate reboot of the history to allow for
precise and tightly controlled test to prevent flakes due to
boot time deviations.
Test: atest android.app.appops.cts.HistoricalAppopsTest#testRebootHistory
Fixes:156853195
Change-Id: I4142371f8bc2b1d710cc8c300e7e79cb03764c04
Instead of requiring the DEVICE_ADMIN feature, we accept either
the feature or the appropriate permission.
Bug: 133240910
Test: Manual testing
Verify that API executes when on a device without DEVICE_ADMIN
when the caller has the LOCK_DEVICE permission.
Change-Id: I30bd0dc81d9d7b7ed5503a926066caffb389b9c0
(cherry picked from commit 3cc489b7f3)
Currently ResourcesManager iterates over all of its weak references to
Resources objects and calls Reference#get to determine if the object
has been garbage collected. This method of pruning WeakReferences
causes reference locks to be acquired in the native layer and causes
lock contention when "references are being processed" by the garbage
collector.
This change uses a ReferenceQueue to determine if a reference has been
garbage collected which should improve performance of
ResourcesManager#getResources when the system is under memory pressure.
By only removing garbage collected references when creating new
Resources objects, the lists grow larger and are periodically pruned
rather than attempting to prune entries from the list every getResources
invocation.
Bug: 157575833
Test: used debugger to observe pruning happening correctly
hange-Id: I3277e80edfa441d24de165e738d33c4fac6b4121
Change-Id: I3277e80edfa441d24de165e738d33c4fac6b4121