iPhone/iOS开发推送C++服务端APNS源代码
来源:互联网 发布:sqlite 创建数据库 编辑:程序博客网 时间:2024/05/22 01:51
bogon:~ chenshuangchou$
得到PushChatCert.pem
双击安装aps_production.cer到钥匙串,在钥匙串中找到刚才安装的推送证书,点开,右键导出秘要,命名为XXX.p12;demo中是csc123.p12
bogon:~ chenshuangchou$
此处需要输入密码,demo中的密码:csc123
重复确认密码,得到PushChatKey.pem
@"{"aps":{"alert":"This is some fancy message.","badge":1,"sound":"default"}}";
alert指地是弹出的内容,badge指地是软件在主界面icon的数字,sound指地是收到消息提示的声音。
Push的条件
1.必须要有苹果开发者账号。无论是企业账号还是公司账号或者是个人开发者账号,均能做推送。上一讲说过,苹果安全机制中用证书验证签名信息。推送也需要证书,而证书只能在开发者网站进行下载。
2.必须要有一个苹果系统,无所谓虚拟机,黑苹果还是原装苹果系统。推送证书的生成必须提供一个CSR文件,这个CRS文件包含该系统的标示与开发者账号信息,并在钥匙串生成密钥。
3.如果要测试推送,必须要准备一台iPhone,因为模拟器不支持推送。
push机制
推送消息就是一个socket连接,这个socket连接发送到apns(苹果消息推送服务器)。然后由apns发送消息到手机,在用户打开消息时,跳转到相应的app软件。(见图)
阶段一:Provider[服务端]把要发送的消息,目的IOS设备标识打包,发送给APNS;
阶段二:APNS在自身的已注册Push服务的IOS设备列表中,查找有相应标识的IOS设备,并将消息发送到IOS设备;
阶段三:IOS设备把发送的消息传递给对应的应用程序,并且按照设定弹出Push通知。
证书配置
1.包含推送的功能的app,在开发者网站上创建App IDs时,必须使用明确的app id(Explicit App ID)作为签名的前缀,不能使用带有*的Wildcard App ID。
2.并在App Services中启用Push Notifications功能,然后为这个App id创建一个证书。创建证书需要用钥匙串从颁发机构请求证书,填写开发者账号邮箱和用户名,生成CRS文件。推送通知的证书有两种,一种是开发SSL证书,一种是产品SSL证书。
证书区别
两种证书的区别:
1、开发证书可以在软件开发时就能获得token,而发布证书必须在软件发布之后才能获得。在程序开发过程中开发证书就可以推送,而发布证书不行。
2、开发证书在推送消息时,连接apns的地址是gateway.sandbox.push.apple.com,而发布证书连接的是gateway.push.apple.com。
消息设置
[[UIApplication sharedApplication] registerForRemoteNotific
//判断程序是不是由推送服务完成的
if (launchOptions) {
}
- (void)application:(UIApplication *)app didRegisterForRemoteNoti
}
- (void)application:(UIApplication *)app didFailToRegisterForRemo
}
//程序处于启动状态,或者在后台运行时,会接收到推送消息,解析处理
- (void)application:(UIApplication *)application didReceiveRemoteNotifica
{
}
- iPhone/iOS开发推送C++服务端APNS源代码
- iPhone/iOS开发推送C++服务端APNS源代码
- iPhone/iOS开发推送C++服务端APNS源代码
- apns IOS 推送消息 php做推送服务端,详细全部
- iphone推送apns学习
- ios开发: APNS消息推送实现
- ios开发: APNS消息推送实现
- ios开发: APNS消息推送实现
- iOS 开发消息推送(APNS)
- IOS开发 APNS消息推送实现
- IOS开发之消息推送(APNS)
- iPhone开发之 - 苹果推送通知服务(APNs)编程
- IOS消息推送服务端开发
- IOS---APNS,推送通知
- iOS APNS远程推送
- iOS原生APNS推送
- IOS消息推送APNs
- IOS之APNS推送
- Cocos2d中获取锚点所在坐标的方法
- 轻量级JavaEE企业应用实战(十一)
- 231. Power of Two
- ListView+BaseAdapter的使用方法
- 免费公开课视频《神马是数据科学家?》
- iPhone/iOS开发推送C++服务端APNS源代码
- leetcode -- Kth Smallest Element in a BST -- 简单重点
- mysql修改字符集位utf-8使其和操作数据库连接字符程序统一
- excel
- 程序开发的验证工作
- iOS 支付宝集成
- Centos修炼----->centos7办公环境打造(No1--桌面快捷方式创建)
- WebService
- ubuntu系统下Elasticsearch 安装