diff --git a/services/core/java/com/android/server/slice/SliceManagerService.java b/services/core/java/com/android/server/slice/SliceManagerService.java index a9cdafd9aeaa4..507f0a8b7bb86 100644 --- a/services/core/java/com/android/server/slice/SliceManagerService.java +++ b/services/core/java/com/android/server/slice/SliceManagerService.java @@ -155,11 +155,10 @@ public class SliceManagerService extends ISliceManager.Stub { enforceAccess(pkg, uri); int user = Binder.getCallingUserHandle().getIdentifier(); uri = maybeAddUserId(uri, user); - getOrCreatePinnedSlice(uri, pkg).pin(pkg, specs, token); + String slicePkg = getProviderPkg(uri, user); + getOrCreatePinnedSlice(uri, slicePkg).pin(pkg, specs, token); - Uri finalUri = uri; mHandler.post(() -> { - String slicePkg = getProviderPkg(finalUri, user); if (slicePkg != null && !Objects.equals(pkg, slicePkg)) { mAppUsageStats.reportEvent(slicePkg, user, isAssistant(pkg, user) || isDefaultHomeApp(pkg, user) diff --git a/services/tests/uiservicestests/src/com/android/server/slice/SliceManagerServiceTest.java b/services/tests/uiservicestests/src/com/android/server/slice/SliceManagerServiceTest.java index d49ba3ea3b4dc..43a4e277a582b 100644 --- a/services/tests/uiservicestests/src/com/android/server/slice/SliceManagerServiceTest.java +++ b/services/tests/uiservicestests/src/com/android/server/slice/SliceManagerServiceTest.java @@ -93,7 +93,7 @@ public class SliceManagerServiceTest extends UiServiceTestCase { mService.pinSlice("pkg", TEST_URI, EMPTY_SPECS, mToken); mService.pinSlice("pkg", TEST_URI, EMPTY_SPECS, mToken); - verify(mService, times(1)).createPinnedSlice(eq(TEST_URI), eq("pkg")); + verify(mService, times(1)).createPinnedSlice(eq(TEST_URI), anyString()); } @Test @@ -126,4 +126,4 @@ public class SliceManagerServiceTest extends UiServiceTestCase { verify(mContextSpy).checkPermission(eq("perm2"), eq(Process.myPid()), eq(Process.myUid())); } -} \ No newline at end of file +}