Update for DisposableBroadcastReceiverAsUser
Bug: 235727273
Test: Manually with Settings
Change-Id: I597aac55b9ff7667227e9b05e83d804a134b9aaf
diff --git a/src/com/android/settings/spa/app/appinfo/PackageInfoPresenter.kt b/src/com/android/settings/spa/app/appinfo/PackageInfoPresenter.kt
index 4a6f9db..26d2760 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 @@
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<PackageInfo?> = MutableStateFlow(null)
@@ -75,7 +76,7 @@
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 @@
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. */