百度云推送点击通知后进入不了想要的页面

之前看声明周期,发现进入特定界面后就直接onPause()了,然后就进入入口界面了,之后就destory了。不知道什么原因。一開始以为是调用了两次方法,可是查了再查。改了再改都没用,以为是框架问题,发现并不冲突。

后来发现当使用百度平台发送就能进入想要的界面。用自己服务端代码发送点击后就不能进入。

后来查看服务端代码,找到里面有一个open_type,官方解释例如以下:

open_type:点击通知后的行为(1:打开Url; 2:自己定义行为;3:默认打开应用;);
url:须要打开的Url地址,open_type为1时才有效;
pkg_content:open_type为2时才有效。Android端SDK会把pkg_content字符串转换成Android Intent,通过该Intent打开相应app组件。所以pkg_content字符串格式必须遵循Intent uri格式,最简单的方法能够通过Intent方法toURI()获取
  

经測试后发现:

当open_type为1,点击通知后可以打开特定界面,并打开url,若没有指定url,则跳转到百度开发人员官网
当open_type为2,点击通知后先打开特定的界面,但之后立即会打开应用包下入口页面,跳转到入口的页面
当open_type为3,点击通知后打开想要进入的页面

原文地址:https://www.cnblogs.com/mengfanrong/p/5185990.html