App Store Connect 操作错误:密钥 com.apple.developer.healthkit.access 的 ITMS-90164 []
Posted
技术标签:
【中文标题】App Store Connect 操作错误:密钥 com.apple.developer.healthkit.access 的 ITMS-90164 []【英文标题】:App Store Connect Operation Error: ITMS-90164 [] for key com.apple.developer.healthkit.access 【发布时间】:2021-04-19 02:07:00 【问题描述】:我现在在尝试上传到应用商店时遇到此错误,但我没有对我的 healthkit 功能进行任何更改,而且一切看起来都很好(见图)。为什么说值为[]
?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>aps-environment</key>
<string>development</string>
<key>com.apple.developer.healthkit</key>
<true/>
<key>com.apple.developer.healthkit.access</key>
<array/>
<key>com.apple.developer.icloud-container-identifiers</key>
<array>
<string>iCloud.codes.myndarc.newFitnessApp</string>
</array>
<key>com.apple.developer.icloud-services</key>
<array>
<string>CloudKit</string>
</array>
<key>com.apple.security.application-groups</key>
<array>
<string>group.com.myndarc.newFitnessApp</string>
</array>
</dict>
</plist>
【问题讨论】:
您确实有一个com.apple.developer.healthkit.access
的空数组,如错误所示。您应该删除此密钥,因为您不需要访问临床记录并且您的配置文件没有 HealthKit 功能权利
我遇到了同样的问题,但com.apple.developer.icloud-container-identifiers
在删除 com.apple.developer.healthkit.access 二进制文件后我也面临同样的问题
这对我有用——看起来苹果修复了这个错误
【参考方案1】:
com.apple.developer.icloud-container-identifiers 我也遇到了同样的问题。 我在 Signing and capabilities -> icloud 处检查了盒子容器, 然后问题已经解决了
示例:
【讨论】:
【参考方案2】:删除 .entitlements 文件中的以下行
<key>com.apple.developer.healthkit.access</key>
<array/>
这不起作用:(。二进制文件将被拒绝ITMS-90000: This bundle is invalid - $message.
什么对我有用: 首先,当您启用应用程序的 HealthKit 功能时:您还必须选中临床健康记录复选框!
接下来,您必须在应用的 Info.plist 文件中提供 Health Records Usage 字符串。
【讨论】:
我认为如果您删除此行,您也将删除您的 HealthKit 功能 是的,由于 ITMS-90034 二进制文件被拒绝:签名丢失或无效 !如果您为 TestFlight 提交应用程序,则此操作有效! 如果您提交应用程序以供审核,此操作无效:(。二进制文件将被拒绝 ITMS-90000:此捆绑包无效 - $message。但我添加了有关拒绝修复的更多信息。***.com/questions/65712473/… 前几天好像不行,今天我把<key>com.apple.developer.healthkit.access</key> <array/>
删了就可以提交了【参考方案3】:
我不会过多地更改我们的代码,这似乎是 Apple 方面的问题,希望他们能尽快修复。 https://developer.apple.com/system-status/
【讨论】:
截至美国东部标准时间下午 5:30,系统状态页面显示已解决,但我在尝试上传时仍然看到相同的错误。 任何来这里的人,我鼓励您向 Apple 提交反馈 遇到同样的问题并通过在文本编辑器中编辑 .entitlements 文件并删除 com.apple.developer.icloud-container-identifier 键来修复它。【参考方案4】:更新: 看起来 Apple 昨天(2021 年 1 月 21 日)解决了这个问题。我不再看到错误了。
我也有同样的问题。如果我正确读取了该错误,它会失败,因为 com.apple.developer.healthkit.access
的值在 App Store 配置文件和权利文件中不同。
而且确实不一样。
当我从 Xcode 启用 HealthKit 功能时,它会将其添加到权利文件中:
<key>com.apple.developer.healthkit</key>
<true/>
<key>com.apple.developer.healthkit.access</key>
<array/>
当我从 https://developer.apple.com/account/resources/profiles/list 创建 App Store 配置文件时,下载它并使用文本编辑器打开它,我看到了:
<key>com.apple.developer.healthkit</key>
<true/>
<key>com.apple.developer.healthkit.access</key>
<array>
<string>health-records</string>
</array>
我不确定是否可以设置配置文件为com.apple.developer.healthkit.access
设置的内容,因此看起来使它们具有相同值的唯一方法是从 Xcode 启用“临床健康记录”HealthKit 功能,以便它也将其添加到权利文件中。这听起来不像是正确的解决方案,因为即使您不使用它,它也会强制您启用“临床健康记录”。在我看来,这是 Apple 方面最近的一项更改,它改变了权利文件中的值与配置文件中的值的比较方式,因为它以前没有发生过,我既没有更改权利文件,也没有更改自上次成功发布应用以来的配置文件。
在我看来,从权利文件中删除 com.apple.developer.healthkit.access
密钥也不是一个正确的解决方案,因为当您这样做时,HealthKit 功能已从 Xcode 的“签名和功能”UI 中删除。而且我在这里看到有些人报告说,当你这样做时,该应用程序没有通过 App Store 审查。还有就是 Xcode 在添加 HealthKit 功能时将其添加到权利中,为什么我们需要手动删除它?
【讨论】:
【参考方案5】:我们遇到了同样的问题。将“健康记录”添加到权利文件并结合 plist 文件中的 NSUsage 描述肯定可以正常工作,但仍然是一种解决方法。由于我们不想访问临床健康记录,也不想将其显示在某个地方(App Store),这不是我们的解决方案。 是否有人不知道此更改是否会显示在某处,例如在 App Store 中?
【讨论】:
【参考方案6】:2021-01-22T02:34:25.810Z
:TestFlight 没有拒绝我的构建,包括
<key>com.apple.developer.healthkit.access</key>
<array/>
【讨论】:
是的,Apple 昨天似乎修复了它。以上是关于App Store Connect 操作错误:密钥 com.apple.developer.healthkit.access 的 ITMS-90164 []的主要内容,如果未能解决你的问题,请参考以下文章
App Store Connect 操作错误 Transporter 问题
Xcode 12 Beta 3:App Store Connect 操作错误
SwiftUI:App Store Connect 操作错误 itms-90476
App Store Connect 操作错误:无法连接到 Apple 的网络服务