2

我们正在开发一款健身旅程应用程序,该应用程序使用 HealthKit 将其他应用程序中的锻炼数据导入我们自己的应用程序。

大多数用户只需要提供读取权限。但在未来,有些人可能希望给我们的应用程序写入权限,以便将我们自己的信息添加到他们的健康应用程序中。

是否可以在两步过程中请求权限?目标是不要通过询问大量信息来压倒用户。

4

2 回答 2

3

第一个问题:

是的,只要您需要更多权限并提示用户即可。尽可能多的步骤。

写权限:

以后添加它们没问题。

iOS 10

没有什么可考虑的了。

感谢艾伦

高达 iOS 9.3

但这对您没有帮助:您可以将锻炼和活动能量写入 hk 数据库。但是,当您将锻炼和活动能量样本保存在 iPhone 上时,Apples Activity App 不会显示它们。

由于普通用户使用活动应用程序,因此他们觉得您的应用程序不起作用。即使确实如此。

(用 iOS 9.0 ... 9.3 测试)

附言

Apple 禁止以书面形式来锻炼分钟和站立时间。

如果您尝试,授权会在没有消息的情况下崩溃。

所以你不能为绿环或蓝环做出贡献。

测试我是否正确并在需要时提交错误报告。

于 2016-06-07T22:47:30.133 回答
0

是的,您可以在没有任何重大问题的情况下执行此操作。一个小问题,描述您为什么要访问的文本来自您的 Info.plist 文件,因此是硬编码的。虽然共享(读取)和更新(写入)都有单独的密钥,但内容需要适用于所有场景。

例如,如果您首先要求共享 Steps,然后要求共享 Heart Rate,则在这两种情况下,Info.plist 中的单个 NSHealthShareUsageDescription 键都将显示两次。

另请注意,iOS 10 SDK 需要这些密钥,因此您需要想出一个适用于这两种情况的单一措辞,而不会让用户感到困惑。

于 2016-06-17T21:35:04.500 回答