分类 iOS 下的文章

一、安装IOS证书(.p12)命令

//设置默认的钥匙串
security default-keychain -s ~/Library/Keychains/login.keychain
//解锁指定的钥匙串
security unlock-keychain -p [Mac登录密码] ~/Library/Keychains/login.keychain
//添加钥匙
security import [p12文件路径] -k ~/Library/Keychains/login.keychain -P [p12证书密码]

二、安装描述文件(.mobileprovision)命令

//获取描述文件中UUID
MOBILEPROVISION_UUID=`grep UUID -A1 -a [mobileprovision路径] | grep -io '[-A-F0-9]\{36\}'`
//拷贝文件至指定位置,并以UUID命名
cp [描述文件路径] ~/Library/MobileDevice/Provisioning\ Profiles/${MOBILEPROVISION_UUID}.mobileprovision"

此提示是因苹果正版签名(CodeSign)更新所致,导致所有之前macOS11以下系统打包的App在iOS14.6或者iOS15以上的设备会都提示需要更新才能正常工作。

解决方法:

首先打包环境mac升级到macOS11以上,此时打包会采用新的签名机制!
在升级到最新系统之后,重新通过Xcode打包生成新的安装包即可!
对于企业签的App,则需要企业签名提供商签名mac环境同样升级到macOS11系统之上重新签名方可解决

关键在于这一句:unable to build chain to self-signed root

是苹果开发者根证书有问题。

在钥匙串--系统处,有且只能有一个“Apple Worldwide Developer Relations Certificate Authority”。

如果看不到,检查左下角的种类是否选中为“所有项目”。已有旧的请删除。

然后点此下载最新的苹果开发者根证书:

https://www.apple.com/certificateauthority/AppleWWDRCAG3.cer

下载后双击导入,提示输入密码时请输入密码。

证书安装成功后,再次打包,就恢复正常了!