iOS消息推送机制详解(Push Notify - APNS)
来源:互联网 发布:python示例程序 编辑:程序博客网 时间:2024/05/22 17:04
由于客户的应用需求,要求在应用软件种加入消息推送的提示,根据提示信息打开响应的连接。
故对apple的消息推送机制做了一番研究。
消息推送首先需要几个必要的东西:
1 SLL证书(申请证书的过程不在详述,只是注意需要消息推送应用程序的apple ID一定不能用通配符,这里有2个SLL证书一个用于调试一个用于发布)
2 DeviceToken(这个实际上是一串64位的字符串,每个手机是唯一的;但是开发者profile和发布者profile获取到的不同)
3 推送消息的服务器,简称Provider
有了以上东西就可以开始进行消息推送的开发了。
流程如下
1 iPhone-》send deviceToken -》Provider
2 Provider -》send message and DeviceToken -》APNS(苹果的消息推送服务器)
3 APNS (根据DeviceToken)-》send message -》iPhone Notifications -》 your APP
以上流程第一条,获取DeviceToken的方法为,在APPDelegate类中重写方法
- (void)application:(UIApplication*)application didRegisterForRemoteNotificationsWithDeviceToken:(NSData*)deviceToken
{
NSLog(@"DeviceToken is: %@", deviceToken);
}
将获取到的DeviceToken发送到Provider,一般是一个服务器Provider。
第二条。Provider根据不同的条件发送不同的消息到不同的DeviceToken+信息到APNS。这里我们可以根据不通的DeviceToken来定制用户权限。
比如一共有 A B C D E5个消息,iPhone1 只想获取 A B的消息 iPhone2想获取C D E的消息,这里我们就可以在iPhone想Provider注册DeviceToken的时候定制权限。
具体的Provider代码可参考PushMeBaby那个Demo。
苹果的APNS服务器地址有2个分别为:
测试的服务器地址:gateway.sandbox.push.apple.com 端口2195
产品推送服务器地址:gateway.push.apple.com 端口 2195
第三条。APNS根据不同的DeviceToken将消息发送到不通的iPhone上。
至此我们就可以收到对应的消息在iPhone的通知中。
详细的生成ssl证书以及p12文件的步骤参考网址如下:
点击打开链接
- iOS消息推送机制详解(Push Notify - APNS)
- iOS消息推送机制详解,APNS服务器搭建基本思路
- IOS消息推送APNs
- iOS推送机制APNs
- APNs Apple Push Notification Services 推送消息
- iPhone利用apns进行Push消息推送
- IOS消息推送之APNS
- IOS---APNS 消息推送实践
- IOS消息推送之APNS
- IOS---APNS 消息推送实践
- iOS消息推送之APNS
- IOS消息推送之APNS
- IOS消息推送之APNS
- IOS消息推送之APNS
- IOS消息推送之APNS
- IOS消息推送之APNS
- iOS消息推送之APNS
- 苹果推送(APNs)ios push小结
- ln命令设置硬链接和软链接
- Xenocode混淆方式
- 进程与作业的区别
- 基于ARM的C语言和汇编语言的混合使用
- bt5 note[3]
- iOS消息推送机制详解(Push Notify - APNS)
- Dialog样式小例,以及listview的item和里面的控件焦点共存
- pl/sql建JOB时时间的一些设置
- POJ1830,01矩阵高斯消元
- openGL中的gluLookAt函数
- Button under ListView
- MFC 改变static字体颜色、大小、背景颜色【自定义类】
- 实习第1天
- 使用Vitamio打造自己的Android万能播放器(1)——准备