推送通知

具体见:http://blog.csdn.net/kmyhy/article/details/6688370

以上为网络资料

个人简单总结下:

1.创建SSL证书

1.1 创建一个证书请求,然后保存这个证书请求(后面用于生成SSL证书)

1.2 创建一个App ID,登陆网站,配置,下载SSL证书(注意配置Enable for Apple Push Notification service)

1.3 双击,把证书安装到钥匙串里面

 

2.创建 Provisioning Profile

2.1 回到网站,provisioning  选项里面,新建new profile,这里的name,App ID跟上面对应,然后下载provisioningprofile,下载下来的扩展名是 .mobileprovision

2.2 连接上设备,把.mobileprovision文件拖到XCODE里面,会自动安装

 

3.配置工程文件

3.1 打开一个工程,Info.plis文件,Bundle Identifier修改为前面App ID

3.2 点击project文件,Build Settings--->CodeSigning Identity,全部选中创建的App ID,

4.添加代码

4.1 打开一个工程,向xxxxAppDelegate.m添加如下程序,然后在机器上运行

ApplePushNotificationAppDelegate.m文件中,输入以下代码(加粗部分):

    //用于向ios系统注册,启用push

    NSLog(@"Registeringfor pushnotifications...");  

    [[UIApplication sharedApplication]

     registerForRemoteNotificationTypes:

     (UIRemoteNotificationTypeAlert |

      UIRemoteNotificationTypeBadge |

UIRemoteNotificationTypeSound)];

 

 

//iPhone 从APNs服务器获取deviceToken后激活该方法

- (void)application:(UIApplication*)app didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken {

    NSString *str = [NSString stringWithFormat:@"DeviceToken=%@",deviceToken];

    NSLog(str);   

}

//注册push功能失败 后 返回错误信息,执行相应的处理

- (void)application:(UIApplication*)app didFailToRegisterForRemoteNotificationsWithError:(NSError *)err {

    NSString *str =[NSStringstringWithFormat: @"Error: %@", err];

    NSLog(str);  

}

- (void)application:(UIApplication*)applicationdidReceiveRemoteNotification:(NSDictionary *)userInfo

{

    for (id key in userInfo)

    {

        NSLog(@"key: %@, value:%@",key, [userInfo objectForKey:key]);

}  

}

4.2.获取到deviceToke

4.3  从网络下载 PushMeBaby程序,修改该程序,添加SSL证书,即可向真机发送推送消息

5.该过程中,供创建了SSL证书和.mobileprovision两个证书,SSL证书供Provider( 程序服务器)使用,.mobileprovision  证书 是  iPhoneprovisioning  以开启了PUSH功能App ID (如前述PushDemo)生成相应的provisioning下载产生。

6.按步骤走了一遍,从mac上可以向touch发送PUSH消息了


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值