一、Android推送机制和iOS推送机制的异同点

Android系统级别的推送走的是 Google 的 Firebase 服务器,这个服务器在国内不能直接访问。所以一般用个推、极光等第三方服务商SDK,同时各家Android手机厂商也会有系统级的厂商PUSH推送服务。

iOS是系统级推送,简称APNS。APNS 是Apple Push Notification Service(Apple Push服务器)的缩写。

推送流程:

推送通知的呈现效果:

1、在屏幕顶部显示的一条横幅
2、在锁屏界面显示的一块横幅
3、更新app图标的数字
4、播放音效

举例某app实现机制:

im在线时,走im,展示的是客户端本地通知,非真正意义上的push
im离线时,走push,展示的是从服务器推送给客户端的通知

二、厂商推送的知识点

1、厂商推送通道都是系统级通道,而第三方推送服务是应用级通道。当 App 后台进程被杀死(系统自动清理、用户主动清理等)时,第三方 Push 服务就无法触达用户,但是此时通过厂商Push通道依然可以向用户发送Push消息。

2、Android接入的厂商推送:华为、魅族、oppo、vivo、小米

透传:即传送网络无论传输业务如何,只负责将需要传送的业务传送到目的节点,同时保证传输的质量即可,而不对传输的业务进行处理。
这就好比快递邮件,邮件中间有可能通过自行车、汽车、火车、飞机的多种组合运输方式到达你的手上,但你不用关心它们中间经历了哪些。

三、推送通用测试点

四、测试推送相关的注意事项

Android端:
1、测试时确保手机系统时间准确
2、vivo和oppo有些机型推送权限是默认关闭的,在测试前检查app推送权限是否打开
3、Android目前推送同时走极光和个推,先到先显示,同条推送只显示一次
4、连续推送几条厂商推送,点击其中一条push进入app后,再点击另外的push,不会跳转对应页面(厂商版无法控制,不作处理)
5、未收到push,可能是账号未和设备正常绑定,比如:测试中一个id登录多台设备;安卓可以在推送后台解除设备绑定

iOS端:
1、个推的推送机制:
当应用在前台时,维持与推送服务器的长连接,实时接收推送消息
当应用在后台时,通过苹果 apns 推送通知
2、客户端无网时多次发送推送,联网后客户端只能收到最后一条推送,苹果 apns 机制如此


五、参考文档推荐

1、iOS和Android的后台推送原理各是什么?有什么区别?:https://www.zhihu.com/question/20667886
2、iOS与Android系统app消息推送机制对比介绍:https://www.mob.com/about/news/241
3、对比两大 push 服务商个推&极光:https://testerhome.com/topics/17550
4、整理 Android 所有的厂家推送平台:https://www.jianshu.com/p/79fdb0f0b80d
5、一文秒懂厂商推送:https://zhuanlan.zhihu.com/p/51730249

push推送原理及测试相关推荐

  1. 面试百问:App的Push推送原理测试点

    一.Push推送场景 产品角度: 功能需要,如:资讯类产品的新闻推送.工具类产品的公告推送等等 运营角度: 活动运营需要,如:电商类产品的促销活动:召回用户 / 提高活跃度等等 Push推送原理 An ...

  2. iPhone 的 Push(推送通知)功能原理浅析

    第一部分:Push原理 (以下绝大多数内容参考自.图片来自iPhone OS Reference Library) 机制简介 Push 的工作机制可以简单的概括为下图 图中, Provider是指某个 ...

  3. iPhone的Push(推送通知)功能原理浅析

    来自http://blog.csdn.net/omgle/archive/2011/06/29/6574313.aspx 第一部分:Push原理 (以下绝大多数内容参考自.图片来自iPhone OS ...

  4. iPhone的Push(推送通知)功能原理浅析[转]

    转自:http://xiaolife.com/wordpress/an-introduce-to-iphone-push/ 第一部分:Push原理 (以下绝大多数内容参考自.图片来自iPhone OS ...

  5. iOS 消息推送原理及实现总结

    一.消息推送原理: 在实现消息推送之前先提及几个于推送相关概念,如下图: 1. Provider:就是为指定IOS设备应用程序提供Push的服务器,(如果IOS设备的应用程序是客户端的话,那么Prov ...

  6. 技术分享|手机推送原理剖析指南

    源宝导读:本文旨在对手机推送原理进行剖析和阐述,对业务开发做一些方向性的解惑. 一.手机推送的基本概念 --什么是手机推送? 百度词条:手机推送服务是指服务器 定向将信息实时送达手机的服务 词条中有2 ...

  7. iOS 消息推送原理及实现Demo

    为什么80%的码农都做不了架构师?>>>    一.消息推送原理: 在实现消息推送之前先提及几个于推送相关概念,如下图1-1: 1.Provider:就是为指定IOS设备应用程序提供 ...

  8. 58同城高性能移动Push推送平台架构演进之路

    本文详细讲述58同城高性能移动Push推送平台架构演进的三个阶段,并介绍了什么是移动Push推送,为什么需要,原理和方案对比:移动Push推送第一阶段(单平台)架构如何设计:移动Push推送典型性能问 ...

  9. iOS远程推送原理及实现过程

    该文章是我16年在公司博客上写的,除了证书注册的过程大致没有改变,像接收通知的方法都有所改变,所以将iOS 10 之后的接收通知及注册通知的方法在文章中补全,希望对正在处理远程推送的伙伴们有所帮助 一 ...

最新文章

  1. 网络协议分层_接口测试之网络分层和数据
  2. php程序员笔试题库,2017年初级PHP程序员笔试题
  3. 大道至简第四章流于形式的沟通——读后感
  4. mongodb更新数据,查找相同的id,有重复的,就更新。
  5. python如何处理数据_python数据处理之如何选取csv文件中某几行的数据
  6. php如何输出复选框的值,php 怎么输出复选框呢?
  7. java sublist_Java Vector subList()方法与示例
  8. 网页制作的基本语言html,网页制作基础语言HTML.ppt
  9. 如何学习-我是这样学JS理论![不看后悔篇]
  10. collectd 5.7.2 发布,系统监控和统计工具
  11. setTimeout(), nextTick(),setImmediate()区别 ZT~
  12. 452A - Eevee 模拟字符串,挺简单的一道题
  13. 编写 Window 服务程序
  14. 精心整理2万字c++知识点
  15. 使用python bloomfilter实现大文本去重
  16. 美国计算机金融排名大学排名,2018usnews美国大学金融专业研究生top30排名
  17. android 正三角,倒三角的实现代码
  18. windows无法找到发送到桌面快捷方式
  19. STM32之数据采集和心率检测仪(原理图、PCB、程序源码等)超详细!!!
  20. 《HTTP/2基础教程》协议、特性、详解

热门文章

  1. python numpy pandas 书 全_夯基固本学Python—Numpy与Pandas
  2. 计算机网络应用举例介绍,计算机网络技术及应用讲解.doc
  3. 解决github文件夹有向右的白色箭头并且不能打开的解决办法
  4. 购物单问题-带详细注解
  5. sch find similar objects
  6. 如何使用优酷开放平台获取视频播放列表
  7. 股神投资策略及理论-6位大师比较
  8. 力扣 554. 砖墙
  9. C语言错误:expected declaration or statement at end of input
  10. 确定你的台式计算机支持的内存类型,怎么看主板支持多大内存 教你看主板支持多大内存2种方法...