Ну для начала определи понятие "активность".
Время работы процесса приложения?
Время, пока окно приложения активно, т.е. находится на переднем плане и/или имеет фокус?
Время, пока пользователь манипулирует клавиатурой и мышью, пока окно приложения активно?
Вот исходя из этого уже и гугли либо работу с процессами, либо работу с окнами (наверняка потербуется winapi), либо установку хуков на клавиатуру/мышь. Язык программирования выбираешь сам, так как тема не тривиальная, и бороться одновременно с инструментарием и с языком будет сложно вдвойне.