[英]How to update UI and ask Permission for Healthkit
現在我正在開發一個與 iOS 中的 Healthkit 相關的應用程序。 我正面臨一個問題。 在第一個視圖控制器 HomeVC 中,當我嘗試請求 healthkit 權限時,它工作正常,並顯示系統屏幕以獲取權限。
但是同時,我必須在征得許可的情況下在 viewcontoller 上設置 UI 元素的布局,所以我在 viewDidload 方法中添加了一些代碼來更新 UI。 在這種情況下,當我請求許可時,許可屏幕沒有顯示並顯示白屏,並且在控制台中出現以下錯誤。
錯誤域=com.apple.healthkit 代碼=100“授權會話超時” UserInfo={NSLocalizedDescription=授權會話超時}
有沒有辦法解決這個問題?
添加到 info.plist 文件中。 添加以下信息屬性列表->隱私-健康更新使用說明描述->應用程序想要訪問您的健康包以提供更好的健身效果
func authorizeHealthKit() {
let healthKitTypesToRead : Set<HKObjectType> = [
HKObjectType.characteristicType(forIdentifier: HKCharacteristicTypeIdentifier.dateOfBirth)!,
HKObjectType.characteristicType(forIdentifier: HKCharacteristicTypeIdentifier.bloodType)!,
HKObjectType.quantityType(forIdentifier: .stepCount)!,
HKObjectType.quantityType(forIdentifier: .activeEnergyBurned)!
]
let healthKitTypes: Set = [ HKObjectType.quantityType(forIdentifier: HKQuantityTypeIdentifier.stepCount)!, HKObjectType.quantityType(forIdentifier: HKQuantityTypeIdentifier.activeEnergyBurned)! ]
let healthKitTypesToWrite : Set<HKSampleType> = []
if !HKHealthStore.isHealthDataAvailable() {
print("error")
return
}
self.healthKitStore.requestAuthorization(toShare: healthKitTypesToWrite, read: healthKitTypesToRead) { (success, error) in
print("request authorized succesfully")
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.