Define splits for AUDIO/VIDEO/IMAGE permissions

Define three permission splits:

- READ_EXTERNAL_STORAGE to READ_MEDIA_AUDIO (targetSdk<T)
- READ_EXTERNAL_STORAGE to READ_MEDIA_VIDEO (targetSdk<T)
- READ_EXTERNAL_STORAGE to READ_MEDIA_IMAGE (targetSdk<T)

This results in the following behavior: any time any legacy application
(i.e., targetSdk<TIRAMISU) is granted READ_EXTERNAL_STORAGE, it will
also automatically be granted READ_MEDIA_AUDIO, READ_MEDIA_VIDEO, and
READ_MEDIA_IMAGE.

The motivation for this change is to support the "Media Permission
Update for Android T" project.

Bug: 201318587
Test: atest CtsPermissionTestCases CtsPermission3TestCases
Change-Id: I79171cbda6a3d6d1d4bb87994c8b02f7174ea4db
This commit is contained in:
Jay Thomas Sullivan
2022-01-31 18:38:46 -08:00
parent e6c96ebb51
commit 7fd9adf992

View File

@@ -231,6 +231,18 @@
targetSdk="29">
<new-permission name="android.permission.ACCESS_MEDIA_LOCATION" />
</split-permission>
<split-permission name="android.permission.READ_EXTERNAL_STORAGE"
targetSdk="33">
<new-permission name="android.permission.READ_MEDIA_AUDIO" />
</split-permission>
<split-permission name="android.permission.READ_EXTERNAL_STORAGE"
targetSdk="33">
<new-permission name="android.permission.READ_MEDIA_VIDEO" />
</split-permission>
<split-permission name="android.permission.READ_EXTERNAL_STORAGE"
targetSdk="33">
<new-permission name="android.permission.READ_MEDIA_IMAGE" />
</split-permission>
<split-permission name="android.permission.BLUETOOTH"
targetSdk="31">
<new-permission name="android.permission.BLUETOOTH_SCAN" />