简介
APNS全称Apple Push Notification service
说明
- 此文以极光推送来举例,相信其它原理相同.
- 支持到 iOS10.0
- 全部为笔者今天测试结论,如有变化,请注意日期
- 测试环境:
- Xcode 8.2,
- iOS 10.2 & iOS 9.2.1
- 本系列包括三大部分:
- 证书集成篇 //www.greatytc.com/p/f5ffb49e6173
- 代码集成篇 //www.greatytc.com/p/9e2464be0fd5
- 极光推送&真机测试篇 //www.greatytc.com/p/6812a8a84d31
远程推送
集成远程推送证书
- 新建
App Id
, 如此处name:
name.png
注: 请忽略此处的数字2
,因为笔者之前有些没截图,重新创建的.
- 依次勾选
Suffix
勾选推送
App Id.png
选择
register
,done
点击刚创建的
App id
app id
没有配置证书
- 选
edit
.此处可以看到需要配置两个证书.为什么是两个呢?- 一个是开发证书,开发阶段使用,即调试期间
- 一个是生产证书,即app发布时使用的是这个证书
- 先配置开发证书
需要配置的开发与生产证书
选择
create certificate
,continue
, 可以看到上传CSR的提示-
2 配置CSR, 打开
keychain
请求证书.png -
上传CSR
csr
此时开发证书已经配置完成, 下面使用开发证书配置用于开发p12文件
- 下载上面的开发证书并安装
开发证书
安装在keychain中
导出p12
注:
- 证书名称中包含
bundle id
, 注意是否与自己第1步中新建的appleID
一致, 请忽略笔者此处的不匹配. - 导出p12时,需要输入两次密码
- 第一次是设置当前p12的密码与确认密码, 如输入123456
- 第二次输入的是你的mac的开机密码,如:
cuiyuhe
接下来的步骤
- 导出的p12如下:
开发环境下的p12文件
相同的步骤导出开发阶段使用的证书.
- 此时检查:
-
App Id
是否配置正确
都是绿色标志
- 上传p12 到极光相应的项目,密码输入刚设置的
123456
上传开发与生产证书
注: 如果没有显示'已验证', 重复上面步骤配置
配置Xcode 需要的 开发development 与 生产distribution 证书
provisioning profiles下面
- 选择
development
, 点击+ - 选择iOS app dev, 点击
continue
iOS app dev
- 选择相应的app id
- 选择相应的开发者,直接全部选择
- 全选设备, 输入名称, 下载安装
- 在xcode 8.2 中选择刚安装的开发证书.此处将xcode 8.2自带的
auto manage signing
干掉
将自动选择干掉
配置 distribution
证书
- 此处为
adHoc
: 就是可以发布到第三方网站上面,供当前apple Id 注册的设备下载测试的证书.是发布证书的一种. - 如果发布到
app Store
时, 此处应选择app store
- 选择adHoc
adHoc
- 同配置
dev
证书, 不停continue
,下载安装,在Xcode 中选择:
选择生产证书
Xcode 8.2 可以自动识别,如果发生了错误,证明证书配置错误,再根据以上步骤检查.
Xcode 中的设置
-
打开推送
打开推送 -
打开后台推送
打开后台推送