所有安装到真机(非越狱)的应用(可以是 .app ,也可以是 .ipa ,只要编译时选的是编译成 Arm 的就好。.app 转 .ipa 只需要一条命令) 都必须经过证书签名。证书主要有三大种:
- 企业证书:$299/年,土豪专用。可以装到无限台手机上,但不能提交 app store 。一般用于企业内部软件。
- 收费个人开发者证书:$99/年。未提交 app store 前只能最多安装到 100 台设备上,并且该手机的 udid 号必须登记到此开发者证书上(在苹果的开发者平台上登记)。可以提交到 app store。
- 免费个人开发者证书:从 XCode 7 开始推出,仅用于开发中的真机调试。可最多安装到5台设备上(这五台设备必须通过连接开发者电脑的方式来登记到证书上),没有提交到 app store 的权限。
同时证书签名还有分 release 和 debug 的哦,只有 debug 拥有调试权限,可以用于自动化测试。至于安装方式,主要有2大类:
- 从电脑安装。Xcode,iTunes,ideviceinstaller,ios-deploy、PP助手等都属于这种。底层调用的是一样的协议,具体协议没研究过。。。
- OTA 安装,即从网络安装。大批量的安装大多用这种。具体调用的是苹果的 itms-service 协议。有兴趣的同学可以看看这里:https://m.oschina.net/blog/125501 。
其实还有一类,MDM,可以主动推送安装信息。实际安装方式类似 OTA ,但是能获得手机的 udid (MDM权限很大的哦),可以根据 udid 来推送合适的包。