From 6fa7ca47ab9a06f6b3dc6afa3c489f7e7061a39f Mon Sep 17 00:00:00 2001 From: Abhijeet Kaur Date: Mon, 16 Aug 2021 12:06:21 +0100 Subject: [PATCH] Add warning for a known issue in a newly added API checkUriPermissions is a new API added in Android S to check multiple uri permissions via single API call. However, checkUriPermissions is not working as intended for secondary users. The root cause has been found and the fix is merged for later releases. Bug: 194700183 Test: atest --user-type secondary_user CtsScopedStorageDeviceOnlyTest:android.scopedstorage.cts.device.RedactUriDeviceTest#testSharedRedactedUri_openFileForRead Change-Id: I72db7f0b4ddf97dce14880b6341799106d711c5c --- core/java/android/content/Context.java | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/core/java/android/content/Context.java b/core/java/android/content/Context.java index 27027721109df..d7d885e5cb8ec 100644 --- a/core/java/android/content/Context.java +++ b/core/java/android/content/Context.java @@ -5935,6 +5935,10 @@ public abstract class Context { * more general access to the URI's content provider then this check will * always fail. * + * Note: On SDK Version {@link android.os.Build.VERSION_CODES#S}, + * calling this method from a secondary-user's context will incorrectly return + * {@link PackageManager#PERMISSION_DENIED} for all {code uris}. + * * @param uris The list of URIs that is being checked. * @param pid The process ID being checked against. Must be > 0. * @param uid The user ID being checked against. A uid of 0 is the root