自从下载Xcode 11之后,我注意到设置断点,进入和遍历代码,调试器往往会挂起,有时一次挂起几分钟。我无法想象苹果会发布这样的东西,所以我假设我有一些放错地方的配置设置或其他东西。还有其他人注意到吗?如果是这样,是否有解决方法?当然,我不是唯一遇到此问题的人。
我们的应用程序已经从 Apple Watch 上的 HealthKit 捕获心率数据超过 2 年。但是,从 XCode 11 开始,这不再有效。事实上,应用程序崩溃并显示错误:'NSHealthUpdateUsageDescription must be set in the app's Info.plist。我在应用程序的 info.plist 文件中设置了 NSHealthUpdateUsageDescription 和 NSHealthShareUsageDescription 键。我已经阅读了所有论坛中的所有帖子,但没有找到应用程序因此错误而崩溃的原因,因为显然我已经设置了适当的键。我在几篇文章中读到描述一定很长(非常科学),所以我把我们的描述写得很长,但没有运气。
我们要求获得许多其他权利的许可,它们都可以正常工作。事实上,我们有一个步骤测试,它在 Apple Watch 上也能继续正常工作。
我应该这样说,我们已经将文本从我们的应用程序移到了可本地化的字符串中。这似乎无关紧要,因为 iOS 继续请求其他权利(相机使用、FaceID、位置等)的许可就好了。
我们创建了一个 InfoPList.strings 文件,试图了解为什么我们会继续收到此错误。想法是苹果正在寻找一个字符串并且无法找到它,所以它只是推出了通用的,几乎无用的错误消息。
<key>NSHealthShareUsageDescription</key>
<string>$(PRODUCT_NAME) would like to capture a snap shot of your heart rate for the purpose of using the data in a clinical research study. Please grant this permission to continue participating.</string>
<key>NSHealthUpdateUsageDescription</key>
<string>$(PRODUCT_NAME) would like to update your health usage with heart rate data. Actually …Run Code Online (Sandbox Code Playgroud)