diff options
Diffstat (limited to 'src/com/android/packageinstaller/PackageUtil.java')
-rw-r--r-- | src/com/android/packageinstaller/PackageUtil.java | 22 |
1 files changed, 16 insertions, 6 deletions
diff --git a/src/com/android/packageinstaller/PackageUtil.java b/src/com/android/packageinstaller/PackageUtil.java index 362c9636..1e80204c 100644 --- a/src/com/android/packageinstaller/PackageUtil.java +++ b/src/com/android/packageinstaller/PackageUtil.java @@ -123,17 +123,27 @@ public class PackageUtil { CharSequence label = null; // Try to load the label from the package's resources. If an app has not explicitly // specified any label, just use the package name. - try { - label = res.getText(appInfo.labelRes); - } catch (Resources.NotFoundException e) { + if (appInfo.labelRes != 0) { + try { + label = res.getText(appInfo.labelRes); + } catch (Resources.NotFoundException e) { + } + } + if ((label == null) && (appInfo.nonLocalizedLabel != null)) { + label = appInfo.nonLocalizedLabel; + } else { label = appInfo.packageName; } Drawable icon = null; // Try to load the icon from the package's resources. If an app has not explicitly // specified any resource, just use the default icon for now. - try { - icon = res.getDrawable(appInfo.icon); - } catch (Resources.NotFoundException e) { + if (appInfo.icon != 0) { + try { + icon = res.getDrawable(appInfo.icon); + } catch (Resources.NotFoundException e) { + } + } + if (icon == null) { icon = pContext.getPackageManager().getDefaultActivityIcon(); } ((ImageView)appSnippet.findViewById(R.id.app_icon)).setImageDrawable(icon); |