HealthKit关于不能获取及时数据的问题

昨天重构公司代码, 有计步功能的模块需要重构, 之前的代码是用CoreMotion框架来实现, 乍一看没有任何问题, 但是疯狂摇手机.....哔了🐶

本着完美主义的原则, 打算使用HealthKit来实现, 查了很多资料都是复述基本使用的, 但是通过Simple还是不能拿到及时的数据更新,  不过昨晚睡了一觉豁然开朗了哈哈哈, 使用HKObserverQuery就可以解决.

话不多说 附上代码.

Demo  密码:8ti1

不对的地方感谢指点, 求大神轻拍脸

补充一下想要防止恶意数据填充可以使用HKQuantitySample类下的sourceRevision.source.name和当前设备名判断

昨天还看到有的同学对NSPredicate的options选项有疑问这里给大致翻译一下

HKQueryOptionNone:

样本的开始时间必须等于或晚于目标的开始时间,样品的结束时间必须早于目标的结束时间。

HKQueryOptionStrictStartDate:

样本的开始时间必须等于或晚于目标的开始时间,样品的开始时间必须早于目标的结束时间。

HKQueryOptionStrictEndDate:

样本的结束时间必须等于或晚于目标的开始时间,样品的结束时间必须早于目标的结束时间。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,873评论 19 139
  • 今天中午刚吃完饭,一回来就看见一封,来自三年级的挑战书。这封挑战书是关于足球的。 难怪这几天终是看到三...
    luguanyu阅读 4,048评论 10 5
  • 修改 view 的不透明度时, 一定要先把 opaque 属性设置为 NOhttp://www.tuicool.c...
    以太死多阅读 1,472评论 0 0
  • 你是不是也总在怀念? 最近总是不自觉的想起高中时的人和事。我们是不是总是这样,在高中时怀念初中,到大学是怀念高中?...
    他的猫不见了阅读 3,157评论 0 0
  • 不知你是否也和我一样,在漫长的青少年期,一直有一个远在天边又近在眼前的伙伴:别人家的孩子。他/她亦真亦幻,男女莫测...
    双栖蚊阅读 1,346评论 0 0

友情链接更多精彩内容