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)。
未完待續.....