【发布时间】:2017-06-21 14:28:43
【问题描述】:
我们为客户提供了一个 iPad 应用程序,该客户要求我们向他们提供未签名的 .IPA 文件,然后他们使用自己的凭据对其进行签名并分发给他们的企业用户。
在 Xcode 8.3 之前,我已经能够使用以下命令创建未签名的 .IPA:
xcodebuild -exportArchive -archivePath $ARCHIVE_DIRECTORY'/'$APP_NAME'.xcarchive' -exportPath $OUT_PATH
从 Xcode 8.3 开始,该命令给我一个错误,说我需要提供一个 exportOptions.plist 文件,所以我创建了一个包含以下内容的文件:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>method</key>
<string>enterprise</string>
</dict>
</plist>
并使用与上述相同的命令并添加-exportOptionsPList ./exportOptions.plist。现在我得到了这个错误:
未指定“团队 ID”,并且在存档中未找到团队 ID
我尝试在我的 exportOptions.plist 文件中添加一个 teamID 键,但这也不成功,产生了这个错误:
没有属于 xxxx 团队的有效 iOS 分发签名身份 找到了。
(其中 xxxx 是我的团队 ID)
我已经搜索了解决方案并尝试了几个都没有成功。大多数建议的解决方案都适用于 8.3 之前的 Xcode 版本 - 最常见的建议是将 CODE_SIGN_IDENTITY="" 和 CODE_SIGNING_REQUIRED=NO 添加到导出命令中,但这对我的情况没有帮助(同样的错误)。
【问题讨论】: