0

我正在尝试从我的应用程序中启动Health应用程序。

我通常尝试使用以下代码行来启动应用程序,例如

 let mystr = "health://"
    let myurl = NSURL(string: mystr)!
    if (UIApplication.sharedApplication().canOpenURL(myurl))
    {
         UIApplication.sharedApplication().openURL(myurl)
    }
    else
    {
        print("unable to open")
    }

我尝试了上面的代码。我收到错误(“null”)。

请有人帮忙解决这个问题。

提前致谢。

4

3 回答 3

1

使用 iOS 10+ 试试这个:

let mystr = "x-apple-health://"

也许在objective.c中:

-(IBAction)openAppHealth:(id)sender {  
  [[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"x-apple-health://"] options:@{} completionHandler:nil];
}

带有适用于 iOS 10 的新 openURL openURL:在 iOS 10 中已弃用

于 2016-12-31T14:40:35.547 回答
0

您不能直接从您的应用程序中打开 HealthApp。因为操作系统仅支持使用UIApplicationOpenSettingsURLString. 如果我们使用 URL 方案打开 HealthApp,那么 Apple 可能会在审核过程中拒绝该 App。

于 2016-10-13T12:38:58.547 回答
0

我对 HealthKit 框架没有任何经验,但这是我发现的:

根据Open Apple Health programmatically您无法创建从您的应用程序到 Health 应用程序的深层链接,因为它不受支持。

如果您希望使用 Health 应用程序的数据,您必须在您的应用程序中实现 HealthKit 框架并请求用户许可。

我尝试使用适用于其他应用程序的代码深度链接到 Health 应用程序并获得与您相同的结果。

于 2016-10-13T12:43:08.053 回答