From e06d787e2a666cc98a68e48b37a5dce4039adc3c Mon Sep 17 00:00:00 2001 From: Jakob Schneider Date: Fri, 15 Dec 2023 13:23:10 +0000 Subject: [PATCH] Add temporary system property checks in addition in addition to flag checks. This was agreed on to enable dogfood testing on P9 without enabling the full feature in QPR3. https://docs.google.com/document/d/1ZItkXfyKO2e235-EdisHASE6Dcl2hqATnieo6aJrsbY/edit?tab=t.0#bookmark=id.64wdrt989i3r Test: manual Bug: 315461548 Change-Id: I2ef71fd40d4afb83b9b73a977856e2912a5c87be --- src/com/android/settings/spa/app/appinfo/AppButtons.kt | 2 +- src/com/android/settings/spa/app/appinfo/AppInfoSettings.kt | 5 ++++- .../android/settings/spa/app/appinfo/PackageInfoPresenter.kt | 2 +- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/src/com/android/settings/spa/app/appinfo/AppButtons.kt b/src/com/android/settings/spa/app/appinfo/AppButtons.kt index 403263cd559..c0fa313c365 100644 --- a/src/com/android/settings/spa/app/appinfo/AppButtons.kt +++ b/src/com/android/settings/spa/app/appinfo/AppButtons.kt @@ -63,7 +63,7 @@ private class AppButtonsPresenter( @Composable private fun getActionButtons(app: ApplicationInfo): List = listOfNotNull( - if (featureFlags.archiving()) { + if (isArchivingEnabled(featureFlags)) { if (app.isArchived) { appRestoreButton.getActionButton(app) } else { diff --git a/src/com/android/settings/spa/app/appinfo/AppInfoSettings.kt b/src/com/android/settings/spa/app/appinfo/AppInfoSettings.kt index 85e59de9617..92918927f22 100644 --- a/src/com/android/settings/spa/app/appinfo/AppInfoSettings.kt +++ b/src/com/android/settings/spa/app/appinfo/AppInfoSettings.kt @@ -125,7 +125,7 @@ private fun AppInfoSettings(packageInfoPresenter: PackageInfoPresenter) { title = stringResource(R.string.application_info_label), actions = { packageInfoState.value?.applicationInfo?.let { app -> - if (featureFlags.archiving()) TopBarAppLaunchButton(packageInfoPresenter, app) + if (isArchivingEnabled(featureFlags)) TopBarAppLaunchButton(packageInfoPresenter, app) AppInfoSettingsMoreOptions(packageInfoPresenter, app) } } @@ -174,3 +174,6 @@ private fun AppInfoSettings(packageInfoPresenter: PackageInfoPresenter) { appInfoProvider.FooterAppVersion() } } + +fun isArchivingEnabled(featureFlags: FeatureFlags) = + featureFlags.archiving() || "true" == System.getProperty("pm.archiving.enabled") diff --git a/src/com/android/settings/spa/app/appinfo/PackageInfoPresenter.kt b/src/com/android/settings/spa/app/appinfo/PackageInfoPresenter.kt index 8c802d1d0ea..230ccb9883b 100644 --- a/src/com/android/settings/spa/app/appinfo/PackageInfoPresenter.kt +++ b/src/com/android/settings/spa/app/appinfo/PackageInfoPresenter.kt @@ -166,7 +166,7 @@ class PackageInfoPresenter( flags = PackageManager.MATCH_ANY_USER.toLong() or PackageManager.MATCH_DISABLED_COMPONENTS.toLong() or PackageManager.GET_PERMISSIONS.toLong() or - if (featureFlags.archiving()) PackageManager.MATCH_ARCHIVED_PACKAGES else 0, + if (isArchivingEnabled(featureFlags)) PackageManager.MATCH_ARCHIVED_PACKAGES else 0, userId = userId, ) }