- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
我成功地在 Apple Watch OS 2 上没有锻炼 session 的情况下实时获取心率数据。但是当 Apple Watch 屏幕关闭时,我的完成 block 不再被调用。我想继续实时管理这些数据,并在心率过低时让我的手机响起。也许我可以让 iphone perma 上的应用程序永久打开,也许它可以在这次锻炼期间访问 healthkit 数据?你认为这行得通吗?还是您有其他想法?
问候
最佳答案
嘿,我找到了一个解决方案:
我将 iPhone 应用程序保持在前台:
[UIApplication sharedApplication].idleTimerDisabled = YES
通过与 apple watch (HKAnchoredObjectQuery) 相同的查询,我可以访问最新的健康工具包数据。即使我的 Apple Watch 关闭(进行锻炼),我也能很好地获取实时心率数据
HKQuantityType *type = [HKObjectType quantityTypeForIdentifier:HKQuantityTypeIdentifierHeartRate];
HKAnchoredObjectQuery *heartRateQuery = [[HKAnchoredObjectQuery alloc]
initWithType:type
predicate:nil
anchor:self.anchor
limit:HKObjectQueryNoLimit
resultsHandler:^(HKAnchoredObjectQuery * _Nonnull query, NSArray<__kindof HKSample *> * _Nullable sampleObjects, NSArray<HKDeletedObject *> * _Nullable deletedObjects, HKQueryAnchor * _Nullable newAnchor, NSError * _Nullable error) {
if (error) {
// Perform proper error handling here...
NSLog(@"*** An error occured while performing the anchored object query. %@ ***",
error.localizedDescription);
}
self.anchor = newAnchor;
HKQuantitySample *sample = (HKQuantitySample *)[sampleObjects firstObject];
if (sample) {
double value = [sample.quantity doubleValueForUnit:[HKUnit unitFromString:@"count/min"]];
dispatch_async(dispatch_get_main_queue(), ^(void){
self.heartrateLabel.text = [NSString stringWithFormat:@"%0.0f",value];
});
NSLog([NSString stringWithFormat:@"%0.0f",value]);
[self.hkStore stopQuery:heartRateQuery];
}
}];
[self.hkStore executeQuery:heartRateQuery];
关于objective-c - 即使 Apple Watch 屏幕关闭也能访问锻炼数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32300247/
关闭。此题需要details or clarity 。目前不接受答案。 想要改进这个问题吗?通过 editing this post 添加详细信息并澄清问题. 已关闭 7 年前。 Improve th
好吧,所以我目前正在学习继承,我做了一些事情,这是代码: class array { int [] arr; public array(int[] arr) {
我正在通过 Exercism.IO 学习 Python,我目前正在处理 Bob 问题,问题的对象如下: Bob is a lackadaisical teenager. In conversation
我构建了一个应用程序,可以从保存在服务器上的 healthkit(来自外部来源)收集锻炼数据,以便其他用户可以在提要中查看锻炼数据。我最初将查询设置为在应用程序打开时处理,但后来意识到数据库仅在用户打
尝试完成此 Exercism javascript 测试,但未按我的预期工作。 我对 switch 语句很陌生,所以这里可能会出错,也许使用数组是不必要的。无论哪种方式,我的最终 rnaString.
为了让我的健身应用程序的用户在 iPhone 上使用我们的应用程序时也能记录他们的心率,最好自动启动我们的 AppleWatch 应用程序并从那里检索用户的心率。这有可能吗?我很确定我曾经找到过一个
我是一名优秀的程序员,十分优秀!