IOS PUSH

第一阶段:.net应用程序把要发送的消息、目的iPhone的标识打包,发给APNS。

  第二阶段:APNS在自身的已注册Push服务的iPhone列表中,查找有相应标识的iPhone,并把消息发到iPhone。

  第三阶段:iPhone把发来的消息传递给相应的应用程序, 并且按照设定弹出Push通知。




  从上图我们可以看到。

  1、首先是应用程序注册消息推送。

  2、 IOS跟APNS Server要deviceToken。应用程序接受deviceToken。

  3、应用程序将deviceToken发送给PUSH服务端程序。

  4、 服务端程序向APNS服务发送消息。

  5、APNS服务将消息发送给iPhone应用程序。

///////证书操作部分省略

在PushChatAppDelegate中的didFinishLaunchingWithOptions方法中加入下面代码:

- (BOOL)application:(UIApplication *)application
didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
self.window.rootViewController = self.viewController;
[self.window
makeKeyAndVisible];

// Let the device know
we want to receive push
notifications
[[UIApplication sharedApplication]
registerForRemoteNotificationTypes:
(UIRemoteNotificationTypeBadge | UIRemoteNotificationTypeSound |UIRemoteNotificationTypeAlert)];

return YES;
}

通过registerForRemoteNotificationTypes方法,告诉应用程序,能接受push来的通知。

3、在xcode中运行,会弹出下面的提示框:

选择OK。表示此应用程序开启消息通知服务。

在 PushChatAppDelegate.m代码中添加下面方法获取deviceToken :

- (void)application:(UIApplication*)application
didRegisterForRemoteNotificationsWithDeviceToken:(NSData*)deviceToken
{
NSLog(@"My
token is: %@",
deviceToken);
}

- (void)application:(UIApplication*)application
didFailToRegisterForRemoteNotificationsWithError:(NSError*)error
{
NSLog(@"Failed
to get token, error: %@",
error);
}

时间: 2024-11-07 12:34:59

IOS PUSH的相关文章

iOS push全方位解析(二)【译文】"——生成OpenSSL证书,Provisioning Profile

这是一篇来自raywenderlich的教程,内容翔实!结构简单透彻.讲解循序渐进.文章质量上乘!是一篇难的的博文!使用半瓶的英语水平翻译了一下: 1.[iOS push全方位解析](一) push的概述 2.[iOS push全方位解析](二) 生成push证书,生成Provisioning Profile(本篇) 3.[iOS push全方位解析](三) 一个极简的demo,并测试一下push 这里查看原文 ------------------------------------------

"iOS push全方位解析(二)【译文】"——生成OpenSSL证书,Provisioning Profile

这是一篇来自raywenderlich的教程,内容翔实!结构简单透彻.讲解循序渐进.文章质量上乘!是一篇难的的博文!使用半瓶的英语水平翻译了一下:1.[iOS push全方位解析](一) push的概述2.[iOS push全方位解析](二) 生成push证书,生成Provisioning Profile(本篇)3.[iOS push全方位解析](三) 一个极简的demo,并测试一下push 这里查看原文 ---------------------------------------------

IOS PUSH 实践操作~~~~

1.推送过程简介 (1)App启动过程中,使用UIApplication::registerForRemoteNotificationTypes函数与苹果的APNS服务器通信,发出注册远程推送的申请.若注册成功,回调函数application:(UIApplication *)application didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken 会被触发,App可以得到deviceToken,该tok

蛋疼的Apple IOS Push通知协议

简介 Apple Push通知机制其实很简单,就是Apple的APNs服务器做为中间人,把消息推送到对应的设备上. 一张来自Apple文档的图: 当然,示意图看起来简单,但是还有一些实际的问题. 比如,如何区分Provicer的?如何区分设备的? 简单而言,是这样的: 每个应用都有一个自己的证书(certificate),开发者可以从苹果那里获得: 应用可以到APNs服务器上注册(register),然后得到一个device_token,开发者要自己保存好,推送时就要用这个来区分不同的设备. 注

IOS Push 证书的重新生成

IOS的推送证书,有有效期限制,一般为一年.当我们证书过期的时候,就需要重新生成证书了.有一段时间没有上苹果网站了,昨天上去一看,此奥,改版了,下边我们将重新生成一个正式环境的push推送的证书. 1.先打开钥匙串(应用程序-实用工具-钥匙串访问),请求一个证书 常用名称写为:2013.04.27_push_production_***.并保存到磁盘上. 2.进入打开苹果网站的证书标签页面,选择 Identifiers标签下边的App IDs子标签,显示下边图片.红色圈中的是我要重新生成push

iOS Push服务端PHP代码

博主原来是一名PHPer,当转向iOS后看到PHP感到格外的兴奋. 目前有一个项目需要自己构建iOS推送的服务端代码.于是搜索了一下网上的代码,带式在执行的时候总是会报错,错误为: Warning: stream_socket_client(): SSL operation failed with code 1. 本以为是openssl没有开启或者生成的秘钥ck.pem有问题.后来发现不是这些个问题.现在贴出正确的代码,以备不时之需: <?php set_time_limit(0); sleep

&quot;iOS push全方位解析(一)【译文】&quot;——iOS PUSH概述

这是一篇来自raywenderlich的教程,内容翔实!结构简单.讲解循序渐进.文章质量上乘!是一篇难的的博文!使用半瓶的英语水平翻译了一下: 1. push的概述(本博文) 2. 生成push证书,生成Provisioning Profile 3. 一个极简的demo,并测试一下push 这里查看原文 -------------------------------------------------------------------------------------------------

&quot;iOS push全方位解析(三)【译文】&quot;——一个极简的demo,并测试一下push

这是一篇来自raywenderlich的教程,内容翔实!结构简单透彻.讲解循序渐进.文章质量上乘!是一篇难的的博文!使用半瓶的英语水平翻译了一下: 1. push的概述 2. 生成push证书,生成Provisioning Profile 3. 一个极简的demo,并测试一下push.(本博文) 这里查看原文 一个极简的demo 到目前为止,上面还不是做的还不够让人兴奋,但是那些准备工作还是很有必要的.本教程像你详细展示了如何生成证书,因为每天都会用到证书,而且没有证书push就不好.刚才你刚搞

[转]ios push

转:http://blog.csdn.net/showhilllee/article/details/8631734 APNS的推送机制 首先我们看一下苹果官方给出的对ios推送机制的解释.如下图 Provider就是我们自己程序的后台服务器,APNS是Apple Push Notification Service的缩写,也就是苹果的推送服务器. 上图可以分为三个阶段: 第一阶段:应用程序的服务器端把要发送的消息.目的iPhone的标识打包,发给APNS. 第二阶段:APNS在自身的已注册Pus