当使用Parse进行推送通知时,我们的应用程序始终显示该应用程序的启动器图标。
在最新的Android 5.1版本中,该图标显示为空白(白色正方形)。
我尝试在元数据中设置图标:
<meta-data android:name="com.parse.push.notification_icon" android:resource="@drawable/noti_icon"/>
基于问题here
但是似乎没有任何作用。
有任何想法吗?
最佳答案
您必须在Android Lollipop 5.0或更高版本下使用透明的白色图标。您可以扩展ParsePushBroadcastReceiver类并重写这两种方法,以使通知图标与这些Android API兼容。
@Override
protected int getSmallIconId(Context context, Intent intent) {
return R.drawable.your_notifiation_icon;
}
@Override
protected Bitmap getLargeIcon(Context context, Intent intent) {
return BitmapFactory.decodeResource(context.getResources(), R.drawable.your_notifiation_icon);
}
切记要自定义代码以支持Lollipop和以前的API。
if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.LOLLIPOP) {
return BitmapFactory.decodeResource(context.getResources(), R.drawable.your_notifiation_icon_lollipop);
}
else{
return BitmapFactory.decodeResource(context.getResources(), R.drawable.your_notifiation_icon);
}
关于android - Android 5.1推送通知图标为空白,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/29728902/