Android 如何获取屏幕上最后一次触摸发生的时间?
我有一个活动,我有一个在活动启动时运行的线程。线程调用一个名为getTimeOfLastEvent的方法Android 如何获取屏幕上最后一次触摸发生的时间?,android,datetime,timer,screensaver,Android,Datetime,Timer,Screensaver,我有一个活动,我有一个在活动启动时运行的线程。线程调用一个名为getTimeOfLastEvent的方法 public long getTimeOfLastEvent(){ return 0; } 我希望这个方法返回我,例如从最后一个事件发生的时间到这个时刻(调用该方法的时刻)的毫秒数。“事件”一词指的是屏幕上的任何触摸。例如,如果用户触摸屏幕,然后离开手机4秒钟,此时调用getTimeOfLastEvent,我希望此方法返回我4秒钟(可能以毫秒为单位) 如果我在10秒后离开手机,屏幕将关闭,
public long getTimeOfLastEvent(){
return 0;
}
我希望这个方法返回我,例如从最后一个事件发生的时间到这个时刻(调用该方法的时刻)的毫秒数。“事件”一词指的是屏幕上的任何触摸。例如,如果用户触摸屏幕,然后离开手机4秒钟,此时调用getTimeOfLastEvent,我希望此方法返回我4秒钟(可能以毫秒为单位)
如果我在10秒后离开手机,屏幕将关闭,但如果我在10秒过去之前触摸屏幕,计时器将重置,我又得到了10秒…,我的问题是我不知道如何读取此计时器。使用OnTouch侦听器并执行
返回系统.currentTime()代码>用户可能会按home按钮执行某些操作并返回到我的活动,我不需要仅为我的活动进行控制。。。我需要来自系统的值,这个值决定屏幕是否关闭。这个方法对我有效…但我不知道在哪里调用它。我需要每隔60秒启动一个viewflipper。这根本不能解决上次触摸发生的时间问题。
static long timeLastEvent ;//initialize with appropriate value
public long getTimeOfLastEvent()
{
long duratin = System.currentTimeMillis() - timeLastEvent ;
timeLastEvent = System.currentTimeMillis();
return duration ;
}