极光推送在Android和iOS的推送机制

极光推送可以将通知,自定义消息,富媒体和本地通知这四种消息推送给app,是第三方推送服务平台之一
极光推送在ios和android上的推送机制是不一样的,主要体现在当程序后台运行的时候。这个稍后会提到,
先来了解一下极光是怎么将要推送的消息准确地推送给我们想送达的那个(些)用户

设备唯一标识
在我们初始化极光SDK的时候,极光会在设备中生成一个DeviceID保存到本地的存储中,在设备卸载重新安装后,根据存在的DeviceID是否相同或存在来判断是否为同一设备;当然了,这种还是不能百分百确保为同一设备,所以还会根据MAC地址,AndroidID等结合着来验证是否为相同设备。(ios则是根据IDFA)
结合用户和设备
在用户登录的时候,建议将当前设备的RegistrationID和当前登录的用户一起上传;还可以将用户分类或者进行标识,上传后可根据这些设置对应推送。

通知消息的流程

Android详情请访问:https://community.jiguang.cn/t/topic/11241
1,我们自己调用极光的API(导入jar包或者aar包)或者用极光官网控制台发起推送请求
2,极光服务器收到请求,app处于长连接,直接发送给app;长连接断开则在离线保存时间内保存消息,并且只发送最新的5条消息
3,app收到通知后,由前端(SDK)进行展示
IOS详情请访问:https://community.jiguang.cn/t/topic/11243
在ios上,JPush是直接封装了Apple官方的APNs通知
1,和android一样发起请求
2,请求经极光处理后,发给Apple的APNs服务器
3,APNs服务器将这条消息推送到IOS设备上

你可能感兴趣的:(JPush)