更改 Android 和 IOS 上推送通知状态栏的图标
Change the icon of the push notification status bar on Android and IOS
我的应用程序图标是 blue/red,当我收到推送通知时,状态栏上的图标是相同的应用程序图标 (blue/red)。我希望状态栏的图标是透明的白色版本
我的离子项目正在使用 this cordova plugin 接收推送通知。插件的官方文档没有关于如何配置状态栏通知的图标。
看起来你想要的东西用那个库是不可能的。
在 iOS
根据文档,通知图标 is automatically set 到您应用的小图标 (Icon-Small.png
):
In the banner, iOS displays your notification message and the small version of your app icon.
除非你改变小版本的应用程序图标,这在 iOS 上根本不可能。
在 Android
使用 Android API 这将很简单 Notification.Builder#setSmallIcon(int)
, but the library you’re using hard-codes that icon 到应用程序的图标。
您需要修改库以接受其他图标。这可能尚未实现,因此行为在所有平台上都是一致的。
更新
现在 this plugin 完全可以。
private void shownotification(String message, Context context) {
NotificationManager mNotificationManager = (NotificationManager) context
.getSystemService(context.NOTIFICATION_SERVICE);
NotificationCompat.Builder mNotifyBuilder = new NotificationCompat.Builder(
context).setContentTitle("Jaswinderwadali").setContentText(message)
.setDefaults(Notification.DEFAULT_ALL).setAutoCancel(true)
.setSmallIcon(R.drawable.Mypic);
Notification notification = mNotifyBuilder.build();
notification.flags |= Notification.FLAG_AUTO_CANCEL;
mNotificationManager.notify(0, notification);
}
用于android改变状态栏通知图标.setSmallIcon(R.drawable.Mypic)
您需要在您的绘图目录中创建一个名为 ic_stat_onesignal_default 的图标,该图标将代替 OneSignal 的默认铃铛图标显示。
我的应用程序图标是 blue/red,当我收到推送通知时,状态栏上的图标是相同的应用程序图标 (blue/red)。我希望状态栏的图标是透明的白色版本
我的离子项目正在使用 this cordova plugin 接收推送通知。插件的官方文档没有关于如何配置状态栏通知的图标。
看起来你想要的东西用那个库是不可能的。
在 iOS
根据文档,通知图标 is automatically set 到您应用的小图标 (Icon-Small.png
):
In the banner, iOS displays your notification message and the small version of your app icon.
除非你改变小版本的应用程序图标,这在 iOS 上根本不可能。
在 Android
使用 Android API 这将很简单 Notification.Builder#setSmallIcon(int)
, but the library you’re using hard-codes that icon 到应用程序的图标。
您需要修改库以接受其他图标。这可能尚未实现,因此行为在所有平台上都是一致的。
更新
现在 this plugin 完全可以。
private void shownotification(String message, Context context) {
NotificationManager mNotificationManager = (NotificationManager) context
.getSystemService(context.NOTIFICATION_SERVICE);
NotificationCompat.Builder mNotifyBuilder = new NotificationCompat.Builder(
context).setContentTitle("Jaswinderwadali").setContentText(message)
.setDefaults(Notification.DEFAULT_ALL).setAutoCancel(true)
.setSmallIcon(R.drawable.Mypic);
Notification notification = mNotifyBuilder.build();
notification.flags |= Notification.FLAG_AUTO_CANCEL;
mNotificationManager.notify(0, notification);
}
用于android改变状态栏通知图标.setSmallIcon(R.drawable.Mypic)
您需要在您的绘图目录中创建一个名为 ic_stat_onesignal_default 的图标,该图标将代替 OneSignal 的默认铃铛图标显示。