diff options
author | 2022-05-26 14:13:44 +0100 | |
---|---|---|
committer | 2022-05-27 15:05:12 +0100 | |
commit | 2eb401cfeacb00dc9cda2c12e1d13dc9c8bc6715 (patch) | |
tree | 33de33523670af55696ba27f3d914c76a4abea4b /AndroidManifest.xml | |
parent | 74dc28153c696a5b8a70b97ced4e25d003120bc1 (diff) |
Render remote video preview in picker UI process
Previously, the local provider (PhotoPickerProvider) directly created
a RemoteSurfaceController for video preview. This meant that an
ExoPlayer instance was created in the main MediaProvider process.
This worked on Android T but fails on R&S because MediaProvider
doesn't have the correct selinux policies to play video:
aosp/Ie5acb77b2f446ee8af6cf384fd5a66bf64a15752
Now, we created a RemoteVideoPreviewProvider which is a lean
CloudMediaProvider that only serves to create a
RemoteSurfaceController in the picker UI process. The controller
created here is marshalled back to the PhotoPickerProvider which is
the local provider in the MediaProvider process
Test: atest PhotoPickerTest on S device passes
Bug: 233848463
Bug: 232498432
Change-Id: Ib88713524f928af3cac27072e131b64a65408129
Diffstat (limited to 'AndroidManifest.xml')
-rw-r--r-- | AndroidManifest.xml | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/AndroidManifest.xml b/AndroidManifest.xml index ea7ddc915..dfe0ce06e 100644 --- a/AndroidManifest.xml +++ b/AndroidManifest.xml @@ -81,6 +81,12 @@ android:authorities="com.android.providers.media.photopicker" android:exported="false" /> + <provider + android:name="com.android.providers.media.photopicker.RemoteVideoPreviewProvider" + android:process=":PhotoPicker" + android:authorities="com.android.providers.media.remote_video_preview" + android:exported="false" /> + <!-- Handles database upgrades after OTAs, then disables itself --> <receiver android:name="com.android.providers.media.MediaUpgradeReceiver" android:exported="true"> |