From 1c486036efcd95945b9bf53d37fbd5a463be9d6f Mon Sep 17 00:00:00 2001 From: Jacky Wang Date: Wed, 25 Sep 2024 11:58:10 +0800 Subject: [PATCH] Avoid potential ActivityNotFoundException Bug: 332202168 Flag: com.android.settings.flags.catalyst Test: Manual Change-Id: I74d7bbc9eb34e0f8d04cfb663b04393a3432e784 --- .../android/settings/dashboard/DashboardFragment.java | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/com/android/settings/dashboard/DashboardFragment.java b/src/com/android/settings/dashboard/DashboardFragment.java index 6333f22b95b..4d53772cf66 100644 --- a/src/com/android/settings/dashboard/DashboardFragment.java +++ b/src/com/android/settings/dashboard/DashboardFragment.java @@ -249,6 +249,15 @@ public abstract class DashboardFragment extends SettingsPreferenceFragment @Override public boolean onPreferenceTreeClick(Preference preference) { + if (isCatalystEnabled()) { + Intent intent = preference.getIntent(); + if (intent != null && preference.getContext().getPackageManager().queryIntentActivities( + intent, 0).isEmpty()) { + Log.w(TAG, "No activity to start for " + intent); + return true; + } + } + final Collection> controllers = mPreferenceControllers.values(); for (List controllerList : controllers) {