Я только начал разрабатывать простое приложение для Android, пока еще изучаю платформу.
Я использую Eclipse IDE с плагином ADT 0.9.6.
Мне нужно знать, возможно ли просмотреть Activity
стек, связанный с задачей?
Есть ли какой-нибудь способ через инструмент DDMS или через любой другой метод?
По сути, мне нужно иметь возможность видеть активность задачи в стеке, чтобы убедиться, что приложение работает должным образом.
Я знаю, что можно управлять поведением задачи в некоторой степени с помощью флагов в Intent
объекте и с помощью некоторых атрибутов <activity>
элемента.
Однако было бы неплохо иметь своего рода инструмент - особенно в режиме отладки или около того - который позволял бы разработчикам видеть Activity
стек прямо вперед.
android
android-activity
микрофон
источник
источник
Ответы:
Из командной строки вы можете использовать:
adb shell dumpsys activity
Это попросит менеджера активности распечатать дамп его текущего состояния. Первая часть этого - полная история действий, организованная по заданию. После этого напечатано много материала, поэтому вам, возможно, придется немного прокрутить, чтобы найти то, что вы хотите.
Вот пример выходных данных (точное содержание зависит от версии платформы), показывающий, что главной задачей являются контакты с двумя действиями, а за ним запускается одно действие:
источник
adb shell
<enter>dumpsys activity | grep -i run
.adb shell dmpsys activity
вы можете получить для каждого списка, например,adb shell dmpsys activity activities
ACTIVITY MANAGER ACTIVITIES, который содержит основной стек, Выполняемые действия и Недавние задачи.dumpsys activity intents
для ожидающих намерений;dumpsys activity broadcasts
для состояния вещания;dumpsys activity providers
для провайдеров контента;dumpsys activity services
за услуги;dumpsys activity processes
для запуска процессов.adb shell dumpsys activity | grep -i run
илиadb shell dumpsys activity activities | grep -i run
для более чистого вывода.Вы можете использовать следующую команду в командной строке, чтобы увидеть задачи и backstacks в системе:
Или вы можете попробовать TaskLogger , простой инструмент, который я создал, который может отслеживать все действия и задачи в вашем приложении и выводить их в Logcat в режиме реального времени.
источник
Я знаю, что это старый вопрос, но эта функциональность теперь встроена в Android Studio:
Затем в полученном текстовом файле найдите
ACTIVITY
(все заглавные буквы):источник
Если вы хотите проверить стек задач определенного пакета, подойдет следующая команда:
источник
Я всегда проверяю эту часть длинных сообщений дампа ..
Примечание. Прогон №4 - это действие, которое вы видите сейчас на экране. :)
источник
Вы можете использовать инструментierarchyviewer.bat. Это часть Android SDK. Это работает только с эмулятором, хотя. Но это намного удобнее и понятнее.
Изменить: я только что нашел средство просмотра иерархии в Eclipse! И это работает с реальными устройствами. Просто откройте перспективу Windows-> Open Perspective-> Hierarchy View. В списке вы увидите все подключенные устройства и эмуляторы и стек активности. Кроме того, в виде дерева вы можете увидеть гораздо больше информации о самом представлении.
Изменить: Средство просмотра иерархии будет работать только с устройствами разработчика. Производственные устройства не могут сделать это по соображениям безопасности. Для получения дополнительной информации, пожалуйста, посмотрите на следующий ответ
источник
Для списка последних задач
Для списка запущенных сервисов
Для списка текущих поставщиков контента
Для списка состояния вещания
Для списка ожидающих намерений
Для списка разрешений
источник
AdbCommander
плагин и добавить эти команды воmacros
вкладкуТеперь для этого есть плагин:
https://plugins.jetbrains.com/plugin/12293-activity-stack-view
источник
Решение: «adb shell dumpsys активность» не работает с TabActivity. Когда выбран каждый элемент вкладки, будет запущено соответствующее действие. Но когда используется операция adb shell dumpsys, всегда возвращается основная операция:
источник