iOS推送分为开发环境和生产环境,在推送证书的type上分别对应 APNs Development iOS 和 Apple Push Service。在开发者帐号中建立AppId以后“Edit your App ID Configuration”的时候,若是勾选了Push Notifications,那么就能够在这个选项下直接配置测试、生产推送证书。git
推送证书是给App服务端使用的,业务服务端拿着这个推送证书和推送消息与苹果的APNs交互,完成业务上消息的推送。从上面的过程能够看出,建立推送证书主要须要AppId + CSR文件。github
从建立证书界面可见,建立的证书包括两类:为APP开发时,编译打包使用的证书,也分开发、生产证书;为APP提供服务的一类证书,好比推送证书,即推送证书也能够在这建立。微信
注:其中有一个选项是 iOS Distribution (App Store and Ad Hoc),注意理解。闭包
建立一个开发证书: 工具
从上面的过程能够看出,建立一个用于编译打包的证书,只须要上传一个CSR文件,无需指定其余信息。测试
在APP开发过程当中,开发和发布都须要建立对应的Provisioning Profile,这个描述文件也有不一样的类型:优化
从上面的步骤中能够看出,建立一个AdHoc 的 Provisioning Profile 须要的信息有:AppId、相应的打包证书(Distribution型)、选择可安装该APP的设备。因此,是描述文件将AppID、证书、APP、设备联系到了一块儿,而推送证书和打包证书没什么直接关系。具体的描述文件、证书、App的安装过程请参考文章:iOS 签名机制动画
若是想在发布APP前,再作最后线上环境推送流程测试,用正式发布是的生产证书和描述文件打包时,是不能直接装到iOS设备上的。想测试线上环境推送只能选用AdHoc的方式,若是直接用Xcode运行装载到设备上,那就在工程配置中选择AdHoc的描述文件,真机编译运行(不会顺利运行至应用界面,等到应用天然崩溃),装载完成便可进行推送测试。网站
若是选择代理网站分发,须要打出ipa包,则在Xcode中打包时选择Product -> Archive -> distribute,会有如下界面:
将ipa包装至真机,便可进行测试。
了解更多iOS及相关新技术,请关注咱们的公众号:
小编微信:可加并拉入《QiShare技术交流群》。
关注咱们的途径有:
QiShare(简书)
QiShare(掘金)
QiShare(知乎)
QiShare(GitHub)
QiShare(CocoaChina)
QiShare(StackOverflow)
QiShare(微信公众号)
推荐文章:
Swift 5.1 (9) - 结构体和类
Swift 实现一个兼容iOS、tvOS、OSX的抽象层
iOS Password AutoFill
iOS 给UILabel添加点击事件
用SwiftUI给视图添加动画
用SwiftUI写一个简单页面
Swift 5.1 (7) - 闭包
iOS App启动优化(三)—— 本身作一个工具监控App的启动耗时
iOS App启动优化(二)—— 使用“Time Profiler”工具监控App的启动耗时
iOS App启动优化(一)—— 了解App的启动流程
奇舞周刊