有一个完整的解决方案,pushclient以及用于测试的mac发送端程序,pushmebaby:
关于技术的文章:
整个过程的讲解如下:
iPhone Push Notification 消息推送 图文详细介绍是本文要介绍的内容,
首先声明下写这个文章的目的,就是让更多人更好的了解push notificaiton 苹果的消息推送功能。
(虽然网上有很多类似的文章说明,但是当自己实践起来的时候还是觉得花费了不少的时间)
在文章之前先提及以下几个概念
对照如上图我们介绍文章后面的一些概念
1、Provider: 就是对应后面介绍的 PushMeBaby工程(用来向APNS发送消息)
2、APNS: Apple_Push_Notification_Service 苹果消息推送服务器
3、iphone:用来接受APNS下发下来的消息推送
4、Client App: 对应后面提到的 PushClient 工程,安装在iphone上面的程序
(用来接收iphone传递APNS下发的消息到制定的一个客户端 app)
介绍完以后几个概念以后,现在先申明下在以下的工程配置中要用到
苹果开发者帐号 去下载 aps_developer_identity.cer
然后重命名apns.cer放在 pushMeBaby工程中才可以顺利的配置好推送的一些功能。
现在进入正题
1、获取deviceToken
在 PushClient工程的的main.m文件中的
- - (void)application:(UIApplication *)application
- didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken
方法中获取到 deviceToken,用来填充在 PushMeBaby中向服务器发送信息
2、获取在服务端所要的许可证 (要用到开发者帐号中的相关配置)
1、首先登录https://developer.apple.com/devcenter/ios/index.action 登录帐号
2、
3、
4、下载 push ssl certificate 把原文件名称aps_developer_identity.cer -------->重命名为apns.cer
5、下载下来的testpush.mobileprovision配置到工程中
前期的工程配置和一些证书获取完毕以后我们要下载工程文件PushMeBaby 和 PushClient
下载地址:
http://download.csdn.net/source/3182374
下载完成以后我们要做两个事情
1、把刚才获取的apns.cer文件拷贝到pushMeBaby工程文件同级目录下
2、把 pushClient安装到真机上运行后获取 deviceToken
- (其实就是 push client中
- - (void)application:
- (UIApplication *)application
- didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken
- {
- }
- 中的deviceToken
- )
记住然后在工程 pushMeBaby中用刚才获取的40为字符替换掉在
- ApplicationDelegate.m
- -(id)init
- {
- ...
- self.deviceToken = "刚才获取的deviceToken";
- }
运行工程后如图
其中如图上面的Device Token就是要push的机子
然后运行pushMeBaby运行正常的话就可以看到如下的效果,APNS
沒有留言:
張貼留言