当我调用以下函数读取dataOfBirth时,在设备上进行测试时,我一直收到错误的访问错误。我在Xcode 7 Beta中使用Swift 2.0
func updateUsersAge(){
do{
var error : NSError!
let birthdate = try currentHealthStore.dateOfBirthWithError()
let now = NSDate()
let dateComponents = NSCalendar.currentCalendar().components(NSCalendarUnit.NSYearCalendarUnit, fromDate: birthdate, toDate: now, options: NSCalendarOptions.WrapComponents)
let age = dateComponents.year
self.ageValueLabel.text = NSNumberFormatter.localizedStringFromNumber(NSNumber(integer: age), numberStyle: NSNumberFormatterStyle.NoStyle)
}
catch{
print("Not avaialble")
}
}
在AppDelegate中,currentHealthStore被定义为全局变量:
let currentHealthStore = HKHealthStore()
一旦执行以下行,就会收到错误:
let birthdate = try currentHealthStore.dateOfBirthWithError()
最佳答案
此代码在Swift 2 XCode 7.1.1中对我有效
let birthDay = try healthStore.dateOfBirth()
在使用错误将错误传递回之前,已使用名称dateOfBirthWithError。
关于ios - 读取dateOfBirthWithError中的HealthKit中的EXC_BAD_ACCESS,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/30947703/