SuperAPI AI 工具集

axiom-code-signing-diag

通用与其它

查看项目

更新于 10-15 20:11

技能介绍

用途:在构建、归档或上传阶段出现代码签名失败时,按系统化流程定位根因,而不是盲目重写构建设置或重新生成全部证书。

主要能力:给出常见故障的成因分布(证书约30%、描述文件约25%、权限约15%、钥匙串约15%、归档导出约10%、身份歧义约5%);列出典型症状与对应原因(如“No signing certificate found”“Provisioning profile doesn't include signing certificate”、ITMS-90035/90161/90046、errSecInternalComponent、Ambiguous identity、entitlement 不匹配、扩展签名失败、本地成功 CI 失败等);提供六棵决策树与速查表。

必要用法:先做强制诊断步骤,再改配置。步骤1检查签名身份:security find-identity -v -p codesigning。步骤2解码描述文件:security cms -D -i path/to/embedded.mobileprovision,核对 ExpirationDate、DeveloperCertificates、Entitlements、ProvisionedDevices、Name。步骤3三方比对权限:codesign -d --entitlements - /path/to/MyApp.app、security cms -D -i embedded.mobileprovision | plutil -extract Entitlements xml1 -o - -、cat MyApp/MyApp.entitlements。步骤4比对证书 SHA-1:find-identity 输出与描述文件中 DeveloperCertificates 解码后的 openssl x509 -inform DER -noout -fingerprint -sha1 必须一致。CI 钥匙串常见修复:security create-keychain、security unlock-keychain、security set-key-partition-list -S apple-tool:,apple: -s -k pass build.keychain、security list-keychains -d user -s build.keychain login.keychain-db、security set-keychain-settings -t 3600 -l build.keychain。

适用场景:Xcode 本地构建、归档与导出、App Store 上传、CI 环境(如 GitHub Actions)签名失败排查。

限制:资料未提供具体平台版本、价格或收费信息;内容为诊断流程,不保证覆盖所有签名错误;命令与路径需按实际环境替换。