Intereting Posts
TextView: заставить его усекать без уважения к пробелам между словами Как отделить логику приложения от сетевого уровня в Android с помощью Retrofit 2 Можно ли использовать картографию для элемента списка и как Поймать, когда приложение Android пошло на задний план Почему я получил сообщение об отключенном эмуляторе-5554 Менеджер пакетов в Android Android – ImageView: setImageBitmap VS setImageDrawable Android: Как определить индекс символа позиции сенсорного события в TextView? Реализация функций USSD. Связывание службы с PhoneUtils без перезапуска телефона при каждом обновлении Как подключить javadoc к сервисам Google Play в Android Studio? Android EditText на longPress: ArrayIndexOutOfBoundsException: length = 15; Индекс = 491 Как я могу указать меньший шрифт, чем textAppearanceSmall? Как установить Spinner Default по его значению вместо позиции? Видео не приостанавливается в фрагменте ViewPager Как создать ActionBar, фон вкладки на выбранной вкладке

Как отслеживать использование приложений в Android? Как определить, когда запущена деятельность?

Мне нужно отслеживать использование приложений на Android, например, как это делает AppUsage (т. Е. Отслеживать количество запусков приложений и время, затрачиваемое на использование каждого из них). То, что я планирую сделать, это записать время начала, когда приложение запущено, а затем получить конечное время, когда приложение приостановлено или остановлено. В LogCat я могу видеть журналы запуска активности. Я посмотрел доступные системные трансляции, я не уверен, есть ли что-то, что транслируется всякий раз, когда начинается действие. , В основном, как определить, когда запущена деятельность?

Изменить: Кроме того, Android также имеет внутреннюю систему статистики использования, которая может быть найдена в приложении Spare Parts или когда набирается *#*#4636#*#* (Тестирование -> Статистика использования)

Solutions Collecting From Web of "Как отслеживать использование приложений в Android? Как определить, когда запущена деятельность?"

Теперь мы можем получить доступ к истории использования приложений на устройстве Android с новым API android.app.usage, выпущенным как часть Android 5.0 API. Система собирает данные об использовании для каждого приложения, агрегируя данные ежедневно, еженедельно, ежемесячно , И ежегодные интервалы

Для каждого приложения система записывает следующие данные:

Последний раз, когда приложение было использовано. Общее время, в течение которого приложение находилось на переднем плане за этот интервал времени (по дням, неделям, месяцам или годам). Запись таймера, когда компонент (идентифицированный по имени пакета и активности) перемещен в Переднего плана или фона в течение дня. Съемка временной метки при изменении конфигурации устройства (например, когда ориентация устройства изменилась из-за поворота)

Refr: http://developer.android.com/reference/android/app/usage/package-summary.html

В основном, как определить, когда запущена деятельность?

Вы этого не делаете. В Android SDK ничего нет «время начала запуска приложения» и «время окончания приостановки или остановки приложения».

То, что приложение, которое вы цитируете, вероятно, делает, тратит много времени на процессор, оперативную память и время автономной работы, постоянно осматривая ActivityManager .

Имейте в виду, что то, что вы предлагаете отслеживать, если вы планируете, чтобы кто-либо, кроме пользователя, обращался к нему, граничит с нарушениями конфиденциальности типа, получившего CarrierIQ, в достаточной степени сложности.