在Android和IOS上更改推送通知状态栏的图标

时间:2015-04-27 13:48:02

标签: android ios cordova ionic-framework cordova-plugins

我的应用程序图标为蓝色/红色,当我收到推送通知时,状态栏上的图标是相同的应用程序图标(蓝色/红色)。我希望状态栏的图标是透明的白色版本。

我的离子项目正在使用this cordova plugin来接收推送通知。该插件的官方文档没有关于如何配置状态栏通知的图标。

3 个答案:

答案 0 :(得分:11)

看起来你想要的东西是不可能的。

在iOS上

根据文档,通知图标is automatically set到您应用的小图标(Icon-Small.png):

  

在横幅广告中,iOS会显示您的通知消息和应用图标的小版本。

除非您更改应用程序图标的小版本,否则在iOS上根本无法实现。

在Android上

使用Android API,这对于Notification.Builder#setSmallIcon(int)来说很简单,但是您正在使用hard-codes that icon到应用程序图标的库。

您需要修改库以接受其他图标。可能没有实现这一点,因此行为在所有平台上都是一致的。

<强>更新

完全可以使用this plugin

答案 1 :(得分:4)

    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)

答案 2 :(得分:0)

您需要在drawables目录中创建一个名为ic_stat_onesignal_default的图标,该图标将显示而不是OneSignal的默认响铃图标。