|
本帖最后由 技术咨询-Kenny 于 2019-9-27 16:21 编辑
1、苹果开发者账号及其区别:
苹果的开发者账号分为个人、公司和企业三类。
- 个人是99$一年,只能个人使用,可以提交应用到AppStore;
- 公司的也是99$,但是可以邀请其它成员一起使用,可以提交应用到AppStore;
- 企业账号是299$一年,无法提交应用到AppStore,只能公司内部分发使用。
2、证书区别:
苹果开发网站创建证书时有development和distribution之分,即开发和正式环境,在APICloud上面一般使用distribution环境的证书(若使用APICloud推送必须是distribution环境的证书才能收到推送)。
个人和公司账号创建distribution环境证书时,有AppStore和Ad Hoc两种类型,AppStore类型证书用于发布到AppStore,编译的应用无法直接在设备上面安装(可以上传到AppStore Connect上面通过testFlight安装,或者在越狱机器上面安装);Ad Hoc类型证书可以添加测试设备,编译出的应用可以在这些测试设备上面安装。
企业账号创建distribution环境证书时选择In House类型,应用可以安装在任意设备上面。
3、APICloud需要用到的证书:
APICloud网站上面云编译时,若编译正式版需要上传一个.mobileprovision证书和一个.p12证书,输入的APP IDS要和mobileprovision证书对应的APP IDs一致(注意是填ID,不是name,也不需要输入teamID前缀),密码为导出.p12证书时输入的密码。若云编译时选择支持Apple Watch,那么在上传证书时还需要上传两个.mobileprovision证书。若使用APICloud推送服务,还需要在推送设置里面上传推送的p12证书。
为方便开发调试,可以分别上传正式和测试证书,编译的时候选择对应的证书。
证书制作教程:http://docs.apicloud.com/APICloud/%E6%8A%80%E6%9C%AF%E4%B8%93%E9%A2%98/iOS-License-Application-Guidance
4、常见问题:
1) 如何更改包名?
新创建一个应用后,iOS默认的应用包名为com.api.testapp加上一个日期,可以在应用概览里面查看。可以在上传证书界面上传自己的证书,在APP IDs处输入苹果开发网站里面创建的APP IDs(注意是填ID,不是name,也不需要输入teamID前缀),编译时选择自己的证书。
2) iOS9以上系统如何信任企业证书?
进入系统设置->通用->描述文件(或设备管理),信任证书后就可以进入应用了
5、证书引起的编译失败问题
上传证书后若编译失败,点开失败的日志链接,如果日志只有短短几行的话一般是证书的问题,然后看看日志是否符合以下情况:
1)、若出现error: Provisioning profile "xxx" has app ID "xxx", whick does not match the bundle ID "xxx",说明证书界面填写的包名和mobileprovision证书的包名不对应。
2)、若出现error: Provisioning profile "xxx" doesn't include signing certificate "xxx",说明mobileprovision和p12不对应,去苹果开发网站确认一下创建mobileprovision时选择的是哪一个certificate,然后使用那一个certificate导出的p12。
3)、若出现error: Provisioning profile "xxx" expired on xxx,说明mobileprovision证书过期了,需要去苹果开发网站更新一下mobileprovision,然后重新下载下来上传。
4)、若出现error: Signing certificate is invalid. Signing certificate "xxx", serial number "xxx", is not valid for code signing. It may have been revoked or expired,说明p12证书无效了,需要去苹果开发网站重新创建生成certificate,并更新mobileprovision,然后重新下载下来上传。
5)、若出现 Apple Push Services ,说明p12不对,错误的把推送的p12上传到编译证书这里了。
|
|