[英]how to change icon on Android notification tray using flutter local notification?
[英]How to change android local notification icon in ionic?
我正在使用ionic來構建一個Android應用程序。 我正在使用$cordovaLocalNotification
進行本地通知。 通知有效但顯示默認鈴聲圖標。 如何自定義通知圖標?
$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測試,請在這里發送評論。
根據論壇上的這篇文章 ,您只需設置通知的圖標和smallIcon屬性即可。 你必須把文件放到/ platforms / android / res / drawable /文件夾中。 (還要注意圖標必須以'res:// somename'開頭)
注意:您應該替換ngCordova的通知處理功能,因為它們有問題。
在最新的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"
}
});
如您所見, 僅添加了圖標的名稱而不是擴展名。
完成此操作后,還要在服務器端代碼中包含相同的鍵值對,這會將通知推送到您的設備中。
一切都會好起來的。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.