我正在尝试对步数进行 HKStatisticsQuery,其谓词会忽略用户输入的值。
我发现用户输入的值和被动记录的值之间有 2 个差异:
来源: -
被动记录的值的源为“A's iPhone”
- 用户输入的值的源为“健康”
'Was User Entered' 元数据键: -
被动记录的根本没有元数据键
- 用户输入的值将 'Was User Entered' 元数据键设置为 true
我已经尝试过这个谓词,试图只获取“用户输入”设置为 false 的数据:
HKQuery.predicateForObjectsWithMetadataKey(HKMetadataKeyWasUserEntered, allowedValues: [false])
我没有得到任何结果,有人帮助我意识到,如果它是被动记录的,元数据密钥甚至都不存在(有点多余......)
鉴于上述差异,有人知道提取被动记录数据的任何其他方法吗?我在想
NSPredicate(format: "%K != %@", HKPredicateKeyPathSource, "Health")//crash
当我执行查询时,这个谓词不起作用并且使我的程序崩溃。
有谁知道它为什么会崩溃,或者是否有更好的方法来实现我清除用户输入数据的目标?
谢谢。