在HealthKit中,您创建一个HKObserverQuery,执行它,然后执行enableBackgroundDeliveryForType。
let backgroundQuery:HKObserverQuery = HKObserverQuery(sampleType: quantityType, predicate: nil) { (query, complete, error) -> Void in
}
self.healthKitStore.executeQuery(backgroundQuery)
self.healthKitStore.enableBackgroundDeliveryForType(
quantityType,
frequency: .Immediate,
withCompletion: { (success, error) -> Void in
if !success {
println(error)
}
})我想知道如果我调用disableBackgroundDeliveryForType,它是只是禁用已注册的HKObserverQuery还是也会删除它?
发布于 2015-05-31 21:46:46
禁用后台传递不会停止观察者查询。它只会阻止你的应用程序在后台被恢复到被告知新的样本。当应用程序处于前台时,当有新数据时,观察者查询的updateHandler将继续执行。你必须打电话给HKHealthStore.stopQuery(backgroundQuery)来阻止它。
https://stackoverflow.com/questions/30544491
复制相似问题