標籤

2012年4月18日 星期三

【转】Notification的总结之push notification


转载自 北方第一狼
最终编辑 北方第一狼
有一个完整的解决方案,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文件中的
  1. - (void)application:(UIApplication *)application 
  2. 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
  1. (其实就是 push client中  
  2.  - (void)application:
  3. (UIApplication *)application 
  4. didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken  
  5. {  
  6. }  
  7. 中的deviceToken  
记住然后在工程 pushMeBaby中用刚才获取的40为字符替换掉在
  1. ApplicationDelegate.m   
  2. -(id)init  
  3. {  
  4. ...  
  5. self.deviceToken = "刚才获取的deviceToken";  
运行工程后如图
其中如图上面的Device Token就是要push的机子
然后运行pushMeBaby运行正常的话就可以看到如下的效果,APNS

沒有留言:

張貼留言