AndroidL 通知栏图标变白
Notification bar icon turns white in Android L
我正在为自定义通知布局使用远程视图。一切正常。我面临的唯一问题是通知在通知状态栏中显示为白色圆圈。我希望我的应用程序图标显示在通知状态栏中(它在 kitkat 和较低版本中的显示方式)。有什么办法可以改变吗?
private void showNotification() {
Intent intent = new Intent(this, HomeActivity.class);
intent.putExtra(LIVE_RADIO_PUSH, true);
PendingIntent pendingIntent = PendingIntent.getActivity(this, 1, intent, 0);
mBuilder = new NotificationCompat.Builder(this);
mBuilder.setCategory(Notification.CATEGORY_SERVICE);
mBuilder.setContentTitle(mTitle);
mBuilder.setContentText("Live Radio");
mBuilder.setSmallIcon(R.drawable.logo);
mBuilder.setWhen(System.currentTimeMillis());
mBuilder.setVisibility(Notification.VISIBILITY_PUBLIC);
mBuilder.setContentIntent(pendingIntent);
mBuilder.setColor(getResources().getColor(R.color.theme_primary));
mNotificationView = new RemoteViews(getPackageName(), R.layout.notification_layout);
mNotificationView.setTextViewText(R.id.content_title, mTitle);
mNotificationView.setTextViewText(R.id.content_text, "Live Radio");
SimpleDateFormat dateFormat = new SimpleDateFormat("hh:mm");
String time = dateFormat.format(new Date(System.currentTimeMillis()));
mNotificationView.setTextViewText(R.id.current_time, time);
mNotificationView.setImageViewResource(R.id.play_pause, R.drawable.pause_radio);
mNotificationView.setImageViewResource(R.id.close_btn, R.drawable.notifictn_close_btn);
setListeners(mNotificationView);
mBuilder.setContent(mNotificationView);
Log.d(TAG, "App is freezed2");
if (null != mNotificationMngr)
mNotificationMngr.notify(RADIO_NOTIFICATION_ID, mBuilder.build());
}
最近我们完成了一个 notification.Its 在 lollipop 中运行良好的应用程序 also.Once 检查下面的代码可能会对您有所帮助。
mNotification = new Notification.Builder(this).setContentTitle("M3 Media Player").setContentIntent(mPendingIntentHome)
.setSmallIcon(R.drawable.app_icon).setPriority(Notification.PRIORITY_MAX).setContent(mNotificationContentView)
.setStyle(new Notification.BigPictureStyle()).build();
我也遇到过这个问题,正如你所说,如果你的ANDROID_BUILD_TARGET_SDK_VERSION = 21,它会把这个通知变成白色。
通知图标设计准则为link。
http://developer.android.com/design/style/iconography.html
如果您的 compileSDK 版本高于 20,那么通知图标应该是 white-on-transparent 背景图片。否则图像将呈现为白色图像。
请仔细阅读以下内容link,了解创建图标的指南
https://www.google.com/design/spec/patterns/notifications.html
还有通知图标生成器。
我正在为自定义通知布局使用远程视图。一切正常。我面临的唯一问题是通知在通知状态栏中显示为白色圆圈。我希望我的应用程序图标显示在通知状态栏中(它在 kitkat 和较低版本中的显示方式)。有什么办法可以改变吗?
private void showNotification() {
Intent intent = new Intent(this, HomeActivity.class);
intent.putExtra(LIVE_RADIO_PUSH, true);
PendingIntent pendingIntent = PendingIntent.getActivity(this, 1, intent, 0);
mBuilder = new NotificationCompat.Builder(this);
mBuilder.setCategory(Notification.CATEGORY_SERVICE);
mBuilder.setContentTitle(mTitle);
mBuilder.setContentText("Live Radio");
mBuilder.setSmallIcon(R.drawable.logo);
mBuilder.setWhen(System.currentTimeMillis());
mBuilder.setVisibility(Notification.VISIBILITY_PUBLIC);
mBuilder.setContentIntent(pendingIntent);
mBuilder.setColor(getResources().getColor(R.color.theme_primary));
mNotificationView = new RemoteViews(getPackageName(), R.layout.notification_layout);
mNotificationView.setTextViewText(R.id.content_title, mTitle);
mNotificationView.setTextViewText(R.id.content_text, "Live Radio");
SimpleDateFormat dateFormat = new SimpleDateFormat("hh:mm");
String time = dateFormat.format(new Date(System.currentTimeMillis()));
mNotificationView.setTextViewText(R.id.current_time, time);
mNotificationView.setImageViewResource(R.id.play_pause, R.drawable.pause_radio);
mNotificationView.setImageViewResource(R.id.close_btn, R.drawable.notifictn_close_btn);
setListeners(mNotificationView);
mBuilder.setContent(mNotificationView);
Log.d(TAG, "App is freezed2");
if (null != mNotificationMngr)
mNotificationMngr.notify(RADIO_NOTIFICATION_ID, mBuilder.build());
}
最近我们完成了一个 notification.Its 在 lollipop 中运行良好的应用程序 also.Once 检查下面的代码可能会对您有所帮助。
mNotification = new Notification.Builder(this).setContentTitle("M3 Media Player").setContentIntent(mPendingIntentHome)
.setSmallIcon(R.drawable.app_icon).setPriority(Notification.PRIORITY_MAX).setContent(mNotificationContentView)
.setStyle(new Notification.BigPictureStyle()).build();
我也遇到过这个问题,正如你所说,如果你的ANDROID_BUILD_TARGET_SDK_VERSION = 21,它会把这个通知变成白色。
通知图标设计准则为link。 http://developer.android.com/design/style/iconography.html
如果您的 compileSDK 版本高于 20,那么通知图标应该是 white-on-transparent 背景图片。否则图像将呈现为白色图像。
请仔细阅读以下内容link,了解创建图标的指南
https://www.google.com/design/spec/patterns/notifications.html
还有通知图标生成器。