java後端極光推送請參考另外一篇文章
java 極光推送對接流程
場景
背景建立訂單,前台手機app得到消息推送
原理
背景伺服器調用極光接口->極光伺服器->使用者app。
參考位址
極光推送安裝sdkapi
uniappJYJPush極光推送插件
自定義基座制作方法、常見問題等
準備工作
極光官網注冊并建立應用獲得Appkey,這裡太簡單了不細說。提一點可能會有問題的就是填寫的app包名在這裡擷取
開始對接
1下載下傳插件
uniapp插件下載下傳位址
選擇自己要試用的項目
2 配置插件
選擇插件
hbuilder中-app 原生插件配置 ——選擇雲端插件——選擇下載下傳的極光插件
配置參數
App原生插件配置——雲端插件——android_appkey
App原生插件配置——雲端插件——android_channel
android_appkey
填寫極光你建立的應用的Appkey
android_channel
管道名稱隻是測試,填個android就行,自己有需求再自行替換。
3 自定義底座
複制一段話
解釋一下:平時我們測試,連結手機直接運作,他會在手機上安裝一個APP,這個時候可以直接打開調試,這個被稱為标準基座;标準基座包含了uniapp基礎的一些架構内部的東西,但是如果我們要調試第三方的插件SDK,就需要自定義基座;
簡單來說,自定義基座就是标準基座 + 第三方的插件SDK組成,執照方法如下:(截圖用的是Mac電腦示範,Windows也類似哈)
作者:JiYis
連結:https://www.jianshu.com/p/fb2ac886901b
來源:簡書
選擇制作自定義基座
確定下面點選了“打自定義調試基座”,然後打包即可
運作——運作到手機——運作基座選擇——選擇打的自定義基座。然後和普通調試一樣,再運作到手機即可。
3 開始敲代碼 很簡單 1初始化 2監聽 ,初始化必須執行!!!
初始化必須執行!!!
初始化必須執行!!!
初始化必須執行!!!
别名(alias)不設定也可以,後面測試目标選擇廣播就行。但是初始化必須執行!!!
1 初始化極光推出和設定别名(alias)初始化為必須的步驟。隻用初始化一次,建議在app.vue的onLaunch中執行
initJyJPush() {
jyJPush.android_init(res => {
//初始化成功成功之後再設定别名
//官網的話:init後直接set操作有極大可能導緻失敗,可能會在回調裡拿到6022,6002等,測試的時候可以做個7、8秒的延時,正式業務裡一般配合使用者注冊使用,延時基本上夠用
//實際上:我設定成10s才管用
setTimeout(()=>{
console.log('setAlias');
this.setAlias()
},1000*10)//20秒後再設定别名
console.log('init push res', res);
uni.showToast({
icon: 'none',
title: JSON.stringify(res)
})
})
},
//設定别名
setAlias(){
jyJPush.setJYJPushAlias(
{userAlias: 'testAlias22'},
result => {
console.log('setJYJPushAlias',JSON.stringify(result));
uni.showToast({
icon: 'none',
title: JSON.stringify(result)
})
});
},
初始化成功
傳回的是 {“errorCode”:“0”,“msg”:“調用完成”}
設定别名成功
傳回的是{“seq”:0,“iResCode”:0,“errorCode”:0,“alias”:“testAlias22”}
錯誤傳回
可能是6002,代表你重複調用,或者調用過快。雖然我按照官網說的六七秒延時,但是還是不行,直到設定成十秒才能成功。你可以設定時間長點
2 監聽消息推送事件 監聽推送點選事件
//監聽消息推送事件
watchPush() {
jyJPush.addJYJPushReceiveNotificationListener(result => {
// 監聽成功後,若收到推送,會在result傳回對應的資料;資料格式保持極光傳回的安卓/iOS資料一緻
console.log(' watchPush result', result);
uni.showToast({
icon: 'none',
title: JSON.stringify(result)
})
});
},
//監聽推送點選事件
watchPushClick() {
jyJPush.addJYJPushReceiveOpenNotificationListener(result => {
// 監聽成功後,若點選推送消息,會觸發result;資料格式保持極光傳回的安卓/iOS資料一緻
console.log(' ClickPush result', result);
uni.showToast({
icon: 'none',
title: JSON.stringify(result)
})
});
}
3測試
去官網 建立推送 ,
平台
選擇安卓,
标題
内容随意,
目标
選擇裝置别名,内容填寫上面代碼設定别名裡面設定的内容,比如上面我設定的是testAlias22,
注意
- 免費版的通過極光背景
推送的每天隻能十次廣播
- 免費版的通過極光後單個
推送也隻能十次,換個别名就好了别名
點選發送預覽 能看到這裡預估人數是1 如果不是1那就代表上面代碼沒成功
然後手機就能收到通知了
如果發送成功但是手機沒顯示,手機設定下通知權限即可
推送記錄也你能看到
其他注意
一個别名(alias)最多綁定十個裝置
一次推送的tag最多隻能二十個