gpt4 book ai didi

objective-c - 必须在应用程序的 Info.plist 中设置 NSHealthShareUsageDescription 才能请求读取授权

转载 作者:太空狗 更新时间:2023-10-30 03:29:23 25 4
gpt4 key购买 nike

我有一个使用

的框架
_healthStore requestAuthorizationToShareTypes:writeTypes readTypes:readTypes completion:^(BOOL success, NSError *error) {

当我将框架包含到我的 iOS 应用程序中并将以下内容放入我的应用程序 info.plist 文件中时

<key>NSHealthShareUsageDescription</key>
<string>Read heart rate monitor data.</string>
<key>NSHealthUpdateUsageDescription</key>
<string>Share workout data with other apps.</string>

一切正常 - 不包括这些键会导致以下错误:

Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: 'NSHealthShareUsageDescription must be set in the app's Info.plist in order to request read authorization.'

我的问题是,在为框架运行单元测试时,它因上述错误而崩溃。我已将 key 放入框架和测试目标的所有 info.plist 文件中,但仍然发生崩溃。

为了运行测试目标, key 应该进入哪个 plist 文件?

(还应该提到我正在切换到 Swift3 的过程中——这是 Objective-C 中项目的一部分——在 iOS10 和 XCode 8 之前这一切都工作正常)。

我已经创建了一个带有适当单元测试的框架来显示问题:https://github.com/asensei/HKHealthStoreFrameworkUnitTestBug

最佳答案

您必须将 NSHealthShareUsageDescription 和 NSHealthUpdateUsageDescription 键添加到应用程序的 Info.plist 文件中。你这样做:

  1. 点击“Info.plist”文件

  2. 右键单击屏幕并选择添加行。

  3. 滚动到“隐私 - Health Share..”和“隐私 - Health Update..”

  4. 选择这两个,你应该是好的。

关于objective-c - 必须在应用程序的 Info.plist 中设置 NSHealthShareUsageDescription 才能请求读取授权,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39596622/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com