我们的应用程序被拒绝了,因为我们的应用程序没有提供选择共享数据的选项。
下一步 请在解决中心对此邮件的答复中提供以下问题的详细答案: 提供步骤,我们可以在您的应用程序中找到HealthKit集成,用户可以在其中选择他们想要共享的健康数据。我们只定位了一个“苹果健康”的进口功能。
然而,根据指南(https://developer.apple.com/design/human-interface-guidelines/healthkit/overview/),这完全不应该由应用程序来完成,而应该由iOS设置来完成。
仅通过系统的隐私设置管理健康数据共享。人们期望在“设置”>“隐私”中全面管理对其健康信息的访问。不要通过在你的应用程序中建立影响健康数据流的额外屏幕来迷惑人们。
苹果对我们的期望是什么?
发布于 2021-12-16 09:31:11
您需要向本机屏幕请求许可。
@IBAction func enableHealthKit(sender: AnyObject) {
var shareTypes = Set<HKSampleType>()
shareTypes.insert(HKSampleType.workoutType())
var readTypes = Set<HKObjectType>()
readTypes.insert(HKObjectType.workoutType())
healthStore.requestAuthorizationToShareTypes(shareTypes, readTypes: readTypes) { (success, error) -> Void in
if success {
print("success")
} else {
print("failure")
}
if let error = error { print(error) }
}
}
这里要求的是workoutType,但您可以要求不同的类型或其中的几种。然后,用户可以更改他们想要共享的设置。有关此代码示例https://cocoacasts.com/managing-permissions-with-healthkit的更多信息。
如果这对苹果来说还不够的话,你可以在设置中做一些按钮,用这个健康数据权限打开iOS设置。
https://stackoverflow.com/questions/70374670
复制相似问题