gpt4 book ai didi

android - 如何使用 JobScheduler 从后台应用程序获取步数

转载 作者:行者123 更新时间:2023-12-04 17:24:31 25 4
gpt4 key购买 nike

STEP_COUNTER 传感器的 Android 文档有点困惑。

根据这个:Android Sensor doc我应该始终注册 STEP_COUNTER 传感器,否则计步器传感器根本不会计数。这一切都很好并且按预期工作,直到我认为 Android 10 传感器事件不再发送到后台应用程序时。

然后我尝试听取 this other step counter doc 的建议建议使用 JobScheduler 定期读取最后一个值。现在,afaik 无法从传感器获取最新值,我必须像往常一样注册一个 SensorEventListener。

所以,现在我尝试结合这两个建议,总是注册计步器传感器,这样硬件传感器就会开始计数,因为当我注册我的监听器时我总是会收到一个新事件,我尝试注销并重新注册这个监听器当 JobScheduler 执行时,但无论我尝试了哪种方法,我都无法在运行 Android 11 的 Pixel 后台获得最新的步数。

我知道我们有 Google Fit,但对于这种特定情况,如果我也可以在 JobScheduler 按照文档中的指示运行时读出最新值,那么使用基本计步器就足够了。

有人知道这是否仍然可行,还是只是文档没有更新?

最佳答案

您的应用应处于前台模式以获取传感器数据。通过将前台通知附加到工作人员 (workmanager + setForegroundAsync) 为我工作。我认为如果前台服务处于 Activity 状态,您的解决方案也会起作用。

关于android - 如何使用 JobScheduler 从后台应用程序获取步数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64171907/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com