我想計算設備上最後一個事件與當前時間之間的時間差。但用戶可以通過設置系統時間來手動更改時間,因此與實際時間的差異可能會有所不同。有沒有辦法計算正確的時差?移動設備上的時間計算
2
A
回答
3
您可以使用這兩個時期之間System.nanoTime()
,然後減去。與用戶更改設備時間時發生更改的System.currentTimeMillis()
不同,System.nanoTime()
不會受到影響。
以毫微秒爲單位返回最精確的可用系統計時器的當前值,即 。
此方法僅可用於測量經過時間及不 有關的系統或掛鐘時間任何其他概念。價值 返回代表納秒,因爲一些固定但任意時間 (也許在未來,所以值可能是負值)。這種方法 提供了納秒級精度,但不一定是納秒級 的準確度。沒有保證值的變化頻率。 跨度大於約 292年(263納秒)的連續調用之間的差異由於數值溢出而無法準確計算經過時間 。
1
試試這個
String time1 = "22:55:00";
String time2 = "23:05:00";
SimpleDateFormat format = new SimpleDateFormat("HH:mm:ss");
Date date1 = format.parse(time1);
Date date2 = format.parse(time2);
long difference = date2.getTime() - date1.getTime();
1
我用下面的代碼在我的遊戲中實現接近恆定的FPS:
long now = SystemClock.uptimeMillis(), then = this.then, actualSleep;
actualSleep = DT - ((now < then) ? (Long.MAX_VALUE - then) + now : now - then);
Thread.sleep((actualSleep < 0) ? 0 : actualSleep);
相關問題
- 1. 計算移動設備上的屏幕高度
- 2. 移動設備的時間選取器
- 3. 計算移動設備線性移動(Android)
- 4. 模態工作計算機上,但是當移動設備
- 5. twitter bootstrap - 響應式網頁設計:在移動設備上加載時間?
- 6. 移動設備上的ScrollTop
- 7. 移動設備上的StageVideo
- 8. 移動設備上的Mootool
- 9. 移動設備上的JqGrid
- 10. 如何測量移動設備上的網頁加載時間?
- 11. 改善角度2(300ms)移動設備上的響應時間
- 12. 如何使用c#讀取Windows移動設備上的時間
- 13. 如何計算玩家移動和AI移動之間的時間間隔
- 14. 圖片移動設備響應設計
- 15. 在移動設備上
- 16. InvalidAccessError在移動設備上
- 17. 如何計算移動設備的寬度和高度
- 18. 移動設備上的css網頁設計
- 19. OpenCL:GPU上的單個計算設備?
- 20. 倒計時暫停在移動設備上滾動,但不在桌面上
- 21. 移動設備上的jQuery動畫
- 22. 移動設備上的側滾動
- 23. Bootstrap 3在移動設備和計算機上應用不同的CSS
- 24. 計算文件副本/移動的估計時間?
- 25. 在ASP.Net中檢測計算機或移動設備
- 26. 移動設備聯網間斷的
- 27. 移動設備連接的適當超時時間是什麼?
- 28. 如何計算Android設備中的網頁加載時間?
- 29. KnockoutJS - 重新計算計算值與設定的時間間隔
- 30. 在頁面加載時隨計算機時間移動的DIV