开发者账号分类
个人类(Individual 99刀一年)
组织类(Company公司 99刀一年;Enterprise企业 299刀一年)
个人开发者账号:
在上架App Store后,开发者直接显示申请人姓名。协作人数1人,个人使用。每一种Apple产品,均有各类设备各100台测试权限。适合简单的发布一个应用,适合个人用户。
公司开发者账号:
在上架App Store后,App开发者显示公司。每一种Apple产品,均有各类设备各100台测试权限。希望以公司品牌来发布应用,适合公司用户。多人协作。可以进行账号管理,可邀请多个Apple ID分不同的管理级别的权限:
(1)Agent是团队代理人,只能有一个,Agent账号具有所有权限。
(2)Admin:是管理员。具有管理Members的权限和上传发布app等权限。
(3)Member:是普通开发者。只有创建测试证书(dev)的权限,没有创建发布证书(dis)的权限。
企业账号:
不能用来上传app store。用这种证书打出来的包能在任何iOS设备上运行,不需要苹果的验证、签名。希望不审核,直接扫码下载应用。使用企业证书发布app有效期为12个月,假如过了有效期app则无法运行。
App ID(bundle identifier)
App ID即Product ID,用于标识一个或者一组App。
App ID应该和Xcode中的Bundle Identifier是一致(Explicit)的或匹配(Wildcard)的。
Explicit App ID:唯一的App ID,用于唯一标识一个应用程序。例如“com.apple.garageband”这个App ID,用于标识Bundle Identifier为“com.apple.garageband”的App。
设备(Device)
方法一:登陆苹果开发者网站,在网页上加入了新的DevicesID(即设备的UDID),重新生成一个包含此设备ID的证书描述文件,安装到使用的机器上,从而可以在xcode工程中进行选择该证书描述文件。
方法二:当在Xcode上,加入了开发者账户以后,连入一个新的设备可以自动点击注册该设备,会自动更新本机的证书描述文件了。
证书
证书是用来证明iOS App内容(executable code)的合法性和完整性的数字证书。对于想安装到真机或发布到AppStore的应用程序(App),只有经过签名验证(Signature Validated)才能确保来源可信,并且保证App内容是完整、未经篡改的。
证书的含义是对电脑设备开发资格的认证,其中包含公开密钥+证书名称+数字签名。
无论是什么开发者账号类型,都有以下这两种证书类型。
开发证书(Development) :用于开发阶段真机调试等。不仅在配置该电脑的证书可以使用,还可以生成副本安装到多台电脑上。(通过KeyChain)
发布证书(Production):用于提交到App store,或者是ad-hoc distribution):只有配置该证书的电脑才可以使用。导出副本也没用。
证书申请流程
1.创建证书申请文件(csr):钥匙串-证书助理-从证书颁发机构请求证书。
2.上传csr:登陆开发者网站,申请证书,选择csr上传。
3.完成,下载证书到本机使用。此mac机也就是配置该证书的电脑。
教程:https://www.jianshu.com/p/01224fc523d4
教程:https://ask.dcloud.net.cn/article/152
证书P12文件
P12证书
证书描述文件
Provisioning Profile文件包含了上述的所有内容:证书、App ID和设备。
下图为开发版的证书描述文件内容
自动管理证书
Automatically manage signing 选择了一个开发者账号以后,会自动创建一个开发证书(会同步到网上),以及只在本机自动创建两个描述文件:
一个是 iOS Team Provisioning Profile:*
一个是 iOS Team Provisioning Profile: 已有的appID
这两个描述文件只有AppID是不同的,一个是*,一个是已有的appID,而证书都是该开发者账号的所有development证书,设备ID都是所有的设置ID。
教程:https://www.jianshu.com/p/035ae1f1e563