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
Because Bluetooth is going mainline, we need to remove call to hidden
API.
Intent.ACTION_SETTING_RESTORED and extra are currently hidden.
There is no known alternative, so this CL make them SystemApi.
Bug: 211851706
Test: Build + start bt
Tag: #refactor
Change-Id: I7a105946f075819f21b91a39bc37c6e167439bf4
This allows holders of START_CROSS_PROFILE_ACTIVITIES permission to start an activity of the caller package in the other profile.
Test: atest CrossProfileAppsHostSideTest (with new tests in change I661d4b7132291950c8bcb4690d90154a78751b1e)
Ignore-AOSP-First: seeking internal review on WIP change prior to merging in AOSP
Bug: 207117478
Change-Id: I5afa2e458b2eda4f53cfceabe3af950c0df63ad7