Ios 需要时如何申请健康工具包的授权?

Ios 需要时如何申请健康工具包的授权?,ios,cocoa,healthkit,Ios,Cocoa,Healthkit,在我的应用程序中,我集成了Apple HealthKit支持。我计算了如何为不同类型请求授权 然而,若用户转到健康应用程序,并将所有这些类型的授权更改回“否”,则我的应用程序将无法使用任何数据。再次调用requestAuthorizationToShareTypes不会再次为Health viewController带来选项 我在stackoverflow上找到了这篇文章,其中建议更改类型,这将欺骗健康应用程序再次打开其授权视图。它确实有效 有没有更简单、更合理的方法 非常感谢您的任何帮助 使用

在我的应用程序中,我集成了Apple HealthKit支持。我计算了如何为不同类型请求授权

然而,若用户转到健康应用程序,并将所有这些类型的授权更改回“否”,则我的应用程序将无法使用任何数据。再次调用requestAuthorizationToShareTypes不会再次为Health viewController带来选项

我在stackoverflow上找到了这篇文章,其中建议更改类型,这将欺骗健康应用程序再次打开其授权视图。它确实有效

有没有更简单、更合理的方法


非常感谢您的任何帮助

使用
authorizationStatusForType
检查是否允许访问,如果不允许,则显示警报,通知用户需要权限,并提供将他们带到设置页面进行修复

NSURL *url = [NSURL URLWithString:UIApplicationOpenSettingsURLString];
if ([[UIApplication sharedApplication] canOpenURL:url]) {
   [[UIApplication sharedApplication] openURL:url];
}

谢谢你,大卫,我想到了这个。这是唯一的选择吗?基本上,没有办法将用户发送到健康应用程序授权屏幕不止一次?一般来说,苹果用户权限的理念是,用户真的不应该被重复的权限请求骚扰。即使是这种方法也不应该采用,除非没有缺少权限的功能。