如何在ionic中更改android本地通知图标?

如何在ionic中更改android本地通知图标?,android,cordova,ionic,cordova-plugins,localnotification,Android,Cordova,Ionic,Cordova Plugins,Localnotification,我正在使用ionic构建一个android应用程序。我正在使用 $cordovaLocalNotification用于本地通知。通知可以工作,但它会显示一个默认的钟形图标。如何自定义通知图标?根据论坛上的介绍,您只需设置通知的图标和小图标属性即可。您必须将文件放入/platforms/android/res/drawable/文件夹中。(还要注意,图标必须以'res://somename") 注:您应更换ngCordova的通知处理功能,因为它们存在故障 $scope.scheduleSingl

我正在使用ionic构建一个android应用程序。我正在使用
$cordovaLocalNotification
用于本地通知。通知可以工作,但它会显示一个默认的钟形图标。如何自定义通知图标?

根据论坛上的介绍,您只需设置通知的图标和小图标属性即可。您必须将文件放入/platforms/android/res/drawable/文件夹中。(还要注意,图标必须以'res://somename")

注:您应更换ngCordova的通知处理功能,因为它们存在故障

$scope.scheduleSingleNotification = function () {
    $cordovaLocalNotification.schedule({
      id: 1,
      title: 'GRM APP Builder',
      text: 'Quer café?!?',
      badge: 1,
      icon: 'res://coffee.png',
      data: {
        customProperty: 'custom value 1'
      }
    }).then(function (result) {
      console.log('Notification 1 triggered');
    });
  };
在花了几个小时讨论这个问题后,我看到上面的一条评论说,这是真的

如果要更改图标,需要在“[my ionic app folder]\platforms\android\res\drawable”中创建一个名为“drawable”的文件夹

但诀窍是:在此之后,您需要退出livereload模式,并再次执行CLI命令“ionic run android-l-c-s”。这是必要的,因为您需要将新资产复制到设备


我只使用安卓设备进行了测试,如果您可以使用iOS进行测试,请在此处发送评论。

在最新的
ionic cli 3

将您的
图标.png
复制到以下文件夹中

platforms/android/res/drawable/icon.png
请注意,这只是在android中

完成后(确保图像为透明图标)

下一步是在notification.init函数中初始化此图标

现在如果我们使用的是
push插件
执行以下操作

const pushObj: PushObject = this.push.init({
                        android: {
                            senderID: "your_id",
                            icon: "icon",
                            forceShow: "true"
                        },
                        ios: {
                            alert: "true",
                            badge: "true",
                            sound: "true"
                        }
                    });
正如您所见,只添加了图标的名称,而不是扩展名

完成后,在服务器端代码中也包含相同的键值对,这会将通知推送到设备中


所有这些都将正常工作。

就文档而言,icon仅在Android上受支持: