From a42a93bbfede22876cb8c59a4feb0ed9af1f5c9e Mon Sep 17 00:00:00 2001 From: Jason Chiu Date: Tue, 18 Dec 2018 18:27:50 +0800 Subject: [PATCH] Fix some pages crash after importing AndroidX from build 5175906 - Settings crash while entering Storage, Privacy, and Accounts page, because PreferenceGroup changed the API use from String#equals to String#contentEquals which doesn't support null keys. - add a null check before calling findPreference Test: robotest Change-Id: I121cd9e4249fbdafbc67be65a09d770603e01044 Fixes: 121116425 --- src/com/android/settings/dashboard/DashboardFragment.java | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/com/android/settings/dashboard/DashboardFragment.java b/src/com/android/settings/dashboard/DashboardFragment.java index 56e9ee53cf6..19161109c82 100644 --- a/src/com/android/settings/dashboard/DashboardFragment.java +++ b/src/com/android/settings/dashboard/DashboardFragment.java @@ -295,7 +295,13 @@ public abstract class DashboardFragment extends SettingsPreferenceFragment if (!controller.isAvailable()) { continue; } + final String key = controller.getPreferenceKey(); + if (TextUtils.isEmpty(key)) { + Log.d(TAG, String.format("Preference key is %s in Controller %s", + key, controller.getClass().getSimpleName())); + continue; + } final Preference preference = screen.findPreference(key); if (preference == null) {