From cfa01cd5b1995fd9967725da1d723ed8e73707d2 Mon Sep 17 00:00:00 2001 From: Chaohui Wang Date: Wed, 9 Nov 2022 11:09:48 +0800 Subject: [PATCH] Update for DisposableBroadcastReceiverAsUser Bug: 235727273 Test: Manually with Settings Change-Id: I597aac55b9ff7667227e9b05e83d804a134b9aaf --- .../settings/spa/app/appinfo/PackageInfoPresenter.kt | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/com/android/settings/spa/app/appinfo/PackageInfoPresenter.kt b/src/com/android/settings/spa/app/appinfo/PackageInfoPresenter.kt index 4a6f9dbc4a7..26d2760efaa 100644 --- a/src/com/android/settings/spa/app/appinfo/PackageInfoPresenter.kt +++ b/src/com/android/settings/spa/app/appinfo/PackageInfoPresenter.kt @@ -50,7 +50,8 @@ class PackageInfoPresenter( private val coroutineScope: CoroutineScope, ) { private val metricsFeatureProvider = FeatureFactory.getFactory(context).metricsFeatureProvider - val userContext by lazy { context.asUser(UserHandle.of(userId)) } + private val userHandle = UserHandle.of(userId) + val userContext by lazy { context.asUser(userHandle) } val userPackageManager: PackageManager by lazy { userContext.packageManager } private val _flow: MutableStateFlow = MutableStateFlow(null) @@ -75,7 +76,7 @@ class PackageInfoPresenter( addDataScheme("package") } val navController = LocalNavController.current - DisposableBroadcastReceiverAsUser(userId, intentFilter) { intent -> + DisposableBroadcastReceiverAsUser(intentFilter, userHandle) { intent -> if (packageName == intent.data?.schemeSpecificPart) { val packageInfo = flow.value if (packageInfo != null && packageInfo.applicationInfo.isSystemApp) { @@ -117,7 +118,7 @@ class PackageInfoPresenter( val intent = Intent(Intent.ACTION_UNINSTALL_PACKAGE, packageUri).apply { putExtra(Intent.EXTRA_UNINSTALL_ALL_USERS, forAllUsers) } - context.startActivityAsUser(intent, UserHandle.of(userId)) + context.startActivityAsUser(intent, userHandle) } /** Clears this instant app. */