This introduces extra attributes on <application/> tag corresponding to
requesting to be shown in UI for the user to disable auto-revoke
(allowDontAutoRevokePermissions)
and being whitelisted by the installer (dontAutoRevokePermissions)
Test: presubmit
Bug: 146513245
Change-Id: I07902632812b70ea418a667d343b74d7ae170bb9
Window layout affinity is used to combine launch params records for
activities from the same UID that have the same value.
I didn't choose to replace component name as the key to launch params
map by window layout affinity because keeping both has some good traits
when app is updated with some window layout affinity changes:
1) The record with component name is still updated even if it starts to
have a window layout affinity so we don't have to worry about the
orphaned record;
2) Activity that changes/loses window layout affinity can always use the
last launch param that activity saves, instead of starting from default
launch behavior again;
3) App removal can still naturally clean up all useless records.
Those come at a cost that we need to iterate all activities in the same
window layout affinity when getting the launch params, but it's OK
because it's not very common to have specific task affinities and in
cases where they do the number of activities sharing the same task
affinities is limited.
Bug: 146015757
Test: Manual test that 2 activities in a single test app shares the same
launch params record.
Test: atest LaunchParamsPersisterTests
Change-Id: Idb2e7509c6bdf22ac6c9cf41059e9c696419028b
In the core functionality this changes everything including aidl's and
field names:
- Context
- ContentProvider
- AppOps*
- Package parsing
For the rest, this is a shallow change to only change to the changed
APIs. This keeps the change small-ish
Exempt-From-Owner-Approval: Rename
Fixes: 148792795
Test: TH
Change-Id: I2a2245fe76e09e62cb13d5785d2efb4a304ba54a
Merged-In: I2a2245fe76e09e62cb13d5785d2efb4a304ba54a
This tag can be used to enable and disable gwp-asan on applications and
their components. The default setting is disabled, except for the system
applications which are enabled with a small probability (approx. 1% of
processes).
Enabling gwp-asan can be used to crowd test an app.
This change includes a compat feature that overrides the default value
of enableGwpAsan for an app.
Bug: 149991821
Test: atest CtsGwpAsanTestCases
Exempt-From-Owner-Approval: cherrypick
Merged-In: I5eb647c517e5487b1d1eed6b9a43242490f19289
Change-Id: I5b4db666f38af846927f88702cc690f0916cadb1
This is from calendar team's feedback. It allows them to
create a nice animation when launching the activity. This also mirrors
the implementation in the Activity class.
Fixes: 151150552
Test: atest com.android.cts.devicepolicy.CrossProfileAppsHostSideTest#testStartActivityIntent
Change-Id: Ie120896e50d8b2c033b9cb156357bd696eb033e0
The display order of the shortcuts is solely determined by launcher apps
implementation at their own discretion, the rank of the shortcut merely
serves as a guideline. Thus removing the misleading paragraph to prevent
confusions.
Bug: 150254995
Test: make
Change-Id: I4cdb9a5779edfdb5b56659e4787b3f13e7e3054e
This change leaves the referrerUri field null when the caller leading to
its production is not the owner of the session.
Bug: 142125338
Test: atest SessionReferrerUriTest
Change-Id: I84679ea0636aa2097e25e23813c48134c9cc1d75
This is already effectively an API the way it is documented.
Updating all the references of the hard-coded constant.
Test: make update-api && make
Bug: 151112929
Change-Id: Iadeb03c516215cfc51bc8604b67250348d5a4375
Starting in R, there is a new public API overload that delivers a
flags argument. Some apps may be relying on a previous hidden API
that delivered a userId argument, and this change is used to control
delivery of the new flags argument in its place.
There are dozens of these hidden API users are in the system UID,
either in the system process or the Settings app, so we hard-code
giving them the legacy behavior, since refactoring would be messy
between internal and AOSP branches.
Also adjust incoming and outgoing method signatures to use slightly
more flexible Collection<Uri>, which has handy methods like
contains() and isEmpty().
Bug: 150939131
Test: atest --test-mapping packages/providers/MediaProvider
Test: atest FrameworksServicesTests:com.android.server.devicepolicy.DevicePolicyManagerTest
Exempt-From-Owner-Approval: trivial refactoring
Change-Id: If6a77449e19215cf1c60d4217e62fc04b0959bfc
Add intent that signifies the desire to access the auto revoke UI inside
the Permission Controller.
Bug: 146513245
Test: none needed
Change-Id: I58d32d2c02941f65c52e054ad712541126086586
This change adds support for wildcards when computing matching during
package add. This enables apps to define queries->intents tags that
match *all* actions, categories, schemes, authorities and/or
scheme-specific parts.
Fixes: 150451794
Test: atest AppEnumerationTests IntentFilterTest
Change-Id: I00508786c6a4b557fdceaec500ba4a69ce8d5362
Added comments to better explain:
- How initiating differs from installing;
- When null might be returned from either (expanding on existing
comments on the PM#getInstallSourceInfo method).
Bug: 150330937
Test: Still builds.
Change-Id: I03c5d92f643e97019b00778ca1d8e0c92e25dac8
This API exists for compatibility with pre-Donut applications
that were not properly density aware. As such, there's no
current reason to use this. So deprecate it.
Bug: 150869482
Test: builds
Change-Id: Ie12957988d5f5d292277a291a20b565c2e3ef46e
As part of MediaProvider becoming a Mainline module, some partners
need to understand more details about what triggered a Uri change
notification. This helps listening apps avoid making expensive and
race-condition-prone calls back into MediaProvider; typically when
they're only interested in insert and delete operations. This change
uses the existing "flags" argument to communicate the reason.
This change adds overloads to ContentObserver for listening apps to
receive these flags. In addition, we add overloads that deliver a
clustered set of multiple Uris together in a single Binder transaction
to improve overall efficiency. (This matches well with the existing
CR.notifyChange() API that we added earlier this year, since they
both work with Iterable<Uri>.)
Tests to verify that we only collapse Uris together when all other
method arguments are identical.
Bug: 147778404, 144464323
Test: atest CtsDatabaseTestCases
Test: atest CtsContentTestCases:android.content.cts.ContentResolverTest
Test: atest FrameworksServicesTests:com.android.server.content.ObserverNodeTest
Test: atest --test-mapping packages/providers/MediaProvider
Change-Id: I0bbd8a8b4a898ab6f891d085de0ecb4d68cbe302
Feedback from the api council advised on changing the name of reserved
permission controller flag mask constant and also update the
documentation to be more descriptive.
Fixes: 149216099
Test: Presubmit
Change-Id: I15db4204ef9c3468676d93331b760b39a3488c81
Previously we had to use "incremental_service" because the proxy service
was using "incremental". Now that we have removed the proxy service, we
can just use "incremental".
Test: adb shell dumpsys incremental
Test: atest PackageManagerShellCommandIncrementalTest
BUG: 150406132
Change-Id: I0788cb90bf73b074506f9079253c433429eef782
This renames the new ApexContext class to ApexEnvironment, at the
request of the API Council.
Bug: 150685788
Test: atest ApexEnvironmentTest
Change-Id: I4340b0c7e78d240f4e48fdc94ec9e7d60e58d35c