swift - 在后台访问 healthkit 锻炼
问题描述
我已经构建了一个应用程序,它从保存在服务器上的 healthkit(来自外部来源)收集锻炼数据,以便其他用户可以在 feed 中查看锻炼。我最初设置了在打开应用程序时要处理的查询,但后来意识到数据库只有在用户打开应用程序时才会更新,如果他们一周不打开应用程序会导致问题。
我已经研究了一个解决方案,但似乎苹果只允许您在用户手机解锁时访问 healthkit 数据。有没有办法在将新的锻炼添加到 healthkit 时运行 healthkit 查询,我可以在后台处理?
解决方案
设备锁定时无法可靠读取 HealthKit 数据;实际上,数据在锁定时与设备钥匙串一起被加密。在某些情况下,您可以在存储锁定时写入数据。
一种解决方案是提示用户定期重新打开应用程序以进行同步。
推荐阅读
- ios - 尝试通过 Apple 广告在 App Store 中下载应用程序时未提示 App Tracking Transparency 权限
- javascript - 解释为什么在第二个例子中 Animal 函数不是 dog 对象的构造函数?
- c# - 尽管 FEATURE_BROWSER_EMULATION 在网络浏览器中使用固定版本的 Internet Explorer
- python - 最小/最大数字程序,一旦插入负数就必须停止输入
- git - VSCode 本地 git 钩子
- solr - Solr 建议器:上下文过滤器错误地应用于 FileDictionaryFactory
- python - 获取两个列表之间所有可能的组合,包括多个连接
- reactjs - 在useEffect内部获取的useCallback用法不正确-ReactJS
- javascript - 与 Google 日历、Outlook 日历和 iCalendar “连接”的库
- flutter - 如何获得异步函数执行的时间?