Urban Airship建议使用CustomPushNotificationBuilder
创建一个自定义通知,如果您要对状态栏通知进行任何修改,包括简单地更改图标。
不幸的是,为通知使用RemoteView
会带来许多与自定义制造商和/或特定于平台的外观相关的不必要的影响,包括文本颜色和对私有资源的引用(例如,在Honeycomb/ICS上的@*android:drawable/notify_panel_notification_icon_bg_tile
)。
必须有一种简单的方法来交换图标,而不使用RemoteView
。怎么做?
我发现,通过重写BasicPushNotificationBuilder
,我可以非常简单地设置图标:
BasicPushNotificationBuilder nb = new BasicPushNotificationBuilder() {
@Override
public Notification buildNotification(String alert,
Map<String, String> extras) {
Notification notification = super.buildNotification(alert,
extras);
// The icon displayed in the status bar
notification.icon = R.drawable.notification;
// The icon displayed within the notification content
notification.contentView.setImageViewResource(
android.R.id.icon, R.drawable.notification);
return notification;
}
};
// Set the custom notification builder
PushManager.shared().setNotificationBuilder(nb);
自定义的状态栏覆盖在系统状态栏上,能够在自定义的状态栏中显示文字信息,可以隐藏自定义的状态栏,显示系统状态栏。 作者@贺坤Smaile 说:之前逛街看到移动做推广,有一个定位应用挺好的,合理的利用了状态栏,做了一些消息提醒和隐藏动画,自己回家就做了一个这样的demo,效果很不错,一个多月之前写的,看到有人求,分享出来。 [Code4App.com]
行中有错误: 错误:
由于通知图标没有一个单独的图像,我有点不知道如何做到这一点。 谢谢
我知道如何发送一个通知到状态栏,但当它第一次启动时,它接管了整个状态栏,你看不到任何其他东西,除了你的图标。有没有什么方法可以显示你的图标,而不是它接管整个状态栏几秒钟?
在我的应用程序中我写了一个简单的通知函数,该方法只在状态栏上显示图标,我也想显示通知布局,但不是自动显示的,我已经下拉android状态栏查看, 看来这是Android6及以上版本的问题
我在应用程序中使用通知。目前,我面临的问题是显示图标的Android L。对于设备4.4及以下,一切都很好。我使用的图标大小:大-图标64 dp,图标状态栏-24 dp。Devices android L图标状态栏显示为缺少的白色正方形: 在通知上的大图标上出现了空图标: 我想通知我的android l看起来是这样的: