1. 程式人生 > >mui js 個推 關於推送訊息監聽

mui js 個推 關於推送訊息監聽

之前關於個推和語言播報功能做了一個類似外賣的app, 最近又接觸到推送碰到一些坑,特地在部落格內做一些記錄。

首先要了解 推送監聽只有2個,一個是 click 一個是 receive  如果按照官方的意思是 click:點選推送訊息時候觸發, receive 接收推送訊息時候觸發,  但是實際應用中大家會發現 並不是這麼簡單,  個推傳輸訊息分為2種  普通訊息和透傳訊息,

能觸發click 是這樣的情況 透傳並符合透傳格式的訊息 ,觸發receive  的是透傳 但是不符合透傳格式的訊息,

下圖是php傳輸透傳的兩種格式  type = 2是不符合格式的, type = 3是符合格式的


下面是app js 內寫的 click 監聽 click監聽應用在後臺執行還是正在使用都可以觸發


下面是寫的receive監聽 receive只會正在使用時候觸發


值得注意的點,click點選進入後用mui的openwindow跳轉有可能不起作用,這裡可以用原生plus方法執行跳轉


因為plus.webview.open開啟是屬於新建頁面 所以頁面儘量是單獨頁面,不要是選項卡 (選單)的webview子頁面

如果不想每次開啟都載入可以用下面的方法


第一行是隱藏當前頁,第二行是顯示id為xxx.html 的頁面 後面兩個引數分別是顯示的方法 和速度

如果你的訊息中心(接收推送訊息的列表頁)是選擇卡選單生成的子頁面,可以用以下的笨方法


從上到下大致的方法就是  觸發自定義方法 ,這個方法封裝在main(你的選項卡選單)中,用來切換底部高亮的選單,

中間部分是隱藏當前頁顯示訊息中心,

下面的 allhtml是所有頁面的(不包括選項卡選單和他的子頁面)id,迴圈,判斷如果根據id獲取這個頁面返回不是null就執行關閉功能(close)。

未完待續.....