我有一个小的android问题,我需要有一个计时器来计算从特定活动打开到该活动中的某个按钮被点击的持续时间,活动打开的时间。虽然谷歌搜索我发现TimerTask但这似乎只运行一个线程一段时间,而且doesent似乎是我的小Android体验的工作的理想选择
有关如何计算持续时间的任何想法?优选地,以非常简单的方式
非常欢迎任何帮助
此致,MilindaD
只需使用System.currentTimeMillis()
捕获活动开始和停止的时间。例如。:
long startTime = System.currentTimeMillis();
// wait for activity here
long endTime = System.currentTimeMillis();
long seconds = (endTime - startTime) / 1000;
从Java 8开始,有更方便的方法。
Instant start = Instant.now();
...
Duration.between(start, Instant.now())
这种方法的好处是由Duration类提供的更灵活的API。
https://docs.oracle.com/javase/8/docs/api/java/time/Duration.html
如果您想了解活动的开放时间。
你可以写相应的代码
- onResume()方法onPause()方法。
根据您的需要。
并使用以下代码
long t1 = new Date().getTime();
long t2 = new Date().getTime();
long t3 = t2 - t1;
group:'org.apache.commons',名称:'commons-lang3'
StopWatch stopWatch = new StopWatch();
stopWatch.start();
...
stopWatch.stop();
stopWatch.getTime(TimeUnit.SECONDS);