iOS的开发过程不同于Android,要想把应用打包出来以至装到手机上,需要先申请苹果开发者证书。
整个过程比较繁琐,分为生成证书和打包安装两大步。
生成证书
前提是已经有通过认证的苹果开发者账号,注意不仅仅是Apple ID,需要那种付过年费的开发者账号!
证书生成过程推荐使用Linux或macOS系统,Windows系统需要额外安装openssl工具。
- 生成key和csr文件
openssl genrsa -out ios.key 2048
openssl req -new -sha256 -key ios.key -out ios.csr
- 生成cer文件,页面
https://developer.apple.com/account/ios/certificate/
,上传上一步中的csr文件去换取。 - 添加 Identifier,页面
https://developer.apple.com/account/resources/identifiers/list
也就是app id; - 添加 Profile,页面
https://developer.apple.com/account/resources/profiles/list
,这一步最后会得到 mobileprovision文件 - 最后生成p12文件
# 分发版证书
openssl x509 -in ios_distribution.cer -inform DER -outform PEM -out ios_distribution.pem
openssl pkcs12 -export -inkey ios.key -in ios_distribution.pem -out ios_distribution.p12
# 测试版证书
openssl x509 -in ios_development.cer -inform DER -outform PEM -out ios_development.pem
openssl pkcs12 -export -inkey ios.key -in ios_development.pem -out ios_development.p12
至此证书就生成好了。
打包安装
打包时要填的Bundle ID就是上面第3步中填的Bundle ID,要保持一样,上面生成的p12文件、mobileprovision文件还有相关的密码都是需要的。
打出来的ipad包如果不想上架到app store又要把安装到手机,可以按如下流程走:
- 生成iOS Development相关的证书,注意不是iOS Distribution的。在这个过程中需要添加设备的UDID,这个可以通过爱思助手去看;
- 使用上一步中的证书打包ipa;
- 使用爱思助手将ipa包安装到手机,iOS16以上的手机会提示"需要在开发者模式下进行,启用开发者模式前,此App不可用",这时需要进行如下操作:打开手机上的 设置->隐私与安全->开发者模式,会提示重启手机,重启之后就可以打开了。
- 如果是已经打好的ipa包,可以在爱思助手中找开工具箱里的签名工具,使用第一步中的证书重新签名,再导入安装到手机就好,无需二次打包。