我的應用程序使用Android 4.4.X中引入的step detector sensor API's在後臺步數計數中執行。SensorEvent.timestamp不一致
對於我的應用程序來說,瞭解每個步驟事件產生的確切時間(至少精確度)至關重要。
因爲我執行的是sensor batching,調用時間onSensorChanged(SensorEvent event)
與步驟事件發生的時間不同 - 我必須使用event.timestamp
字段來獲取事件時間。
瞭解這個字段的文檔是:
在納秒的時間在該事件發生
問題:
在一些設備(例如摩托X 2013)似乎這個時間戳是啓動以來納秒內的時間,而在某些設備(如Nexus 5)中,它實際上會返回納秒內的通用系統時間,與System.currentTimeMills()/1000
相同。
我明白了,有已經是一個 old open issue有關,但由於傳感器配料介紹 - 成爲使用此字段知道事件的時間很重要,它不可能再依靠System.currentTimeMills()
我的問題:
我應該怎麼做才能在所有設備上獲得系統毫秒級的事件時間?
我相信你的解決方案是我能得到的最佳答案。謝謝 – 2015-04-08 17:12:22
哇,這是令人難以置信的。 – Michael 2017-10-09 04:23:57