所以我正在为android编写一个健身应用程序。我正在使用google fit api来计算步骤。
当应用程序在后台时,我使用录制api来计算步骤。一旦应用程序在前台,我就用历史api获取步骤计数,并显示在屏幕上。
结果是计数不正确。在得到正确的和更新的计数之前有一个延迟。
更具体地说,没有数据丢失。我猜录制api正在用特定的时间间隔进行更新。
我还使用了sensors api来显示我的活动在运行时的实际计数。例如,你可以在屏幕上看到300个步骤(实时数据)。关闭应用程序,再次打开它,然后在接下来的一分钟内,你会看到250个步骤。只有在一段时间后,history api才能捕获正确的数据并再次显示300。
有人想办法解决这个问题吗?
谢谢你,很抱歉发这么长的短信!

最佳答案

你说得对。录制api需要一些时间来更新。我想到了两种方法。
始终按历史API获取步骤。我的意思是,当活动运行时,只需提高历史api的检查率。这样做的好处是,虽然要花一些时间,但用户的计数总是一样的。
另一种方法更复杂一些。存储传感器的步数和时间,并应用一些逻辑,无论是否需要添加和显示给用户。
对不起,短信太长了。

07-24 09:48
查看更多