码迷,mamicode.com
首页 > 移动开发 > 详细

iOS的推送机制APNs:本地推送&远程推送

时间:2015-05-13 12:14:33      阅读:863      评论:0      收藏:0      [点我收藏+]

标签:

本地推送:

  本地推送主要应用在备忘录,闹钟等本地的,基于时间定时的消息提醒。本篇不做详细描述。

 

远程推送:APNS(苹果推送通知服务)

           技术分享

iOS远程推送机制的原理及流程:

  注册推送(橙色部分):若该App允许接收推送消息,则先要在代码中注册远程推送。注册推送后,iOS带着设备序列号去请求ANPS而获得deviceToken。然后App把deviceToken发送给我们App的服务器。因为若服务器有消息给我们推送时,它会把要发送的消息和deviceToken按照一定的格式一并打包发送给ANPS服务器。

  消息推送(蓝色部分):原本App的服务器和客户端是直接进行数据交互的,但iOS推送消息时必须经由APNS服务器。我们App先把要发送的消息和目标设备deviceToken按照一定的格式发送给APNS,APNS再推送给我们设备上的App客户端。

  

关于服务器具体是如何打包数据的,以及App在手机上被卸载后,APNS是如何处理的,还会向它发送推送消息吗?

这篇博客总结的很好:点击进入

 

代码实现:

在AppDelegate.m中

1. 首先给App注册远程推送:

iOS8:

先设置能接收的推送类型,根据类型生成settings,注册settings,注册远程推送。重写注册成功和失败的代理方法  

iOS7:

先设置推送类型,根据类型注册远程推送。重写代理方法。

技术分享

2. 获取到deviceToken的回调方法,以及推送消息接收成功后的回调方法

技术分享

 

需要的几个证书:

  参考:博客 《iOS远程推送需要的几个证书》

 

iOS的推送机制APNs:本地推送&远程推送

标签:

原文地址:http://www.cnblogs.com/wangerxiansheng/p/4495516.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!