【发布时间】:2018-11-28 16:14:58
【问题描述】:
今天,我在使用 WatchKit / WatchKit 扩展的应用程序中遇到了一个与 Info.plist 键相关的非常奇怪的错误。这里有问题的关键是NSHealthUpdateUsageDescription。当跟踪与 Apple 提供的 HealthKit 相关的任何数据时,需要提供简短描述。
这里的棘手细节是,当“存档”所述应用的构建以准备提交时。 XCode 说“由于上述原因,需要缺少密钥 NSHealthUpdateUsageDescription。
当应用程序的构建登陆 AppStore Connect 页面时,由于它的包 ID,它也指向它,然后它会消失,并且会从苹果那里收到一条错误消息。
尊敬的开发者,
我们发现您的应用最近交付的一个或多个问题, “AirTime - 数一数你的跳跃次数!”。请更正以下问题, 然后重新上传。
Info.plist 文件中缺少用途字符串 - 您的应用的代码参考 一个或多个访问敏感用户数据的 API。应用程序的 Info.plist 文件应该包含一个 NSHealthUpdateUsageDescription 键和一个 面向用户的目的字符串清楚完整地解释了为什么您的 应用程序需要数据。从 2019 年春季开始,所有提交到 访问用户数据的 App Store 将需要包含目的 字符串。如果您使用的是外部库或 SDK,它们可能会引用 需要目的字符串的 API。虽然您的应用可能不会使用这些 API,目的字符串仍然是必需的。您可以联系 库或 SDK 的开发人员,并要求他们发布 他们的代码不包含 API。学到更多 (https://developer.apple.com/documentation/uikit/core_app/protecting_the_user_s_privacy)。
最好的问候,
App Store 团队
搜索 SO,除了处理 CFBundleIcons 等问题之外,我还没有发现任何与 info.plist 关键问题相关的帖子。这不是重复的,我觉得这是一个对未来开发人员有用的问题回答。
谢谢
【问题讨论】:
标签: ios healthkit info.plist