This CL is in continuation to ag/16214441 CL and takes care of few review comments which were pending from the media content provider redirection CL.
Bug: 202035750
Test: atest CtsAppCloningHostTest
Change-Id: I408f985d257b03faef9b934acb43dd5c4cbdb508
Prepares for mainline @SystemApi by getting interfaces to a state where
metalava runs correctly. Doesn't actually expose anything for now.
Bug: 173455397
Bug: 173807334
Test: build
Change-Id: Ie33e883c755d4dd1a0b6c59df4ccde4b11a2a981
Client apps need the ACCESS_AMBIENT_CONTEXT_EVENT permission to use the service. The permission protection level is internal|role.
API overview: http://go/ambient-framework-api
PRD: http://go/ambient-attribution-prd
Design doc: http://go/ambient-service-api
Test: CTS test
Bug: 192476579
Change-Id: I9daede83af34f215c278cb0530238faba1be5c70
Ignore-AOSP-First: to prevent new feature leak.
based on advice from API Council
And unhide TvInteractiveAppView and TvInteractiveAppInfo
Bug: 213836031
Bug: 205738783
Test: atest android.media.tv.interactive.cts.TvInteractiveAppViewTest
Change-Id: I6b97f89dd29efed1b4248faae366fbf1a56b0614
As of now when a clone profile user [android.os.usertype.profile.CLONE] queries any content provider (e.g. media, ...etc), it gets served by the corresponding content provider running in that user space. So, in case of the media content provider, sharing of media items of the owner user space is not possible in the clone profile user space. To facilitate the same, media content provider queries are getting redirected to the owner user space's content provider as a part of this CL.
Bug: 202035750
Test: atest CtsAppCloningHostTest
Change-Id: I09500f86dbd149739422695b6dbd9f1a9717b4e6
Check if the platform has the system feature
1. skip CTS if it doesn't support
2. hide settings if it doesn't support
Bug: 213414385
Test: manual test
Change-Id: I23928f6ac8eaecc4ed5ed3c123afe32e64208c3a
This reverts commit 331be9a643.
Reintroducing ag/16366278 since it seems unrelated to b/214053959 (more details on b/214053959#comment55).
Original commit message:
Migrate unsafe parcel APIs in framework-minus-apex
Migrate the following unsafe parcel APIs in framework-minus-apex:
* Parcel.readSerializable()
* Parcel.readArrayList()
* Parcel.readList()
* Parcel.readParcelable()
* Parcel.readParcelableList()
* Parcel.readSparseArray()
This CL was generated by applying lint fixes that infer the expected
type from the caller code and provide that as the type parameter
(ag/16365240).
A few observations:
* In some classes we couldn't migrate because the class also belonged to
another build module whose min SDK wasn't current (as is the case for
framework-minus-apex), hence I suppressed the lint check
(since I'll eventually submit the lint check to the tree).
* In some cases, I needed to do the cast in
https://stackoverflow.com/a/1080525/5765705 to make the compiler happy
since there isn't another way of providing a class of type
Class<MyClassWithGenerics<T>>.
* In the readSerializable() case, the new API also requires the class
loader, that was inferred to by InferredClass.class.getClassLoader().
* Note that automatic formatting and import rely on running hooked up
to the IDE, which wasn't the case here.
Bug: 195622897
Change-Id: I272432e6e082a973f7a50492ec35d79c2b577c93
Test: TH passes
This facilitates exposing the Parsed_ classes as
@SystemApi(client = SYSTEM_SERVER) while keeping everything inside
services.jar rather than having it split across both jars.
This reverts getPackageArchiveInfo to use legacy PackageParser, since
framework.jar can no longer access the moved classes.
Bug: 214038417
Test: presubmit, no logic changes
Change-Id: I152d70fb4f643d32efb012cfb20b0fbc5f88f2d8
This system service is no longer needed, as there is no longer a shared
lockscreen.
Test: locally on device
Bug: 206054365
Ignore-AOSP-First: cleanup
Change-Id: Ib2db06c377cf632da77dc41c629debfe658bfc48
According to the go/audit_pm_test_plan_sheet_2021, the following tests
are necessary to run for the presubmit process.
* android.appsecurity.cts.ApkVerityInstallTest (ag/15434575)
* android.appsecurity.cts.AppSecurityTests (ag/16473520)
* android.appsecurity.cts.ApplicationVisibilityTest (ag/15151833)
* android.appsecurity.cts.EphemeralTest (ag/16097868)
* android.appsecurity.cts.ExternalStorageHostTest (ag/16473520)
* android.appsecurity.cts.InstantAppUserTest (ag/16097868)
* android.appsecurity.cts.IsolatedSplitsTests (ag/15509173)
* android.appsecurity.cts.OverlayHostTest (ag/15938874)
* android.appsecurity.cts.PackageVisibilityTest (ag/15461803)
* android.appsecurity.cts.PkgInstallSignatureVerificationTest
(ag/16095666)
* android.appsecurity.cts.PrivilegedUpdateTests (ag/15744081)
* android.appsecurity.cts.SharedUserIdTest (ag/7013394)
* android.appsecurity.cts.SplitTests (ag/15509173)
CtsAppSecurityHostTestCases contains some tests not belonging
to PackageManager. It annotates @Presubmit for those classes belonging
to PackageManager. It will be triggered via
frameworks/base/core/java/android/content/pmTEST_MAPPING by the
presubmit process.
Test: TP="CtsAppSecurityHostTestCases:android.appsecurity.cts"; atest \
${TP}.ApkVerityInstallTest \
${TP}.AppSecurityTests \
${TP}.ApplicationVisibilityTest \
${TP}.EphemeralTest \
${TP}.ExternalStorageHostTest \
${TP}.InstantAppUserTest \
${TP}.IsolatedSplitsTests \
${TP}.OverlayHostTest \
${TP}.PackageVisibilityTest \
${TP}.PkgInstallSignatureVerificationTest \
${TP}.PrivilegedUpdateTests \
${TP}.SharedUserIdTest \
${TP}.SplitTests
Bug: 180650365
Change-Id: I0b626e311a598d0fb953019a016a1dbafc380f81
Parse the contents of LocaleConfig's XML to obtain the app-specific supported locales
Bug: 203015582
Bug: 193787310
Test: atest LocaleConfigTest
Local test APK
Change-Id: Ie9314e4c09f881f834bf7ea3cc0780d1545e6ce7
This allows to have a relative order between apex system services if
needed due to dependencies.
Bug: 192880996
Test: atest ApexSystemServicesTestCases PackageParserTest ApexManagerTest
Change-Id: Ib9700be48390f8a78135c76e79ad2bc4cb6e8577
Previously we allowed bindServiceAsUser in the following situations:
* caller has INTERACT_ACROSS_USERS_FULL
* caller has INTERACT_ACROSS_USERS and is in same profile group
* caller has INTERACT_ACROSS_PROFILES and is in same profile group and is the same app as the service
We now additionally allow:
* caller has INTERACT_ACROSS_USERS and is the same app as the service
(regardless of whether it is in the same profile group)
Bug: 209989958
Test: tested locally that granting the permission allows access to bindServiceAsUser
Test: atest UserControllerTest
Change-Id: I47d6f86fd159aa993971366ee9d7d334644d391e