HKStatisticsQuery过时

时间:2015-01-05 16:06:41

标签: ios objective-c health-kit

我正在运行HKStatisticsQuery来获取当天的总步数。

返回的数据仅在我上次打开设备上的Health应用程序时才准确。如果当天没有打开Health,则查询返回0步。这种情况一直发生。

似乎打开Health应用程序会触发统计计算或重新计算。

统计查询是否总是过时的?有没有办法手动强制重新计算或刷新?

我的代码看起来像这样:

// Request daily step count
NSPredicate *todayOnly = [HKStatisticsQuery predicateForSamplesWithStartDate:[MYDataManager startDate] endDate:[NSDate date] options:HKQueryOptionNone];
HKQuantityType *stepCount = [HKQuantityType quantityTypeForIdentifier:HKQuantityTypeIdentifierStepCount];

HKStatisticsQuery *todaysStepsQuery = [[HKStatisticsQuery alloc]initWithQuantityType:stepCount
            quantitySamplePredicate:todayOnly 
            options:HKStatisticsOptionCumulativeSum 
            completionHandler:^(HKStatisticsQuery *query, HKStatistics *result, NSError *error) {
                // Return result
                completion(result);
            }];

可以使用HKSampleQuery和观察者查询,但这似乎打败了甚至进行统计查询的整个目的。我几天前已经提交了雷达19368739,没有回应。

0 个答案:

没有答案