|
|
|
|
移动端

2.3.1 证书

《腾讯iOS测试实践》第2章走进iOS,本章将以iPhone为主要介绍对象,iPad、iTouch与iPhone基本一致,不再赘述。本节为大家介绍证书。

作者:丁如敏来源:机械工业出版社|2017-09-14 15:52

年前最后一场技术盛宴 | 1月27日与京东、日志易技术大咖畅聊智能化运维发展趋势!


2.3 iOS平台的特殊性

iOS平台作为一种独立的操作系统平台,有很多其他平台所没有的特性。

2.3.1 证书

我们在找工作时,需要向用人单位出示学校颁发的毕业证书,同理,要想我们开发的应用能够在iOS设备上安装启动,就需要向iOS设备提供由苹果公司颁发的证书,证明我们的应用是经过苹果公司官方认证的。iOS设备在启动App前,会先验证证书是否合法,这个过程被固化在了iOS系统中,除非手机越狱,否则都要经历这个过程。

要想开发iOS应用,首先要成为苹果公司认证的开发者(虽然Xcode 7之后可以用个人非付费Apple ID进行真机调试,但是不适合团队开发和正式提交AppStore发布,因此非付费Apple ID没有算作开发者账号来进行介绍)。开发者账号有四种不同的类型,分别是个人账号、公司账号、企业账号和教育账号。其中个人账号和公司账号为99美元/年,企业账号是299美元/年,教育账号是0美元/年。我们在开发和测试iOS应用的时候,不能一直在模拟器上进行,总是要在真机上进行调试和验证,通过非AppStore渠道安装的应用,如果想要安装到设备上,就要将这些应用导出为iOS可识别的ipa格式安装包,在导出安装包时,最重要的一个因素就是包所使用的证书,即包的签名方式。刚刚提到的两种不同金额的开发者账号可以申请的证书类型也是不同的。苹果的证书体系非常烦琐复杂,这里不再赘述,先简单列举一个表2-1说明一下与发布有关的证书。

表2-1 证书类型

下面详细介绍这三个在iOS项目中经常见到的证书类型。

AppStore方式:可以提交AppStore发布的最终极版本,但是只能通过AppStore下载安装。三种开发者账号均可以申请该签名方式。

Adhoc方式:允许设备不通过AppStore下载而直接安装,然而,对于Adhoc方式发布的App或者在真机调试时,苹果公司会由一个文件来限制可安装的设备列表,里面是iOS设备的UDID(设备标识),每个设备只有一个独一无二的UDID,只有在文件中添加了UDID的设备,才允许安装Adhoc的包,每个开发者账号在缴费周期内只允许100台设备添加到文件中,也就是最多只有100台设备可以安装Adhoc签名的包。同样,三种开发者账号均可以申请该签名方式。

In House方式:又称企业签名方式,可以不通过AppStore下载,也不限制安装的设备数。这种签名方式只有企业账号可以申请。虽然不限制安装的设备数,但是苹果公司严禁企业签名的包流入用户手中,只允许公司内部小范围内安装体验,一旦发现有违规,就会做永久下架处理。所以iOS平台没有可供大量用户提前体验的灰度渠道。

本节只简单介绍苹果公司的账号和证书体系,以及对App开发和测试带来的影响,对于其中涉及的具体实现细节和一些加密算法没有做重点说明,网上相关的资料很多,感兴趣的读者可以自行查阅。

喜欢的朋友可以添加我们的微信账号:

51CTO读书频道二维码


51CTO读书频道活动讨论群:365934973

【责任编辑:book TEL:(010)68476606】

回书目   上一节   下一节
点赞 0
分享:
大家都在看
猜你喜欢

读 书 +更多

数据挖掘:概念与技术

本书第1版曾被KDnuggets的读者评选为最受欢迎的数据挖掘专著,是一本可读性极佳的教材。它从数据库角度全面系统地介绍了数据挖掘的基本概念...

订阅51CTO邮刊

点击这里查看样刊

订阅51CTO邮刊