1. 证书(.P12)和描述文件(.mobileprovision)
IOS证书(.p12)和描述文件(.mobileprovision)是用于开发或者APP Store上架时打所需要的配置文件,等同于Android打包的证书签名
不过由于Apple的闭源策略,没有证书和描述文件的话APP是无法安装和运行到手机上的。
1.1 定义
证书(.P12)文件相当于公钥,描述文件(.mobileprovision)相当于私钥。
苹果规定开发证书p12文件只能申请2个,发布证书p12文件只能申请3个!达到数量限制后将无法据徐申请该类型的证书,如下图所示。
描述文件(.mobileprovision)是没有任何数量限制的!
证书(.P12)可以共用,一个证书(.P12)可以对应无数个描述文件(.mobileprovision)!所以就算P12申请一个也够用了,可以对应创建无数套iOS证书!所以对于证书数量的担忧是没有意义的!不会限制你上架多少个APP!
ios证书的有效期是一年,在我们软件的和开发者后台都能看到到期时间。
1.2 类型
-
开发证书和开发描述文件 开发证书用于APP开发包的打包安装,不会上架到APP Store,开发描述文件必须绑定调试设备,只有授权的设备才可以直接安装 App,一个描述文件最多绑定100台测试设备。
-
发布证书和发布描述文件 当APP开发测试好后上线就需要用到iOS发布证书,用iOS发布证书打包的ipa才能上传到App Store审核。
-
推送证书和推送描述文件 推送证书是用于推送通知的,平时我们在手机的系统栏下拉看到的那些消息就是推送通知,如果要做这个功能就需要配置推送证书。
-
企业证书和企业描述文件 企业证书需要企业开发者账号才能申请,其打包的APP可以不上架到APP Store也能被用户所安装,不同于开发证书,开发证书有需要绑定指定的安装设备,而企业证书打包的应用和APP Store里面的应用一样,不会限制设备
1.3 文件的删除
证书删除之后,对应的描述文件(.mobileprovision)会自动失效
证书(.P12)和描述文件(.mobileprovision)的删除分为以下两种情况
- 发布证书和发布描述文件:只要不更新已经上架的APP,也就是说生产环境的APP在当前版本不会受到任何影响。
- 开发证书和开发描述文件:删除了测试用的开发证书和描述文件,APP将打不开,需要重新申请证书打包重新安装。
1.4 证书的到期
P12证书到期了需不需要重新申请呢,具体看需要,如果你要更新已经上架的APP,如果要更新版本,那么需要删除到期的证书重新申请打包上传更新。
2.证书和描述文件的申请
证书和描述文件的申请主要进行如下几个步骤
- 生成证书请求文件
- 通过证书请求文件生成证书(.P12)
- 填写APP相关信息
- 添加调试设备(如果是开发证书)
- 生成描述文件(
.mobileprovision)
2.1 准备环境
- 开发者账号($99/year)
- Mac OS 10.9以上系统
2.2 前期工作
登录apple developer官网,找到account菜单
点击Certificates,IDs & Profiles 进入证书管理页面
2.2.1 填写你需要打包的APP信息
2.2.2 生成证书描述文件(.certSigningRequest)
不管是申请开发 (Development) 证书还是发布 (Distribution) 证书,都需要使用证书请求 (.certSigningRequest) 文件,证书请求文件需在Mac OS上使用 “钥匙串访问” 工具生成。
打开钥匙串访问
打开菜单 “钥匙串访问/证书助理/从证书颁发机构请求证书.."
选择下载到本地磁盘
得到证书请求文件(
.certSigningRequest)
2.3 开发证书和开发描述文件的申请步骤
2.3.1 生成开发证书
一般而言我们只需要一个开发证书和一个发布证书就行了,然后用证书可以去生成多个描述文件,对应多个APP
如果证书超出数量限制,需要revoke掉证书后才能新增,revoke后系统得等个1天左右才会不提示
*Maximum number of certificates generated*
在菜单页面找到Certificates点击 +号
这里选择2.2.2中生成的证书请求文件
在证书管理页面选择 “Certificates" 可查看到已申请的所有证书(TYPE:Development 为开发证书,Distribution为发布证书),点击页面的加号来创建一个新的证书。
证书下载后,双击保存到本地的 ios_development.cer 文件,会自动打开 “钥匙串访问” 工具说明导入证书成功,可以在证书列表中看到刚刚导入的证书,
接下来需要导出 .p12 证书文件,选中导入的证书,右键选择 “导出...”
给P12文件设置一个密码,Hubuilder云打包所输入的就是这个密码
2.3.2 添加调试设备
开发描述文件必须绑定调试设备,只有授权的设备才可以直接安装 App,所以在申请开发描述文件之前,先添加调试的设备。 在证书管理页面选择 “Devices”,可查看到已添加的所有设备信息,点击页面上的加号来添加一个新设备:
若要获取设备的UDID,可以使用 iPhone 或者 iPad 扫描下面的二维码即可获得当前设备的 UDID
或者,您也可以在 iOS 设备上打开下面的地址,即可方便的获取到当前设备的 UDID
注意:请根据网页的提示,安装蒲公英提供的描述文件。如果手机设置了锁屏密码,则需要根据提示输入锁屏密码。
2.3.3 申请描述文件
2.4 发布证书和发布描述文件的申请
2.4.1 生成发布证书
一般而言我们只需要一个开发证书和一个发布证书就行了,然后用证书可以去生成多个描述文件,对应多个APP
如果证书超出数量限制,需要revoke掉证书后才能新增,revoke后系统得等个1天左右才会不提示
*Maximum number of certificates generated*
和开发证书的申请相同,在菜单页面找到Certificates点击 +号
这里选择2.2.2中生成的证书请求文件
点击Download下载发布证书
在证书管理页面选择 “Certificates" 可查看到已申请的所有证书(TYPE:Development 为开发证书,Distribution为发布证书),点击页面的加号来创建一个新的证书。
证书下载后,双击保存到本地的 distribution.cer 文件,会自动打开 “钥匙串访问” 工具说明导入证书成功,可以在证书列表中看到刚刚导入的证书,
接下来需要导出 .p12 证书文件,选中导入的证书,右键选择 “导出...”
给P12文件设置一个密码,Hubuilder云打包所输入的就是这个密码