Merge "Fix spurious crashes in StatusBarIconView" into nyc-dev
am: 7fe83ab54e
* commit '7fe83ab54ebe52f9226ea3dbd5cfe9050996f7a3':
Fix spurious crashes in StatusBarIconView
Change-Id: I46404e3903f17a5e2602502b5ac6554a255e30a8
This commit is contained in:
@@ -18,6 +18,7 @@ package com.android.systemui.statusbar;
|
|||||||
|
|
||||||
import android.app.Notification;
|
import android.app.Notification;
|
||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
|
import android.content.pm.ApplicationInfo;
|
||||||
import android.content.res.Configuration;
|
import android.content.res.Configuration;
|
||||||
import android.content.res.Resources;
|
import android.content.res.Resources;
|
||||||
import android.graphics.Canvas;
|
import android.graphics.Canvas;
|
||||||
@@ -25,6 +26,7 @@ import android.graphics.Paint;
|
|||||||
import android.graphics.Rect;
|
import android.graphics.Rect;
|
||||||
import android.graphics.drawable.Drawable;
|
import android.graphics.drawable.Drawable;
|
||||||
import android.graphics.drawable.Icon;
|
import android.graphics.drawable.Icon;
|
||||||
|
import android.os.Parcelable;
|
||||||
import android.os.UserHandle;
|
import android.os.UserHandle;
|
||||||
import android.text.TextUtils;
|
import android.text.TextUtils;
|
||||||
import android.util.AttributeSet;
|
import android.util.AttributeSet;
|
||||||
@@ -325,8 +327,20 @@ public class StatusBarIconView extends AnimatedImageView {
|
|||||||
|
|
||||||
|
|
||||||
public static String contentDescForNotification(Context c, Notification n) {
|
public static String contentDescForNotification(Context c, Notification n) {
|
||||||
Notification.Builder builder = Notification.Builder.recoverBuilder(c, n);
|
String appName = "";
|
||||||
String appName = builder.loadHeaderAppName();
|
try {
|
||||||
|
Notification.Builder builder = Notification.Builder.recoverBuilder(c, n);
|
||||||
|
appName = builder.loadHeaderAppName();
|
||||||
|
} catch (RuntimeException e) {
|
||||||
|
Log.e(TAG, "Unable to recover builder", e);
|
||||||
|
// Trying to get the app name from the app info instead.
|
||||||
|
Parcelable appInfo = n.extras.getParcelable(
|
||||||
|
Notification.EXTRA_BUILDER_APPLICATION_INFO);
|
||||||
|
if (appInfo instanceof ApplicationInfo) {
|
||||||
|
appName = String.valueOf(((ApplicationInfo) appInfo).loadLabel(
|
||||||
|
c.getPackageManager()));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
CharSequence title = n.extras.getCharSequence(Notification.EXTRA_TITLE);
|
CharSequence title = n.extras.getCharSequence(Notification.EXTRA_TITLE);
|
||||||
CharSequence ticker = n.tickerText;
|
CharSequence ticker = n.tickerText;
|
||||||
|
|||||||
Reference in New Issue
Block a user