天天看點

uniapp 超詳細的極光推送對接流程java後端極光推送請參考另外一篇文章場景原理參考位址準備工作開始對接其他注意

java後端極光推送請參考另外一篇文章

java 極光推送對接流程

場景

背景建立訂單,前台手機app得到消息推送

原理

背景伺服器調用極光接口->極光伺服器->使用者app。

參考位址

極光推送安裝sdkapi

uniappJYJPush極光推送插件

自定義基座制作方法、常見問題等

準備工作

極光官網注冊并建立應用獲得Appkey,這裡太簡單了不細說。提一點可能會有問題的就是填寫的app包名在這裡擷取

uniapp 超詳細的極光推送對接流程java後端極光推送請參考另外一篇文章場景原理參考位址準備工作開始對接其他注意
uniapp 超詳細的極光推送對接流程java後端極光推送請參考另外一篇文章場景原理參考位址準備工作開始對接其他注意

開始對接

1下載下傳插件

uniapp插件下載下傳位址

uniapp 超詳細的極光推送對接流程java後端極光推送請參考另外一篇文章場景原理參考位址準備工作開始對接其他注意

選擇自己要試用的項目

uniapp 超詳細的極光推送對接流程java後端極光推送請參考另外一篇文章場景原理參考位址準備工作開始對接其他注意

2 配置插件

選擇插件

hbuilder中-app 原生插件配置 ——選擇雲端插件——選擇下載下傳的極光插件

uniapp 超詳細的極光推送對接流程java後端極光推送請參考另外一篇文章場景原理參考位址準備工作開始對接其他注意

配置參數

App原生插件配置——雲端插件——android_appkey

App原生插件配置——雲端插件——android_channel

android_appkey

填寫極光你建立的應用的Appkey

android_channel

管道名稱隻是測試,填個android就行,自己有需求再自行替換。

uniapp 超詳細的極光推送對接流程java後端極光推送請參考另外一篇文章場景原理參考位址準備工作開始對接其他注意

3 自定義底座

複制一段話

解釋一下:平時我們測試,連結手機直接運作,他會在手機上安裝一個APP,這個時候可以直接打開調試,這個被稱為标準基座;标準基座包含了uniapp基礎的一些架構内部的東西,但是如果我們要調試第三方的插件SDK,就需要自定義基座;

簡單來說,自定義基座就是标準基座 + 第三方的插件SDK組成,執照方法如下:(截圖用的是Mac電腦示範,Windows也類似哈)

作者:JiYis

連結:https://www.jianshu.com/p/fb2ac886901b

來源:簡書

選擇制作自定義基座

uniapp 超詳細的極光推送對接流程java後端極光推送請參考另外一篇文章場景原理參考位址準備工作開始對接其他注意

確定下面點選了“打自定義調試基座”,然後打包即可

uniapp 超詳細的極光推送對接流程java後端極光推送請參考另外一篇文章場景原理參考位址準備工作開始對接其他注意

運作——運作到手機——運作基座選擇——選擇打的自定義基座。然後和普通調試一樣,再運作到手機即可。

uniapp 超詳細的極光推送對接流程java後端極光推送請參考另外一篇文章場景原理參考位址準備工作開始對接其他注意

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,代表你重複調用,或者調用過快。雖然我按照官網說的六七秒延時,但是還是不行,直到設定成十秒才能成功。你可以設定時間長點

uniapp 超詳細的極光推送對接流程java後端極光推送請參考另外一篇文章場景原理參考位址準備工作開始對接其他注意

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,

注意

  • 免費版的通過極光背景

    廣播

    推送的每天隻能十次
  • 免費版的通過極光後單個

    别名

    推送也隻能十次,換個别名就好了
uniapp 超詳細的極光推送對接流程java後端極光推送請參考另外一篇文章場景原理參考位址準備工作開始對接其他注意
uniapp 超詳細的極光推送對接流程java後端極光推送請參考另外一篇文章場景原理參考位址準備工作開始對接其他注意

點選發送預覽 能看到這裡預估人數是1 如果不是1那就代表上面代碼沒成功

uniapp 超詳細的極光推送對接流程java後端極光推送請參考另外一篇文章場景原理參考位址準備工作開始對接其他注意

然後手機就能收到通知了

如果發送成功但是手機沒顯示,手機設定下通知權限即可

uniapp 超詳細的極光推送對接流程java後端極光推送請參考另外一篇文章場景原理參考位址準備工作開始對接其他注意

推送記錄也你能看到

uniapp 超詳細的極光推送對接流程java後端極光推送請參考另外一篇文章場景原理參考位址準備工作開始對接其他注意

其他注意

一個别名(alias)最多綁定十個裝置

uniapp 超詳細的極光推送對接流程java後端極光推送請參考另外一篇文章場景原理參考位址準備工作開始對接其他注意

一次推送的tag最多隻能二十個

uniapp 超詳細的極光推送對接流程java後端極光推送請參考另外一篇文章場景原理參考位址準備工作開始對接其他注意