diff --git a/src/com/android/settings/security/applock/AppLockPackageListFragment.kt b/src/com/android/settings/security/applock/AppLockPackageListFragment.kt index 069eed51355..e413105c917 100644 --- a/src/com/android/settings/security/applock/AppLockPackageListFragment.kt +++ b/src/com/android/settings/security/applock/AppLockPackageListFragment.kt @@ -29,6 +29,7 @@ import androidx.preference.Preference import androidx.preference.forEach import com.android.internal.logging.nano.MetricsProto +import com.android.internal.util.evolution.Utils import com.android.settings.R import com.android.settings.core.SubSettingLauncher @@ -48,11 +49,13 @@ class AppLockPackageListFragment : DashboardFragment() { private lateinit var appLockManager: AppLockManager private lateinit var pm: PackageManager private lateinit var whiteListedPackages: Array + private lateinit var launchablePackages: List override fun onAttach(context: Context) { super.onAttach(context) appLockManager = context.getSystemService(AppLockManager::class.java) pm = context.packageManager + launchablePackages = Utils.launchablePackages(context) whiteListedPackages = resources.getStringArray( com.android.internal.R.array.config_appLockAllowedSystemApps) } @@ -65,7 +68,9 @@ class AppLockPackageListFragment : DashboardFragment() { pm.getInstalledPackages( PackageInfoFlags.of(PackageManager.MATCH_ALL.toLong()) ).filter { - !it.applicationInfo.isSystemApp() || whiteListedPackages.contains(it.packageName) + !it.applicationInfo.isSystemApp() || + launchablePackages.contains(it.packageName) || + whiteListedPackages.contains(it.packageName) }.sortedWith { first, second -> getLabel(first).compareTo(getLabel(second)) }