计算持续时间

10

我有一个小的Android问题,我需要计时器来计算从特定活动打开到在该活动中点击某个按钮的时间间隔,即活动打开的持续时间。 在谷歌搜索时,我找到了TimerTask,但它似乎仅针对一定时间间隔运行线程,从我的少量Android经验来看并不理想。

您有任何关于如何计算持续时间的想法吗? 最好以非常简单的方式实现

欢迎任何帮助

此致, MilindaD

4个回答

22

只需使用System.currentTimeMillis()来捕获活动开始和停止的时间。例如:

long startTime = System.currentTimeMillis();
// wait for activity here
long endTime = System.currentTimeMillis();
long seconds = (endTime - startTime) / 1000;

这个代码可以得到秒数,有没有办法获取“分钟”,“小时”和“天数”?我不是指除以60的方法。我正在寻找比那更好的解决方案。是否有其他可用的方法? - praxmon
@PrakharMohanSrivastava - 请查看http://developer.android.com/reference/android/text/format/DateUtils.html。它可以为日期范围/持续时间提供一些漂亮的格式。 - frenziedherring

12

0

如果您想查找活动打开的时间长短。

您可以在以下方法中编写相应的代码

  • onCreate() 方法和 onDestory() 方法。 或者

  • onResume() 方法和 onPause() 方法。

根据您的需求使用以下代码

long t1 =  new Date().getTime();
long  t2 = new Date().getTime();
long t3 =  t2 - t1;

0

组: 'org.apache.commons',名称: 'commons-lang3'

 StopWatch stopWatch = new StopWatch();
 stopWatch.start();
       ...
 stopWatch.stop();
 stopWatch.getTime(TimeUnit.SECONDS);

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接