Base CL ag/12885739 introduced unconditional enforcement of the BACKUP
permission for callers of BackupManagerService.isBackupServiceActive()
in the service, but dropped the enforcement on the app process side
(BackupManager).
This CL makes the behavior change conditional on a compat ChangeId.
Bug: 158482162
Test: Manually checked that an app similar to the code sample from
http://b/158482162#comment1 can reproduce the behavior.
This is true both before the base CL and after this CL, when
the app targets an old SDK version (26).
Test: Checked that both (a) before this CL, (b) after this CL where
the change is manually enabled for the app via the below commands,
the app runs into a SecurityException instead:
$ adb shell am compat enable 158482162 com.example.tester
$ adb shell dumpsys platform_compat | grep 158482162
ChangeId(158482162; name=IS_BACKUP_SERVICE_ACTIVE_ENFORCE_PERMISSION_IN_SERVICE; enableSinceTargetSdk=31; packageOverrides={com.example.tester=true})
Change-Id: I58e5d2a0b438296137fd76720636c8fdce740ded
BackupManager runs in the client process, whereas BackupManagerService
runs in the system server process. Therefore, apps permissions need should
be enforced on the service side.
Bug: 158482162
Test: Manually checked that a sample app encounters SecurityException
after but not before this CL, when running code similar to the
sample in http://b/158482162#comment1 to figure out whether
isBackupServiceActive() for its own uid.
Change-Id: I59693819542a80a065a9c88373393b0ba0dbef65
BigPictureStyle allows devs to attach a big picture image to their
notifications. Since images can have content descriptions, allow devs
to add content descriptions to the big picture image for a11y
Bug: b/147295675
Test: atest NotificationManagerTest; created a notification and
tested with TalkBack
Change-Id: Ibdf9d67a7d9a8c3a60b2560c3be6dde93247b7ac
The D2D backup process Source backup currently uses
FullBackup.backupToTar; restricting it breaks (at least) SMS transfer.
Remove the constraint, for now.
Bug: 172049974
Test: Automated backup test runs before submission
Change-Id: I67012521e57bb6cadd76bedea1d7415359f2aaf7
This is a workaround solution for Android R QPR2. We are not allowed
to change the API for QPR release. This is a special case that allows
the current voice recognizer to note proxy ops if it is also the
voice interactor. In S, we will define a new permission that designed
one as a trusted blamer and tie it to a role.
Bug: 17095434
Test: manual
Test: TreeHugger presubmit
Change-Id: I506bbeb95e622b99693dbf5a135c7961b7fd81c1
Strictly speaking other owners for SettingsProvider/test/...
should exist but there aren't any right now, so it's not
worth keeping a per-file rule since I don't think that
those can be combined with include.
Bug: 159055442
Test: Treehugger
Change-Id: I38c9c227e16c91f72ee0fc761670f82160e46ae2
These are APIs that have @UnsupportedAppUsage but for which we don't
have any evidence of them currently being used, so should be safe to
remove from the unsupported list.
This is a resubmit of ag/12929664 with some APIs excluded that caused
test failures; see bugs 171886397, 171888296, 171864568.
APIs excluded:
Landroid/bluetooth/le/ScanRecord;->parseFromBytes([B)Landroid/bluetooth/le/ScanRecord;
Landroid/os/Process;->myPpid()I
Landroid/os/SharedMemory;->getFd()I
Landroid/hardware/input/InputManager;->INJECT_INPUT_EVENT_MODE_WAIT_FOR_FINISH:I
Bug: 170729553
Test: Treehugger
Change-Id: I8285daa8530260251ecad6f3f38f98e263629ca7
This CL refines e1fb953 to make sure a non-resizeable task with
undefined windowing mode won't be resolved in multi-window mode
even when its parent is.
Bug: 171672645
Test: atest TaskTests
Change-Id: I311f0f9bd9dbadaa134370faea8db937160ea44f
Allows to organize direct child of root task created by organizer and
extends TaskInfo to reveal the parent task id.
To organize child task properly for each features, passes all child
task organizer events to the listener listening to its parent task if
feasible.
Fix: 169267298
Fix: 169266482
Test: atest WindowOrganizerTests
Test: atest SplitScreenTests
Test: atest PinnedStackTests
Test: atest WindowInsetPolicyTests
Test: atest WMShellUnitTests
Test: split screen works
Change-Id: I8e66f810c86fcdac3287adfa208d8e34786fc9b5
Moved the query of max number of pip actions from
ActivityTaskManagerService to ActivityTaskManager.
Note that TaskInfo#pictureInPictureParams is exposed via
TaskInfo#getPictureInPictureParams (annotated as @TestApi).
Bug: 168800594
Test: atest PinnedStackTests#testMaxNumberOfActions \
PinnedStackTests#testFillMaxAllowedActions \
PinnedStackTests#testRejectExceededActions
Change-Id: Ibcf2302e3ec87909543a1d6da0b64fd4565a061c
This patch adds a shell of the VcnManagementService and VcnManager
Bug: 163431877
Test: Compiles, Boots
Change-Id: I1f3d8ab9c9bff7d419ea6d3edaae3b6b41b1d775
Adding MANAGE_ACTIVITY_TASKS permission as the replacement, but
still grant the deprecated MANAGE_ACTIVITY_STACKS permission for
app compatibility.
Bug: 157876448
Test: presubmit
Change-Id: I894ee66e058b1024a731d3be4b33b69626451f08
This change adds a FLAG_MUTABLE_UNAUDITED that is equal in value to
FLAG_MUTABLE but is intended to be used with PendingIntents that have
not yet been audited to be intentionally mutable/immutable. This will
help us update the tree to work with the enforced explicit mutability flag
requirement (go/immutable-pendingintents has more context).
This flag is marked as deprecated and we hope to remove it once all PIs
have been audited and use either FLAG_MUTABLE or FLAG_IMMUTABLE.
FLAG_MUTABLE_UNAUDITED should not be relied on long term, and any usage
is intended to be short term.
Bug: 160794467
Test: TH
Change-Id: I6a4f65d5364a611620b88e92c208aba7faaa13b8
Now #getUiAutomation returns null if the underlying UiAutomation fails
to connect for targetSdkVersion > R. This gives the caller a chance to
retry and decide when to give up.
Bug: 147785023
Test: presubmit
Change-Id: Ibf201fa042b80c067f2a0c3b0bde23adf9c60546
Merged-In: Ibf201fa042b80c067f2a0c3b0bde23adf9c60546
Now #disconnect won't throw if the previous #connect failed due to
timeout. Note we also introduce generation id so we won't receive
notifications or modifications from the previous client to disrupt
UiAutomation's status when making the next connection.
Bug: 147785023
Test: m
Change-Id: Idf77207124494bd78770b8ea5d9ac4b1fd1a490a
Merged-In: Idf77207124494bd78770b8ea5d9ac4b1fd1a490a
These are APIs that have @UnsupportedAppUsage but for which we don't
have any evidence of them currently being used, so should be safe to
remove from the unsupported list.
Bug: 170729553
Test: Treehugger
Change-Id: I4c8fd0006f950de9955242e93968fb0996ceb372