我想计算设备上最后一个事件与当前时间之间的时间差。但用户可以通过设置系统时间来手动更改时间,因此与实际时间的差异可能会有所不同。有没有办法计算正确的时差?移动设备上的时间计算
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