Как добраться, когда произошло последнее касание на экране?

У меня есть активность, и у меня есть поток, который запускается, когда начинается действие. Поток вызывает один метод, называемый getTimeOfLastEvent,

public long getTimeOfLastEvent(){ return 0; } 

Я хочу, чтобы этот метод возвращал мне, например, миллисекунды с момента последнего события с этим моментом (момент вызова метода). Со словом «событие» я отношусь к любому касанию на экране. Например, если пользователь коснется экрана, а затем покинет телефон в течение 4 секунд, и в этот момент вызывается getTimeOfLastEvent, я хочу, чтобы этот метод возвращал мне 4 секунды (возможно, в миллисекундах единицы)

Если я выйду из телефона через 10 секунд, экран выключится, но если я коснусь экрана перед прохождением 10 секунд, таймер сбрасывается, и я получаю еще 10 секунд …, моя проблема в том, что я не знаю, как Чтобы прочитать этот таймер.

 static long timeLastEvent ;//initialize with appropriate value public long getTimeOfLastEvent() { long duratin = System.currentTimeMillis() - timeLastEvent ; timeLastEvent = System.currentTimeMillis(); return duration ; }