我想更新苹果健康的生日。但我不知道怎么做。
这是我的授权功能:
private func requestAuthorisationForHealthStore() {
let dataTypesToWrite = [
HKCharacteristicType.characteristicTypeForIdentifier(HKCharacteristicTypeIdentifierDateOfBirth),
HKQuantityType.quantityTypeForIdentifier(HKQuantityTypeIdentifierBodyMass),
HKQuantityType.quantityTypeForIdentifier(HKQuantityTypeIdentifierHeight)
]
let dataTypesToRead = [
HKCharacteristicType.characteristicTypeForIdentifier(HKCharacteristicTypeIdentifierDateOfBirth),
HKQuantityType.quantityTypeForIdentifier(HKQuantityTypeIdentifierBodyMass),
HKQuantityType.quantityTypeForIdentifier(HKQuantityTypeIdentifierHeight)
]
self.healthStore?.requestAuthorizationToShareTypes(NSSet(array: dataTypesToWrite),
readTypes: NSSet(array: dataTypesToRead), completion: {
(success, error) in
if success { println("User completed authorisation request.") }
else { println("The user cancelled the authorisation request. \(error)") }
})
}
为了请求生日,我打电话给我的部门:
func requestAgeAndUpdate() {
var error: NSError?
let dob = self.healthStore?.dateOfBirthWithError(&error)
if error != nil {
println("There was an error requesting the date of birth: \(error)")
return
}
self.ageLabel.text = "\(dob)"
}
但是我怎样才能通过编程来更改/更新生日呢?
谢谢你的帮助!
最佳答案
您不能通过编程更改这些特性。用户必须通过运行状况应用程序输入此数据。
从documentation
HKCharacteristicType类是
HKObjectType类。HealthKit使用特征类型来表示
通常不会随时间变化的数据。不像其他物体
类型,特征类型不能用于创建新的HealthKit
物体。相反,用户必须输入和编辑其特征数据
使用健康应用程序。只有在询问时才使用特征类型
获取从HealthKit存储区读取数据的权限。
关于ios - Swift HealthKit更新生日,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/25965336/