Как узнать время работы приложения Android, используемого на переднем плане. я использовал UsageStatsManager, но он не возвращает список пакетов.
пример кода, использованный по этой ссылке
Как определить время переднего плана приложения?
Ответы (1)
Я думаю, что лучший вариант - использовать методы обратного вызова жизненного цикла вашей деятельности. Время начала onCreate() первой активности, которую вы показываете своему пользователю. Время окончания может быть немного сложнее. Прежде всего, если у вас есть несколько действий, пользователь может выйти из любого из них, поэтому вам нужно отслеживать открытое в данный момент действие и отправлять время окончания, только если следующее действие не появляется. Вторая проблема заключается в том, какой метод обратного вызова следует использовать? Вызов onPause() не гарантируется, а onDestroy() не будет вызываться до тех пор, пока приложение не будет очищено от недавних. Так что probablt onStop() — правильное место.
Или вы можете использовать обратные вызовы вашего приложения. Просто получите класс Application и используйте его обратные вызовы для отслеживания времени.