具體實現步驟
unipush使用指南 https://ask.dcloud.net.cn/article/35622
通知消息的左上角圖標為默認的hbuild圖標,如何修改
1、讓ui做一下圖標,需要注意以下幾點:
1.必須是帶 Alpha 透明通道的 PNG 圖片。
2.背景必須是透明的。
3.圖形必須是白色。
4.周圍不宜留過多的 padding
5.需要18x18,24x24,36x36,48x48,72x72五個尺寸
6.需要以push_small.png命名
2、在項目的unpackage/res/下新建drawable-hdpi,drawable-ldpi,drawable-mdpi等五個文件夾,
每個文件夾下存放對應尺寸(從18x18到72x72排列)的push_small.png圖片。具體如下圖所示
3、在manifest.json的源碼視圖里找到sdkConfigs節點->push節點->unipush節點並寫入以下代碼
"push" : {
"unipush" : {
"icons" : {
"small" : {
// 左上角小圖標
"ldpi" : "unpackage/res/drawable-ldpi/push_small.png",
"mdpi" : "unpackage/res/drawable-mdpi/push_small.png",
"hdpi" : "unpackage/res/drawable-hdpi/push_small.png",
"xhdpi" : "unpackage/res/drawable-xhdpi/push_small.png",
"xxhdpi" : "unpackage/res/drawable-xxhdpi/push_small.png"
}
}
}
},
uniapp后台里推送的透傳消息模板及客戶端處理及注意事項
透傳消息之個推渠道與廠商渠道介紹
對於android來說:
App正在被使用時:走個推渠道
App后台運行時:走個推渠道
App進程被殺掉時:走廠商渠道
對於iOS來說:
App正在被使用時:走個推渠道
App后台運行時:走廠商渠道
App進程被殺掉時:走廠商渠道
ps:一般情況下,廠商渠道都是會以通知形式在手機通知欄送達的,個推渠道是否會在通知欄顯示則根據手機而定。
所以建議在App里處理推送消息時,通過個推渠道送達的,可以單獨給一個彈框展示(如下圖)。
透傳消息之個推渠道推送配置
透傳消息之android廠商渠道推送配置
Android廠商渠道通知類型intent模板
intent:#Intent;action=android.intent.action.oppopush;launchFlags=0x14000000;component=你的包名/io.dcloud.PandoraEntry;S.UP-OL-SU=true;S.title=你的標題(必填);S.content=你的內容(必填);S.payload=你的app頁面路由(必填);end
透傳消息之iOS廠商渠道推送配置
3、處理消息數據,在項目的App.vue頁面里添加以下代碼
onLaunch() {
// console.log('初始化完成了(只觸發一次)');
// #ifdef APP-PLUS
const _self = this;
const _handlePush = function(message) {
// console.log(message)
if(message.payload){
uni.navigateTo({
url: message.payload
});
}
};
const _handleRemind = function(message) {
if(message.content){
uni.showModal({
title: '溫馨提示',
content: message.content,
success: function (res) {
if (res.confirm) {
if(message.payload){
uni.navigateTo({
url: message.payload
});
}
} else if (res.cancel) {
}
}
});
}
};
plus.push.addEventListener('click', _handlePush); //用戶點擊推送消息事件:一般在App后台運行時(消息通過廠商方式以通知形式在通知欄送達),然后用戶點擊消息后觸發此事件
plus.push.addEventListener('receive', _handleRemind); //用戶接收到推送消息事件:一般在用戶正在使用App時(消息通過個推方式送達),用戶直接在App內接收到消息並觸發此事件
// #endif
},
iOS自定義基座測試消息推送注意事項