Avoid potential ActivityNotFoundException
Bug: 332202168
Flag: com.android.settings.flags.catalyst
Test: Manual
Change-Id: I74d7bbc9eb34e0f8d04cfb663b04393a3432e784
diff --git a/src/com/android/settings/dashboard/DashboardFragment.java b/src/com/android/settings/dashboard/DashboardFragment.java
index 6333f22..4d53772 100644
--- a/src/com/android/settings/dashboard/DashboardFragment.java
+++ b/src/com/android/settings/dashboard/DashboardFragment.java
@@ -249,6 +249,15 @@
@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<List<AbstractPreferenceController>> controllers =
mPreferenceControllers.values();
for (List<AbstractPreferenceController> controllerList : controllers) {