本文章转载于:https://blog.csdn.net/BlogRecord/article/details/54834706

一,Android 点击推送逻辑处理,以及页面跳转判断等

// 该项目主要实现此需求:

// 收到推送, 点击推送消息处理
// 1. 如果 应用已经打开, 这直接做处理, 如跳转页面, 打开链接等功能
// 2. 如果 应用没有开启, 则默认先开启应用 (如果存在引导页面, 则显示引导页面), 然后进入首页后, 再做对应的处理(跳转页面, 打开链接等)

// 同微信一样
// 如果微信没有打开(后台被销毁), 有人发送消息过来, 点击通知栏, 则默认是打开微信, 显示欢迎页, 接着进入对应的群聊、或者私聊页面, 返回键则返回到消息列表页面
// 如果微信已打开, 则不会再次启动微信, 直接进入对应的页面

// == 效果 ==

// 收到推送后, 并且点击推送

// 没开启应用:

// 打开应用 -> 默认显示 Launcher 页面( WelcomeActivity ) -> 接着进入 MainActivity -> 触发onResume方法, 判断成功后, 跳转到对应的 PushXxxActivity

// 已经开启应用

// 默认停留在 MainActivity 页面, 触发onResume方法, 判断成功后, 跳转到对应的 PushXxxActivity

二,

主要功能实现页面

  • BaseApplication => onCreate 方法

  • BaseActivity => onResume 方法

  • PushHanderActivity

  • // == 实现思路 ==

    // 默认全部推送, 都跳转到统一一个页面 PushHanderActivity, 该页面不显示任何UI, 只是单独中转处理

    // 接着在 PushHanderActivity 中, 保存传递过来的推送消息、推送类型到 SharedPreferences (SP) 中, 并且默认跳转到应用 Launcher 页面 (startActivity(Launcher.class);)

    // 然后在全部 Activity 中的 onResume 中调用 PushHanderActivity.checkPush 方法, 主要就是通过获取 SP 存储的值, 判断是否存在推送消息

    // 不存在推送消息, 则不处理

    // 存在则处理, 并通过接口进行回调通知, => 会先通过 接口 isHandlerPush 方法判断是否处理推送, 如果处理, 并且存在数据则会调用 onPushHandler 接口方法

    // isHandlerPush 可以特殊处理, 正常传入的参数为 class getSimpleName 名, 容易判断是否不处理某些类

    // == 使用步骤 ==

    // 需要三步

    // 1.首先在 Application 中 调用 PushHanderActivity.setLauncherClass, 并且设置 Launcher 页面.class

    // 2.PushHanderActivity.setPushHandler 实现IPushHandler接口, 并且进行编写逻辑判断

    // 3.在整个项目 Activity基类 的onResume方法中, 调用 PushHanderActivity.checkPush(activity, value); // 正常 PushHanderActivity.checkPush(this, this.getClass().getSimpleName());

    // == 方法功能介绍 ==

    // PushHanderActivity.checkPush 该方法功能, 主要是判断是否存在推送数据, 以及对推送数据特殊处理

    // 需要在onResume中处理, 是因为如果应用已经打开, 并且停留在某个页面, 点击推送会再次触发onResume, 这个时候进行判断是否处理推送

    // ====

    // 而 isHandlerPush 方法, 则主要是判断是否在该页面处理推送消息, 正常是忽略欢迎、引导页面

    // 只有正常页面才进行处理, 防止影响到需要强制显示的页面(如欢迎页面, 会显示一定延迟时间后, 才处理推送)

    // onPushHandler 方法是自己逻辑处理,点击推送后做什么操作

Android 推送 - Activity 跳转控制处理相关推荐

  1. 华为手机点击android棒棒,Android 推送点击跳转与华为推送神坑

    实现Android推送功能,选择了接入华为推送和小米推送,结果步入了华为推送的一个神坑

  2. 个推无法获取个推id_最新个推Android 推送 SDK Maven 集成

    概述 公司准备采用个推作为第三方推送平台,我作为客户端的头号小鸟,掐指一算已经毕业 0.1 年了,Leader 准备把这个简单而又独立的功能点交给我来处理,我紧张兮兮的打开官网集成文档 学习了起来.其 ...

  3. Android推送的群魔乱舞

    前言 国内的Android推送就是个悲剧 国内Android缺少Google的生态,如Google的Paly Store,Google Mobile Services(GMS)等,导致衍生出很多畸形的 ...

  4. Android推送集成方案总结

    Android推送集成方案总结 刚做完推送集成方案,记录下坑. 这里记录的特性和使用时针对写blog时采用的sdk的,具体使用流程和限制还请参考官方给出的sdk. 1.推送规则 小米手机用小米推送: ...

  5. Android推送、智能心跳解决方案、手机休眠对心跳的影响

    转载请标明出处:http://blog.csdn.net/xx326664162/article/details/51611625 文章出自:薛瑄的博客 你也可以查看我的其他同类文章,也会让你有一定的 ...

  6. Android推送 智能心跳解决方案 手机休眠对心跳的影响

    转载请标明出处:http://blog.csdn.net/xx326664162/article/details/51611625   文章出自:薛瑄的博客 你也可以查看我的其他同类文章,也会让你有一 ...

  7. Android推送服务的几种实现方式

    现实生活中, 推送服务就像订杂志一样, 只要留下你的地址, 杂志就能如期送到你手里, 可以认为每个人都有唯一的一个地址, 但在目前的网络上, 这是办不到的, 因为不是每个人都有一个唯一的地址, 服务器 ...

  8. android极光静默推送,Android 推送 整合小米、个推、jpush

    Android系统由google提供的推送的服务在国内并不能很好的运作,因此不能像iOS能提供统一管理的推送服务.Android端推送目前常用的都是第三方推送服务,也可以自己搭建推送服务器来实现, 为 ...

  9. 最新个推Android 推送 SDK Maven 集成

    概述 公司准备采用个推作为第三方推送平台,我作为客户端的头号小鸟,掐指一算已经毕业 0.1 年了,Leader 准备把这个简单而又独立的功能点交给我来处理,我紧张兮兮的打开官网集成文档 学习了起来.其 ...

最新文章

  1. linux 网站架构的演变
  2. 最常用的10个Matlab快捷键,助你编程更高效
  3. php 补足字符串,php 数目字或者字符串补全
  4. c++ DirectShow播放任意格式的视频
  5. 《高级软件架构师讲义》学习笔记5
  6. docker build no such file or directory
  7. RT-Thread下的串口驱动程序分析
  8. Html TextArea 长度限制
  9. FMS Dev Guide学习笔记(SharedBall)
  10. 人眼定位python代码_使用dlib,OpenCV和Python进行人脸识别—人眼眨眼检测
  11. Delphi 取整函数round、trunc、ceil和floor
  12. Atitit. 图像处理jpg图片的压缩 清理垃圾图片 java版本
  13. pdg file的打开
  14. 先验 超验_关于先天、先验、经验和超验的理解
  15. python搭建轻服务,实现上传下载文件
  16. 远程桌面连接服务器显示内部错误,解决远程桌面连接出现了内部错误
  17. ue模糊查询_Daizyue的Power Query学习笔记-缓存
  18. 拼图游戏怎样切换代码html,HTML5技术之图像处理:一个滑动的拼图游戏-H5教程
  19. 软件工程方向硕士论文撰写指南
  20. 计算机网络物联网论文,物联网技术及其应用_计算机网络论文.doc

热门文章

  1. raid5在线扩容盘
  2. glup安装以及使用
  3. io操作 mysql_怎样的操作才算是一个IO操作?
  4. 解决ajax在chrome中正常,在IE中不正常的问题
  5. Jumony Core 2.2 发布
  6. MapStruct 高级用法
  7. Golang爬虫语言接入代理
  8. 为什么互联网大厂「容不下」35岁中年人?
  9. PTA----周游世界 (30分)(vector,dfs)
  10. 盛世昊通董车长2.0,3.5成优惠购车火热进行中