我有一个iOS应用程序,只要第三方设备,如Fitbit,Mi Band 3等更新它,就会读取HealthKit数据(心率)。目前,只要数据源是这些第三方健康设备,我就能够从HealthKit以前台和后台模式读取这些数据。但是,当iWatch更新HealthKit时,我无法读取任何内容。
我似乎需要为我的iOS应用程序提供授权才能访问iWatch数据。有一个需要访问数据的所有应用程序的列表。该列表目前为空,这意味着我的应用程序没有此访问权限。请参阅附图.
我已经为iOS应用程序实现了授权以读取HealthKit。我使用“功能”启用了HealthKit,并在Info.pList中添加了隐私选项到目前为止,授权iOS读取HealthKit的代码如下:
let readDataTypes : Set = [HKObjectType.quantityType(forIdentifier: .heartRate)!]
HKStore.requestAuthorization(toShare: nil, read: readDataTypes) { (success, error) in
guard success else{
print("error \(String(describing: error))")
return
}
我想为我的应用程序提供从HeathKit访问iWatch数据的授权。任何文件,链接和指导将不胜感激。
您可以像这样问这样的许可:
import UIKit
import HealthKit
class ViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view.
}
@IBAction func touchButton(_ sender: Any) {
let healthKitStore = HKHealthStore()
let healthData: Set = [
HKObjectType.quantityTypeForIdentifier(HKQuantityTypeIdentifierHeartRate)!
]
healthKitStore.requestAuthorizationToShareTypes(healthData, readTypes: healthData) { _, _ in }
}
}