扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
iOS 应用的证书选择
雨花台ssl适用于网站、小程序/APP、API接口等需要进行数据传输应用场景,ssl证书未来市场广阔!成为创新互联公司的ssl证书销售渠道,可以享受市场价格4-6折优惠!如果有意向欢迎电话联系或者加微信:18980820575(备注:SSL证书合作)期待与您的合作!
对于一个未上线 App Store 的应用,一般来说,开发者如果需要将应用安装到某些用户的设备上,就需要将应用导出为这些设备可以直接安装的安装包(.ipa文件),安装包能否正确导出,是决定了应用能否被正确安装到设备上的关键因素。其中,最关键的一个因素是,导出安装包时,应用所使用的证书(即:签名方式)。
开发者可以选择如下两种方式的证书签名方式,来导出应用安装包:
其中,具体使用哪种方式,取决于开发者拥有苹果开发者账号的类型。例如,如果开发者拥有的是苹果个人开发者账号,则可以使用 Ad-hoc 方式;如果拥有的是苹果企业开发者账号,则可以使用 In-house 方式。关于苹果开发者账号支持的证书类型,请见下表:
到目前为止,苹果为 iOS 应用共提供了三种类型的证书签名方式,每一种都有独特的用途。这三种分别是:
蒲公英会根据打包证书的不同,分别显示为 内测版 、 企业版 、 App-Store版 。
关于这三种类型的证书,区别如下表所示:
iOS开发都要走的路子那必定是证书的配置,尤其涉及到多人开发的时候,还要管理一些开发打包上线的一些权限。此时通过配置证书,再去手动生成描述性文件显得格外麻烦。
在进行证书的配置之前,可以先理一下原理。
如下图所示,在配置证书的时候,首先在配置证书的那台电脑上通过证书助理先生成一套当前主机的证书,这个证书是为了后来在开发者中心配置相关开发与发布证书需要用到的。
在开发中心通过绑定 母机 所生成的证书来生成对应的开发证书与发布证书,这里的两个证书的实际作用是用来 授权 相关主机的相关的操作权限的(打包发布),通俗点讲就是, 只有安装了这两个证书的电脑才能够有对应的权限去做相关的操作 。
有些情况下,团队中的部分成员是不需要打包以及发布的,所以对于这些开发成员是不用给他们相关的打包授权的,此时这里的 开发证书的P12 就是做这个事儿的,它是用来授权相关的成员是否能够有权限去打包的,所以对于这些成员就不需要给他们相关的P12文件了,如果想进行相关的正常范畴的开发(比如真机调试等),只需要给他们相关的 描述性文件 即可。同样的,推送证书也有相关的生产环境以及开发环境,推送证书的P12是用来授权相关的主机去进行推送操作的(一般三方的推送平台需要这些授权才能够进行相关的推送操作)。
目前有两种方式去进行证书的配置,分别是
这里推荐第二种方式进行开发,因为省去了很多配置证书的工作,只需要将团队中的开发成员加入到对应的开发组中即可完成配置授权。
加入团队开发者也很简单,也就三步:
在进行证书搭建的过程中需要注意 证书过期 的问题,因为目前开发证书的有限时间通常为一年,过期的时候需要重新生成一套新的证书来保证正常的打包上线等权限的正常授权使用。
注:申请 iOS开发证书就相当于为app申请一个证明这个app合法身份的一个身份证书。
Provisioning Profile决定了Xcode决定用哪个证书(公钥/私钥)来签署应用程序,将应用程序打包时嵌入到.ipa包里。安装应用程序时,Provisioning Profile将被拷贝到iOS设备中,运行iOS的设备也通过它来认证安装的程序。
Provisioning Profile将这些信息全部打包到一起,方便我们在调试和发布的时候使用。这样只要在不同的情况下选择不同的Provisioning Profile文件就可以了。
Provisioning Profile也分为2类,Development 和Product(Distribution),有效期和Certificates一样。
有两种情况:1.使用证书的app没有发布到appstore中,这个时候你是可以随意更换证书的;
2。已经发布的app,这种情况下是不能更换证书的,一个证书针对一个app;如果已经在线上的app,它的证书过期了,那么就要删掉原来的证书,从新申请一个新德证书,并更新程序。开发证书都是一年的有效期,一般会提前一个月提醒你到期,并不能使用。
区分苹果企业证书和个人证书的区别主要有两处:
(1)苹果企业证书生成描述文件时出现的打包方式界面
苹果企业证书生成描述文件时的打包方式主要是 Inhouse and Ad Hoc ,另外三个是不重要的。
(2)苹果个人证书生成描述文件时出现的打包方式界面
苹果个人证书生成描述文件时的打包方式主要是 App Store 、 Ad Hoc 。
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流