summaryrefslogtreecommitdiffstats
path: root/src/com/android/launcher3/compat
diff options
context:
space:
mode:
authorSunny Goyal <sunnygoyal@google.com>2017-04-17 10:03:01 -0700
committerSunny Goyal <sunnygoyal@google.com>2017-04-17 10:03:29 -0700
commit135c1be5a319b826cbe954a30132a08e3973ffb8 (patch)
treedf1508f40f460dce5b9a734f904de06758d4c4c2 /src/com/android/launcher3/compat
parentcd4cc97f6f761b8cc377821a2214432a376dd4f8 (diff)
downloadandroid_packages_apps_Trebuchet-135c1be5a319b826cbe954a30132a08e3973ffb8.tar.gz
android_packages_apps_Trebuchet-135c1be5a319b826cbe954a30132a08e3973ffb8.tar.bz2
android_packages_apps_Trebuchet-135c1be5a319b826cbe954a30132a08e3973ffb8.zip
Updating getApplicationInfo to handle NameNotFoundException
Bug: 37324177 Change-Id: If4caf7c61667fc874e7dbaff9f8c48b2c2cc107f
Diffstat (limited to 'src/com/android/launcher3/compat')
-rw-r--r--src/com/android/launcher3/compat/LauncherAppsCompatVO.java18
1 files changed, 15 insertions, 3 deletions
diff --git a/src/com/android/launcher3/compat/LauncherAppsCompatVO.java b/src/com/android/launcher3/compat/LauncherAppsCompatVO.java
index 95f2e74f4..d145539c7 100644
--- a/src/com/android/launcher3/compat/LauncherAppsCompatVO.java
+++ b/src/com/android/launcher3/compat/LauncherAppsCompatVO.java
@@ -16,10 +16,12 @@
package com.android.launcher3.compat;
+import android.annotation.TargetApi;
import android.content.Context;
import android.content.pm.ApplicationInfo;
import android.content.pm.LauncherActivityInfo;
import android.content.pm.LauncherApps;
+import android.content.pm.PackageManager;
import android.os.Build;
import android.os.Process;
import android.os.UserHandle;
@@ -33,6 +35,7 @@ import java.lang.reflect.Method;
import java.util.ArrayList;
import java.util.List;
+@TargetApi(26)
public class LauncherAppsCompatVO extends LauncherAppsCompatVL {
LauncherAppsCompatVO(Context context) {
@@ -41,9 +44,18 @@ public class LauncherAppsCompatVO extends LauncherAppsCompatVL {
@Override
public ApplicationInfo getApplicationInfo(String packageName, int flags, UserHandle user) {
- ApplicationInfo info = mLauncherApps.getApplicationInfo(packageName, flags, user);
- return info == null || (info.flags & ApplicationInfo.FLAG_INSTALLED) == 0 || !info.enabled
- ? null : info;
+ try {
+ // TODO: Temporary workaround until the API signature is updated
+ if (false) {
+ throw new PackageManager.NameNotFoundException();
+ }
+
+ ApplicationInfo info = mLauncherApps.getApplicationInfo(packageName, flags, user);
+ return (info.flags & ApplicationInfo.FLAG_INSTALLED) == 0 || !info.enabled
+ ? null : info;
+ } catch (PackageManager.NameNotFoundException e) {
+ return null;
+ }
}
@Override