From 2e790e185986e84ca0b7bfb94e6a4185b2954a8c Mon Sep 17 00:00:00 2001 From: Jason Chiu Date: Thu, 18 Jun 2020 02:23:32 +0800 Subject: [PATCH] Fix SecurityException while accessing Slice Uris - There is SecurityException when accessing Slice Uris which are not in Settings app. - Rollback to the original mechanism, remove an unused latch, and register a trivial callback Fixes: 159195420 Test: robotest Change-Id: Ice2cf5f928b0e6d0367bcc41c3912526e8f7bd7f --- .../homepage/contextualcards/EligibleCardChecker.java | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/com/android/settings/homepage/contextualcards/EligibleCardChecker.java b/src/com/android/settings/homepage/contextualcards/EligibleCardChecker.java index 017bdb53fdb..43403306cb3 100644 --- a/src/com/android/settings/homepage/contextualcards/EligibleCardChecker.java +++ b/src/com/android/settings/homepage/contextualcards/EligibleCardChecker.java @@ -110,9 +110,13 @@ public class EligibleCardChecker implements Callable { @VisibleForTesting Slice bindSlice(Uri uri) { final SliceViewManager manager = SliceViewManager.getInstance(mContext); - manager.pinSlice(uri); + final SliceViewManager.SliceCallback callback = slice -> { }; + + // Register a trivial callback to pin the slice + manager.registerSliceCallback(uri, callback); final Slice slice = manager.bindSlice(uri); - manager.unpinSlice(uri); + manager.unregisterSliceCallback(uri, callback); + return slice; }