From afb993f6071ece21e96caa1ed56ac57c81d9e7c6 Mon Sep 17 00:00:00 2001 From: Andrei Stingaceanu Date: Thu, 21 Sep 2017 11:36:53 +0100 Subject: [PATCH] [Keyboard shortcuts] - fix NPE related to assist component Not all devices have an assist component, reflect that in the code. Bug: 65749750 Test: manual Change-Id: I2a014f45c9d15259c344cb34ef9ed3dd1f41a20e --- .../systemui/statusbar/KeyboardShortcuts.java | 35 ++++++++++--------- 1 file changed, 19 insertions(+), 16 deletions(-) diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/KeyboardShortcuts.java b/packages/SystemUI/src/com/android/systemui/statusbar/KeyboardShortcuts.java index d370a6331ea1e..2d16d2209c9e5 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/KeyboardShortcuts.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/KeyboardShortcuts.java @@ -433,24 +433,27 @@ public final class KeyboardShortcuts { // Assist. final AssistUtils assistUtils = new AssistUtils(mContext); final ComponentName assistComponent = assistUtils.getAssistComponentForUser(userId); - PackageInfo assistPackageInfo = null; - try { - assistPackageInfo = mPackageManager.getPackageInfo( - assistComponent.getPackageName(), 0, userId); - } catch (RemoteException e) { - Log.e(TAG, "PackageManagerService is dead"); - } + // Not all devices have an assist component. + if (assistComponent != null) { + PackageInfo assistPackageInfo = null; + try { + assistPackageInfo = mPackageManager.getPackageInfo( + assistComponent.getPackageName(), 0, userId); + } catch (RemoteException e) { + Log.e(TAG, "PackageManagerService is dead"); + } - if (assistPackageInfo != null) { - final Icon assistIcon = Icon.createWithResource( - assistPackageInfo.applicationInfo.packageName, - assistPackageInfo.applicationInfo.icon); + if (assistPackageInfo != null) { + final Icon assistIcon = Icon.createWithResource( + assistPackageInfo.applicationInfo.packageName, + assistPackageInfo.applicationInfo.icon); - keyboardShortcutInfoAppItems.add(new KeyboardShortcutInfo( - mContext.getString(R.string.keyboard_shortcut_group_applications_assist), - assistIcon, - KeyEvent.KEYCODE_UNKNOWN, - KeyEvent.META_META_ON)); + keyboardShortcutInfoAppItems.add(new KeyboardShortcutInfo( + mContext.getString(R.string.keyboard_shortcut_group_applications_assist), + assistIcon, + KeyEvent.KEYCODE_UNKNOWN, + KeyEvent.META_META_ON)); + } } // Browser.