Notifications can be non-blockable if their app has the
permission fixed or if the app holds certain roles.
Calculate that on device boot and role change, and use the same
source of truth for all UIs. As a bonus, we can remove some
systemui binder calls.
Test: SystemUiTests & FrameworkUiServicesTests
TesT: verify that 'usb debugging connected' notifs are non blockable
but magnification ones are, in systemui and settings
Fixes: 231662091
Change-Id: I980718ab61196901d976f9ea8ee035eafc021fc8
This parameter is useful for when a broadcast's intent is not targeting
specific package and it is not wanted to be delievered to a specific
one.
Test: Install two apps and create shell command argument to exlude
packages, verify the correct packages can receive or get
skipped. Verified with manifest and registered receivers.
Bug: 231635380
Bug: 210118427
Merged-In: I9a331f71c7052b294d4eada0f0f658dba989d881
Change-Id: I9a331f71c7052b294d4eada0f0f658dba989d881
Currently, if the transport implementation throws an exception, the
framework will wait for response for the full timeout duration (10
minutes) before aborting the operation (see attached bug).
1. Add exception handlers to the transport wrapper that runs on the
remote side (i.e. transport implementation side) - while exceptions
are no longer propagated to system_server with introduction of async
transport, we'd still like to know when one occurs to stop waiting
for response (instead of relying on timeout).
2. Reduce the 10-minute timeout to 5 minutes - our data shows this is a
reasonable value.
Bug: 229670840
Test: 1. Manual (test B&R of any app)
2. atest CtsBackupHostTestCases
Change-Id: Id97fa470fae65efc0ad587615a6e9edfd1e5f298
This reverts commit 6b3c6cae3f.
Changes from revert:
- Explicitly maintain the same behavior as previous versions of Android,
where injection is allowed into all window if the caller has the
INJECT_EVENTS permission, even if it is targeting a certain uid. This
fallback will be removed separately in b/228161340.
- Clear the calling identity before checking if the injection source has
a permisssion to avoid hitting blanket-checks in PackageManager that
denys permissions in some cases, such as if the permission check call
is coming from an instant app (b/228319794).
- Leave the existing IInputManager#injectInputEvent method signature
unchanged, and add a new input method injectInputEventToTarget to
perform targeted injection. This makes it so that tools or apps
relying on the @UnsupportedAppUsage injection method will not be
broken by a change in the method's signature (b/228583652).
Bug: 207667844
Bug: 194952792
Test: Run tests affected by b/228319794 and its duplicates using
cts-tradefed, so that they are also run as instant apps.
Test: Test scrcpy tool works locally
Change-Id: I503e4f087501e3aecf2c18b4b1d27e51ecda59ac
Merged-In: I503e4f087501e3aecf2c18b4b1d27e51ecda59ac
Changed how protected packages are stored in package manager:
* previously they were stored in a map from DO package into
a list of protected packages. This isn't expressive enough
to allow POs: the same PO package on different users may
protect different packages.
* now they are stored in a map from userId into a list of
protected packages. In case when the DO sets the policy
the userId will be UserHandle.USER_ALL, otherwise it will
be the calling user.
Bug: 218639412
Test: atest UserControlDisabledPackagesTest
Change-Id: I2d1d33acad035610c8db365f69b7a15faa03a2d5
Merged-In: I2d1d33acad035610c8db365f69b7a15faa03a2d5
Update the UI template data's parcel r/w with #readParcelable and #writeParcelable so it works for the BaseTemplateData's subclasses.
Bug: 231401631
Test: Tested locally
Change-Id: I64b0dd8cb781acd0f2badba7f87454ae9f72eb28
This op gets around the background restrictions on RECORD_AUDIO, when
used for SoundTrigger detection
In addition, moves the precise logic for soundtrigger RECORD_AUDIO
checks out of the soundtrigger system
Fixes: 230430779
Test: manual
Change-Id: I6d63c99e2d31e3f668070ac82afed71ff6672c9e
Merged-In: I6d63c99e2d31e3f668070ac82afed71ff6672c9e
Add the link in the java doc to guide developers how to use the LocaleConfig
Bug: 214154050
Test: Verify the link can be accessed successfully
Change-Id: I19042b485bdf69b8bd8a6465176226109ce1d338
The feature punts to QPR so disable or remove code from the build
time.
Bug: 222185402
Test: build pass and can boot to home
Test: make sure the toolbar using local implementation
Change-Id: Idad82c3c46ddce0731a26f4599de01eecb0e52c3
And the related obsolete code.
Test: SystemUITests, framework services tests, NotificationManagerTest
Fixes: 231344755
Change-Id: Id14941f82305b0216f2a12221d4195f8afcc65ab
Javadoc stated that org-owned provisioning modes won't receive
the IMEI and serial number, but that's incorrect. That actually
applies to personally-owned.
Bug: 187112267
Test: compiled
Change-Id: I257d1b45b2921891b1d8e6869fb77ce281d2ce90
To distinguish the requirement between all numeric and not all numeric
when COMPLEXITY_HIGH.
Note:
The second param of applyComplexity() changed back from
withNonNumericCharacters to isPin.
This was changed from isPin to withNonNumericCharacters in Change
I3227d4d8e6825b5c4ea525828d7e09f52702065b without changing the caller.
This currently not causing any issues because applyComplexity() only
used by KeyguardManager.getMinLockLength(), which currently never be
called with COMPLEXITY_HIGH.
Fix: 227149118
Fix: 173167839
Test: manual & robolectric
Change-Id: I7e0d4a1edf42327452b7d9a564258b26865c056e
Adds explanation of MessagingStyle fields, and corrects some
typographic errors that lead to some javadocs not being rendered
completely.
Bug: 159367102
Test: Only documentation change
Change-Id: I751a15d0abf35cdcb7ad2caacf954bdeec23a394
Add some detail about migrating to OnBackInvokedDispatcher and the
reason behing the deprecation of onBackPressed methods.
Fixes: 227563202
Test: Documentation change only
Change-Id: Ifc2dd88cb9600efae84cd353549811e7b07ae4bc
If the role holder updater fails to update the role holder, it can
specify how the platform should handle the failure. It can either
fail provisioning, or it can carry on using the platform-driven
provisioning.
Bug: 230749552
Test: compiled
Change-Id: Id24b24e5d7386d9806efa232f8c71287c9b7704b