Во-первых, я не ищу время, потраченное на данное приложение. Уже есть «приложение для этого», com.android.settings/.UsageStats
, и множество поддерживающего кода в AOSP frameworks/base/services/java/com/android/server/am/UsageStatsService.java
и т. Д.
Код, который я исследовал до сих пор, похоже, не записывает прошедшее время, потраченное на конкретные <activity>
с . Я думал получить эту информацию двумя способами, но чувствую, что должно быть что-то чище и проще, которое использует больше существующего кода. Идеи были:
- Инструментируйте базовые
Activity
класс onPause()
и onResume()
, чтобы взломать отметку времени, и зарегистрируйте информацию в каком-то месте (возможно, в базе данных SQLite).
- Инструмент класса
Context
, чтобы делать заметки при вызове startActivity()
и друзей.
Так что вы думаете - что-нибудь лучше, чем эти варианты? Заранее спасибо!