百度雲推送避免點擊通知後直接進入主Activity

百度雲推送,打開通知後,正常邏輯處理打開邏輯,每次點擊通知,打開的是程序的啓動頁,按返回鍵,要打開的activity卻出來了,剛開始以爲是activity的啓動模式的問題,試了幾個也不行。後來看到這篇文章:文章截圖
原文鏈接
和文章說的一樣要打開的Activity的onPause()方法確實執行了。問題找到了,接下來開始找解決辦法。
官網的Android客戶端常見問題彙總 鏈接

  1. 消息到達後怎麼控制跳轉到Activity?

有兩種方式實現:

客戶端控制,在接收消息的Receiver裏消息點擊的回調方法onNotificationClicked裏使用代碼控制跳轉,具體實現可以參考官網PushDemo;
服務端控制,使用自定義行爲控制跳轉,具體使用方法參考問題9。

在百度雲微信公衆號上的解釋會更直接些。原文鏈接
這裏寫圖片描述
按照上圖的要求,再次推送時這裏寫圖片描述
問題就解決了,關於 open_type確實是可以設置的:點擊通知後的行爲(1:打開Url; 2:自定義行爲;); open_type = 1,url != null:打開網頁; open_type = 2,pkg_content = null:直接打開應用; open_type = 2,pkg_content != null:自定義動作打開應用 官網鏈接文檔。
關於這類問題的處理思路:
首先確定問題的原因,之前看到這個問題以爲是程序的問題,但是實在找不到原因,這是後就應該考慮是不是SDK本身的缺陷。
這個問題的排除思路:

  • 啓動模式的設置問題,排除方法 更改啓動模式,調試。
  • 查看相關Activity的生命週期函數。例如這個問題每次點擊通知,打開的是程序的啓動頁,按返回鍵,要打開的activity卻出來了,說明相關的頁面已經執行,然後再看該activity的生命週期發現onPause()方法執行了,開始懷疑是否是SDK的問題,可以去官網上看看相關的問題彙總,問問技術客服,百度一下,可能就會一步一步找到相關問題,當然找一個剛踩過坑的人問問再好不過了。

我是IT小王,如果喜歡我的文章,可以掃碼關注我的微信公衆號
在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章