我是新来的:) 我正在用 android (java) 开发一个小应用程序,我需要一些东西来控制两个事件之间经过的秒数。
System.currentTimeMillis () 的问题是设备的用户可以更改他的系统日期,例如在第一个事件之后,所以当我在第二个事件之后取 System.currentTimeMillis () 返回的值时,我做了两个值之间的差异,这个获得的差异根本无效。
我尝试的另一个选项是 System.nanoTime ()。尽管用户更改了他的系统时间,但秒计数是有效的。但这里的问题是,如果在第一个事件之后,用户关闭了设备,则 System.nanoTime() 在第二个事件之后返回的值无效,因为随着设备重新启动,System.nanoTime() 的计数器也重新启动,因此,经过的时间再次无效。
考虑到用户日期更改和用户重新启动设备,有人知道计算两个事件之间秒数的任何方法吗?
提前致谢!