- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我使用 System.currentTimeMillis() 来节省用户启动 Activity 的时间。
public class TimeStamp {
protected long _startTimeMillis = System.currentTimeMillis();
public String getStartTime() {
return new Time(_startTimeMillis).toString();
}
该类在 Activity 启动时实例化并且 getStartTime() 返回正确的时间。我还尝试获取 Activity 开始后耗时。
public String getElapsedTime() {
return new Time(System.currentTimeMillis() - _startTimeMillis).toString();
}
使用模拟的 android 设备(android 4.0.3),这工作得很好。但是当我在我的真实 android 设备 (android 4.0.3) 上部署应用程序时,getElapsedTime() 从一个额外的小时开始,然后正常计数。所以在我的真实设备上,getElapsedTime() 将在 Activity 开始后返回“01:00:01”,但它应该返回“00:00:01”。
你知道为什么会这样吗?
最佳答案
您应该使用 SystemClock.uptimeMillis()
。
uptimeMillis() 是从系统启动后以毫秒计算的,并且保证是单调的,而 System.currentTimeMillis() 不是因为用户或应用程序可以随时更改它。此外,通常会启用自动时间同步,可以随时更改时间。
关于java - android - System.currentTimeMillis() 没有按预期工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11954985/
我正在用 Java 开发一个简单的 2D 游戏,一切正常。为了找到正确的 FPS 刷新/重绘/更新,我使用 currentTimeMillis 来查找差异。 问题是currentTimeMillis有
这只是我目前正在工作的一部分,我想使用 currentTimeMillis() 打印要加载图像的时间,有什么原因导致它不起作用? package method; import java.io.Prin
在我的应用程序中,我需要解析一个包含事件结束时间的 JSON。当此事件正在进行时,我需要计算完成该事件所需的时间。为此,我使用了这段代码: // I get the time and convert
我正在尝试使用 System.currentTimeMillis() 将毫秒转换为秒; System.out.println((int) System.currentTimeMillis() / 10
我正在使用 TestNG 编写单元测试。问题是当我模拟 System.currentTimeMillis 时,它返回实际值而不是模拟值。理想情况下,它应该返回 0L ,但它返回实际值。我应该怎么做才能
我正在尝试使用以下方法计算从现在起 100 天的时间: import java.util.Date; public class Main { public static void main(S
我们有一个主进程写入日志的情况。 然后,它产生多个写入其自己的日志的工作进程。 (我希望工作人员可以通过管理员进行登录,但是由于某种原因,对此想法产生了抵制。) 我想知道的是,我是否可以相信以多个文件
是否实现了方法System.currentTimeMillis()来对底层操作系统进行系统调用以接收当前时间? 我这么问是因为据我所知,该方法运行得相当快,只需要 6 个 CPU 时钟,但这没有意义,
因此,在我的 java 类(class)中,我们有一个作业,要求使用 System.currentTimeMillis 来显示单击之间的时间量。我已经尝试过了,但它不起作用。这是我的代码。 1 /*
我们正在使用一个 Web 服务,该服务通常需要 30-40 毫秒的时间。在该 Web 服务内,我们调用 System.currentTimeMills 38 次,以计算该服务内各种方法所花费的时间。
我正在尝试在名为 Point 的对象类上运行此测试(以提高计算速度),其中包含一些方法。它在其构造函数中接受三个输入/变量Point(String, double, double)。 我有这个想法,但
我想使用 System.currentTimeMillis() 比较两个不同的时间戳。 基本上我想检查时间戳是否在特定日期的 3 小时范围内。 如何做到这一点? 最佳答案 考虑到您有time1和tim
我正在创建一个文本文件,其中的时间戳源自 System.currentTimeMillis() 的结果。我的算法是这样的: 创建文件并记录创建时间戳 每次按下按钮时保存时间戳 从按钮按下时间戳中减去文
public class Clock { int second; int minute; int hour; boolean checkTime = true;
我需要获取 Java 中函数的执行时间。我知道可以使用两种方法:currentTimeMillis(); 和 nanoTime(); 但我了解到,如果我需要挂钟时间,currentTimeMillis
任何人都可以帮忙解释为什么它不打印时间吗? 当我尝试加载图像时?例如使用 java eclipse..currenttimemillis() 加载图像需要多长时间 我想提前向您表示衷心的感谢
出于某种原因,我得到了函数返回的一致 3600: private static long getCountdownLeft() { long now = System.currentTimeM
我需要秒表,我使用了 http://www.goldb.org/stopwatchjava.html 效果不佳,所以我尝试每 1000 毫秒写出一个值: stopWatch.start(); Hand
我正在尝试将当前时间保存到共享首选项中,但由于某种原因,当前时间在 47486 的遥远 future 年份中的数量太可笑了。 我已经检查了设备本身的日期设置,那里的日期是正确的,我在任何地方都找不到这
我的数据库中有 50000 条这样的 XML 记录: 11ca7070ad6eb3180c53281e7b597976 2011 8 6 19 26 40 utf-8 如您所见,我以分隔格式
我是一名优秀的程序员,十分优秀!