从另一个应用程序打开 HealthKit 应用程序
Posted
技术标签:
【中文标题】从另一个应用程序打开 HealthKit 应用程序【英文标题】:Open HealthKit App from another app 【发布时间】:2014-08-12 08:26:45 【问题描述】:我想构建一个将数据上传到 HealthKit 的健身应用。有没有办法从另一个应用程序打开/导航到 HealthKit?
【问题讨论】:
【参考方案1】:在 ios 10 上,健康应用 URL 方案为 x-apple-health
。您可以通过调用在您自己的应用中打开它:
目标-C:
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"x-apple-health://"]];
斯威夫特:
UIApplication.shared.open(URL(string: "x-apple-health://")!)
见Open Health app using url scheme | Apple Developer Forums。
【讨论】:
仅适用于 iOS 10+。我认为 iOS 8 或 9 上的 Health 应用没有注册的 URL 架构。 @bickster 没错,它似乎不适用于 iOS 8 或 9。我已经更新了我的答案。谢谢! 有谁知道如何打开特殊视图?比如步数或体重? 这没有正式记录或支持,并且可能随时更改。我不建议你使用这个。【参考方案2】:iOS 不提供用于启动其他应用程序的通用 API,并且 Health 应用程序需要支持 URL 方案才能从您自己的应用程序中启动它。见Launch an app from within another (iPhone)。
【讨论】:
【参考方案3】:Swift 5“更安全的方式”
func openUrl(urlString: String)
guard let url = URL(string: urlString) else
return
if UIApplication.shared.canOpenURL(url)
UIApplication.shared.open(url, options: [:], completionHandler: nil)
用法:
openUrl(urlString: "x-apple-health://")
【讨论】:
以上是关于从另一个应用程序打开 HealthKit 应用程序的主要内容,如果未能解决你的问题,请参考以下文章
如果您使用的是 Apple Watch,是不是需要先打开 Health App 同步数据,然后再打开自己的 healthkit 应用程序获取最新数据?