OSDN Git Service

Take persistable permission for fp content Uri
authorTony.YS Liu <tonyysliu@google.com>
Fri, 29 Mar 2019 05:52:59 +0000 (13:52 +0800)
committerTony.YS Liu <tonyysliu@google.com>
Tue, 2 Apr 2019 23:03:25 +0000 (07:03 +0800)
Bug: 129086327
Test: Manual tested with GMSCore's cl/241082662 and confirmed
b/129086327 is fixed

Change-Id: Idfedce411eb6cff8a0afa200945cb2a00f3644ef

packages/SettingsLib/src/com/android/settingslib/bluetooth/BluetoothUtils.java

index 867efb4..1582e4c 100644 (file)
@@ -4,6 +4,7 @@ import android.bluetooth.BluetoothClass;
 import android.bluetooth.BluetoothDevice;
 import android.bluetooth.BluetoothProfile;
 import android.content.Context;
+import android.content.Intent;
 import android.content.res.Resources;
 import android.graphics.Bitmap;
 import android.graphics.PorterDuff;
@@ -149,6 +150,12 @@ public class BluetoothUtils {
             final Uri iconUri = uriString != null ? Uri.parse(uriString) : null;
             if (iconUri != null) {
                 try {
+                    context.getContentResolver().takePersistableUriPermission(iconUri,
+                            Intent.FLAG_GRANT_READ_URI_PERMISSION);
+                } catch (SecurityException e) {
+                    Log.e(TAG, "Failed to take persistable permission for: " + iconUri);
+                }
+                try {
                     final Bitmap bitmap = MediaStore.Images.Media.getBitmap(
                             context.getContentResolver(), iconUri);
                     if (bitmap != null) {