TestFlight 拒绝构建“get-task-allow”错误

Posted

技术标签:

【中文标题】TestFlight 拒绝构建“get-task-allow”错误【英文标题】:TestFlight rejecting build "get-task-allow" error 【发布时间】:2012-05-03 16:39:37 【问题描述】:

所以我使用 testflightapp 来分发临时构建。

但我不断收到此消息:'无效的配置文件:分发构建权利必须将 get-task-allow 设置为 false。'

我的应用没有权利文件,因此 XCode 会自动生成一个并将其包含在构建中。 我解压 App.ipa 并打开 embedded.mobileprovision 文件并查看权利字典。

看起来像这样:

<key>Entitlements</key>
<dict>
    <key>application-identifier</key>
    <string>E9PBH9V8TB.*</string>
    <key>get-task-allow</key>
    <false/>
    <key>keychain-access-groups</key>
    <array>
        <string>E9PBH9V8TB.*</string>
    </array>
</dict>

其他人以前经历过这种情况吗? 我不明白为什么会出现此错误。

【问题讨论】:

【参考方案1】:

结果是我的构建配置中的代码签名身份与我在保存存档以进行 Ad-Hoc 分发时选择的身份不匹配。

【讨论】:

也解决了我的问题,谢谢! (我相信你现在可以检查你的答案了。) 你能解释一下这是什么吗?您指定代码唱歌识别的两个不同位置在哪里? @luisperezphd 在 XCode 4 中单击蓝色项目图标。在侧边栏中打开的页面中,您可以选择项目和目标,即您的应用程序,它们都有自己的构建设置和自己的代码签名设置。我刚刚更新了两者以匹配我想要的,它解决了问题。 我必须这样做,但要了解更多细节,我必须在发布部分使用“iPhone Distribution:company xxx”并将配置文件设置为无(我认为这是 xcode 5 & 多于)。然后在进行临时分发时使用配置文件。 我不得不将我的代码签名身份更改为其他内容和配置文件,然后将它们重新设置回去,它又开始工作了。【参考方案2】:

呵呵,我突然发现Release构建的Code Signing Identity改成了iOS Developer。 您应该将其更改为 iOS Distribution。如果它不能解决您的问题,请为 Release 构建设置 Provisioning profile

它对我有用。编码愉快!

更新:有时 XCode 不会应用此更改,重新启动 XCode 可能会有所帮助。无论如何,在上传到 Testflight 之前,我强烈建议您检查构建日志。您应该找到这一行“使用代码签名身份”,并查看 XCode 是否使用正确的代码身份分发)进行签名。它可以为您节省大量时间。

【讨论】:

【参考方案3】:

奇怪的是,重新启动 xcode 并重新归档会有所帮助。它确实对我有用。 :-)

(TestFlight ios App get-task-allow Issue)

【讨论】:

如果它之前可以正常工作并且刚刚发生此错误,那么重新启动 XCode(并重新启动操作系统)将解决此问题。 令人震惊的重启频率。这让我发疯了。正在做一个点发布,除了版本没有改变任何设置【参考方案4】:

我在 XCode 5 中遇到了这个问题。我的配置文件设置正确,但我没有“权利”文件。为了解决这个问题,我选择了目标应用程序,然后选择了“功能”选项卡。我打开了一个或两个可用选项(iCloud、Game Center、Passbook 等),因此 XCode 会创建一个“权利”文件。创建文件后,我关闭了刚刚打开的选项。同样,我构建并归档了项目,并且能够将 .ipa 文件与 TestFlight 一起使用。(见下面的屏幕截图)

【讨论】:

【参考方案5】:

我也有同样的问题。

如果您遵循 TestFlight 说明,则应禁用目标中的权利配置 --> 摘要。

"向下滚动并展开 Summary 选项卡中的 Entitlements 部分。在以前的 Xcode 版本中,您需要创建一个 Entitlements 文件并创建一个 get-task-allow 键。这不再需要。除非您的应用程序需要围绕 iCloud 或 Keychain Access 的特殊权限,您不需要创建此文件。不要选中 Enable Entitlements 复选框。"

但对我不起作用,希望对你有用。

【讨论】:

【参考方案6】:

大多数情况下,您使用开发配置文件签署您的应用程序。

您必须确保使用Ad Hoc Provisioning Profile签署您的应用程序。

来自Testflight web site

【讨论】:

【参考方案7】:

我遇到了同样的问题。我登录到 Apple Provisioning Portal,结果发现我的 Ad-hoc 分发配置文件无效,并带有黄色警告标志。

我删除了旧的配置文件,创建了一个新的并在 XCode 发布设置中选择了它。 (确保您先转到 XCode Preferences、Account 并刷新provisioning profile)

【讨论】:

【参考方案8】:

我遇到了同样的问题。通过检查和更改我用来签署构建的身份来解决它。帮我修好了。

【讨论】:

您能详细说明一下吗?【参考方案9】:

如果您的 Entitlements.plist 文件中没有任何重要的内容,另一件可能有效的方法是删除该文件。奇怪的是,这对我有用。

【讨论】:

【参考方案10】:

即使在项目和目标设置中设置了正确的代码签名后,我也多次遇到此问题。 我重新启动了 XCode,创建了另一个 IPA 并将其上传到 Testflight。效果很好。

所以我总结为: 1) 首先检查代码签名细节和配置文件是否正确。 2)如果你仍然面临这个问题,相当XCode。重新启动它并再次存档。重新上传新创建的存档,此时一切都应该没问题。

【讨论】:

【参考方案11】:

如果有人在 Xcode 7.3.1 中遇到此问题并且重新启动没有帮助,请先尝试 Validate bunle,然后再尝试 Upload to App Store...

【讨论】:

以上是关于TestFlight 拒绝构建“get-task-allow”错误的主要内容,如果未能解决你的问题,请参考以下文章

iOS TestFlight构建通知电子邮件反复未收到[关闭]

iTunesConnect:处理已停止提交到 testflight 的应用程序

由于需要模拟账户,testflight 的外部测试被拒绝

由于在测试信息 TestFlight 中缺少测试帐户的用户名和密码,二进制文件被拒绝

testflight上架被拒重新提交APP审核教程

如果应用在 TestFlight Beta 审核中被拒绝,这是不是会影响同一版本的应用商店审核?