如何区分 xcconfig 文件中的“Ad Hoc”和“App Store”代码签名身份?

Posted

技术标签:

【中文标题】如何区分 xcconfig 文件中的“Ad Hoc”和“App Store”代码签名身份?【英文标题】:How to distinguish between "Ad Hoc" and "App Store" Code Signing Identities in xcconfig files? 【发布时间】:2013-01-29 01:43:21 【问题描述】:

我正在尝试设置一个 Unity ios 项目以通过 Jenkins 运行自动构建。到目前为止,我已经让 Jenkins 触发了一个 Unity 构建,它生成了一个 XCode 项目。然后,将 xcodebuild 与 XCode 4.5.2 一起使用,我正在尝试生成一个 Ad-Hoc IPA 文件以在 Testflight 上分发。

为了在 XCode 项目中指定代码签名身份,我将一个非常简单的 xcconfig 文件传递​​给 xcodebuild。 xcconfig 文件如下所示:

//:configuration = Release
CODE_SIGN_IDENTITY[sdk=iphoneos*] = iPhone Distribution: Company Name

//:completeSettings = none

我遇到的问题是“iPhone Distribution: Company Name”不明确;它指的是“Ad Hoc”和“App Store”代码签名身份。当然,当我运行构建时,XCode 会选择 App Store 身份而不是 Ad-Hoc,这与我在这种情况下想要的相反。

有没有办法通过 xcconfig 文件指定我想使用 Ad-Hoc 身份?我无法以这种方式明确指定身份,这似乎很奇怪。

【问题讨论】:

【参考方案1】:

我还没有使用 Unity 和 TestFlight。

但一般的解决方案是为 AdHoc 和 AppStore 使用两个不同的 AppId。这样xCode可以自动选择正确的。

【讨论】:

以上是关于如何区分 xcconfig 文件中的“Ad Hoc”和“App Store”代码签名身份?的主要内容,如果未能解决你的问题,请参考以下文章

如何将 Ad Hoc 发送到我不拥有的设备

应用商店 Ad Hoc 配置文件无 beta 权利

创建 Ad Hoc Provisioning Profiles 是免费的吗?

IOS Ad Hoc 分发链接啥都不做

ad hoc,ad infinitum,ad interim,ad lib(英语中的直接拉丁外来词短语)用法

使用 Ad Hoc Provisioning Profile 在 Xcode 5 中验证存档