我正在使用ionic来构建一个Android应用程序。我正在使用
$cordovaLocalNotification
用于本地通知。通知有效但显示默认铃声图标。如何自定义通知图标?
答案 0 :(得分:3)
$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”。这是必要的,因为您需要将新资产复制到设备。
我只测试了Android设备,如果您可以使用iOS进行测试,请在此处发送评论。
答案 1 :(得分:0)
最新的ionic-cli 3
,
将icon.png
复制到以下文件夹中。
platforms/android/res/drawable/icon.png
请注意,这只是在Android中。
完成后(确保图像是透明图标),
下一步是在notification.init函数中初始化此图标。
现在,如果我们使用push plugin
执行以下操作;
const pushObj: PushObject = this.push.init({
android: {
senderID: "your_id",
icon: "icon",
forceShow: "true"
},
ios: {
alert: "true",
badge: "true",
sound: "true"
}
});
正如您所看到的那样,图标的仅名称不是扩展名。
完成此操作后,还要在服务器端代码中包含相同的键值对,这会将通知推送到您的设备中。
一切都会运作良好。