问题标签 [hksamplequery]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
277 浏览

ios - 我可以继续阅读 HealthKit 的步骤吗?

目的是在用户完成所需步骤时触发方法。这是我的代码:

但是当我运行应用程序时,Xcode 显示:

我已经阅读了 HealthKit 文档,它说

HealthKit 在后台队列上异步执行查询。大多数查询在完成执行后会自动停止。

并且stopQuery:是停止长时间运行的查询。

我认为这两点才是真正重要的。

有没有可能达到目的?如果是这样,我该如何解决?

0 投票
3 回答
177 浏览

ios - 使用不同的变量异步多次运行某些代码

所以,我试图让我的应用程序读取HealthKit数据。我有一个从主应用程序视图控制器调用的函数,它会在另一个类中查询该月的所有健康数据。然后在数据数组从计算类中的单独函数返回到视图控制器中的单独函数之前进行一些计算。

由于数据量大,每个查询大约需要 2 秒。我希望能够异步设置它们,当它们全部返回时,我可以更新 UI。

问题是,我每个月都调用该函数,该函数开始运行HKSampleQueries,但它们没有按顺序返回,并且它们返回所需的时间各不相同。这意味着我最终会在一组数据计算中途更改变量,因为下一组刚刚开始。

我只知道解决这个问题的两种方法:

在调用每个计算之前设置延迟,如下所示:

但这会浪费应用时间

或者我可以多次复制代码并为每个月调用不同的类。但这似乎是愚蠢和低效的。

所以问题是。我如何有效地共享每次使用不同变量运行多次的代码。干杯

函数示例:

在视图控制器中:

在心率计算器中

完整代码:

// } }

0 投票
2 回答
1679 浏览

ios - HealthKit 无法读取步数数据

我正在使用 HealthKit 从我的 iOS 设备读取步数数据。

这是我的代码:

我在具有步骤数据的 iPhone6 上构建并运行代码,并且在设置 -> 隐私 -> 健康中,该应用程序确实被允许读取数据,但日志区域仅显示:

我在 for 循环和 上放了一个断点NSLog(@"error:%@", error),但应用程序没有中断。

有人可以帮忙吗?

0 投票
3 回答
8370 浏览

swift - 如何在 swift 中使用 HealthKit 获得步行和跑步距离

我正在制作健康应用程序。我想walkingRunningDistanceHealthKitSwift 中获得。但是,我有一个问题。返回值为 0.0 英里。

为什么返回值为 0 英里?

我的代码是这样的。

0 投票
1 回答
228 浏览

ios - watchOS 2 HealthKit HKSampleQuery 崩溃

所以我在调试分布式应用程序上的崩溃时遇到了问题。我无法亲自重现此崩溃。但是,似乎很多用户都遇到了问题。我怀疑这与 HKSampleQuery 有关,并且可能没有返回结果。但我不明白为什么当许多用户说他们允许我的应用访问他们的心率数据时没有返回结果。然后即使我们没有结果,它也应该只运行方法'displayError()',但它会崩溃......

Apple Watch 扩展接口控制器中运行的代码

终端中符号化的 Atos 崩溃输出

InterfaceController.(runHKSampleQuery(HKSampleType, mostRecentPredicate : NSPredicate, sortDescriptor : NSSortDescriptor) -> ()).(closure #1).(closure #1) (在 AppleWatch 扩展中)(InterfaceController.swift:76)

我在接口控制器的第 76 行添加了 4 ****,这是应该发生崩溃的地方。

崩溃中的堆栈帧

对此的任何帮助都会很棒。我不明白为什么会发生这种情况。干杯

0 投票
1 回答
247 浏览

ios - 具有累积聚合样式的 HKQuantityType 月份的统计信息

我需要使用累积聚合样式创建 HKQuantityType 月份的统计数据,例如在 Health App 中的年视图中。

HKStatisticsCollectionQuery 只能计算累积类型的总和。

现在如何运作。我正在制作 12 个 HKSampleQueries。每个任务都有一个谓词,其中包含一个月的开始和结束日期。然后我遍历每个查询结果以计算有样本的天数(一天可以包含多个样本)。准备好天数后,我将蛾子的总和除以天数。

主要问题是,如果我在一个飞蛾中获取所有样本,我会得到大约 10000 个样本。月数为 12,因此一年中的一个 Metric 大约有 120000 个样本。

我在后台线程中运行它,但在计算每个月的平均值时内存量约为 180mb,计算大约需要一分钟。

有没有可能在一个月内获得样本数量,按天摸索?我没有找到任何解决方案:(

0 投票
1 回答
1320 浏览

ios - 如何使用 Swift 从适用于 ios 应用程序的 HealthKit 获取循环持续时间

我正在创建一个从 health-Kit 读取数据的应用程序。我能够读取步数、跑步+步行等。现在我正在尝试读取骑车的日期和持续时间。这就是我用于跑步+步行的方法

一切都很好,但是当我尝试使用下面的代码读取骑行距离时,我得到的结果为零。骑行数据显示在 appleHealth 应用程序中,但为什么我的结果为 nil ?请帮忙

0 投票
3 回答
1989 浏览

ios - 如何使用 Swift 在 healthkit 中访问锻炼的元数据

我能够获得活动的基本数据durationtotalEnergyBurned。但是我怎样才能访问元数据HKWasUserEntered startDate呢?

到目前为止,这是我的代码

当我打印results时,我得到这个作为回报

[(46)“健康”(9.3.2)元数据:{ HKWasUserEntered = 1; 2016-07-18 10:58:00 +0500 2016-07-18 11:58:00 +0500]

所以基本上我怎样才能从中获取HKWasUserEntered和日期?

0 投票
1 回答
910 浏览

ios - 使用 Swift 从 HealthKit 读取日期间隔的步骤

我有这个方法可以从 HealthKit 中读取今天的步骤。

现在让我们说如果我想阅读从 2016 年 6 月 1 日到 2016 年 6 月 7 日每天的总步数

我该怎么做,请指导我谢谢

0 投票
2 回答
3897 浏览

ios - 从 HealthKit 获取昨天的步骤

我正在构建一个供个人使用的应用程序,目前我一直在坚持如何从 healthkit 中准确获取昨天的步骤。然后从那里,将它放入一个变量中(应该很容易,我知道)。

我有一个 HealthKitManager 类,它从视图内部调用该函数,然后将其附加到同一视图中的变量。

我已经搜索了大多数 healthKit 问题,并且我得到了数据,但我认为这不是准确的数据。我昨天的手机数据是 1442 步,但它返回 2665 步。最重要的是,当我尝试将数据放入变量时,它会打印为 0。

HealthKitManager 类

视图控制器类

从输出

从输出

所以,基本上我的问题是:

  1. 昨天的整个过程我需要什么 NSDate() ?
  2. 如何从昨天的步骤()中采取步骤并将它们正确放入 UpdateViewController 中的变量中?

感谢您的任何帮助!