Не удается запустить Android Studio Layout Inspector: "Неожиданная ошибка: пустая иерархия представлений"

Кажется, не запускается макет Inspector на Android Studio 3.0 (Canary 3)

При подключении к моему устройству и приложению, выбрав "Инструменты" > "Android" > "Макет инспектор", появляется следующее диалоговое окно ошибок:

"Ошибка получения иерархии просмотров: Неожиданная ошибка: пустая иерархия представлений"

введите описание изображения здесь

Любая настройка, которую мне не хватает? У меня есть опции разработчика на устройстве.

Ответы

Ответ 1

В общем, у меня такое поведение, когда что-то "движется" в представлении, поэтому инспектор макетов не может извлечь простой макет, поэтому приостановка видео будет работать, но если у вас есть что-то более сложное, например, предварительный просмотр камеры или карта Google, это сложнее, а не уверен, как обойти это

Ответ 2

Если у вас есть ViewTreeObserver в вашем коде для измерения ширины/высоты представления, и вы меняете некоторую ширину/высоту/заполнение/и т.д. в результате вы получаете от addOnPreDrawListener ViewTreeObserver;

Просто прокомментируйте внутри onPreDraw или прокомментируйте весь код, относящийся к ViewTreeObserver.

Ответ 3

Я не могу запустить средство просмотра иерархии во время воспроизведения видео. Как только я приостанавливаю видео, он работает!

Ответ 4

Это может быть связано с вашей версией Android. Например, в моем случае эта ошибка возникает в Genymotion на Android 4. После перехода на Android 5 эта ошибка исчезла.

Ответ 5

В моем случае у меня было два подключенных устройства, одно устройство и эмулятор. И я должен был убедиться, что подключено только одно устройство. Тогда это сработало. Я был на Android Studio 3.2 Canary.

Ответ 6

Имела ли та же самая проблема в Android Studio v2.3.3, проблема была связана с объектом CountDownTimer, почему-то это вызывало проблему (возможно, из-за метода onTick). Комментируя это, я мог бы обычно использовать Layout Inspector. Возможно, вы используете что-то похожее в своем коде, попробуйте прокомментировать его и посмотрите, работает ли оно.

Ответ 7

Как ни странно, я получаю эту проблему, только если у меня включен Bluetooth. Работает каждый раз, когда я выключаю его.

Ответ 8

То, что я пробовал и не сработало:

  • убить процесс ADB и попробовал еще раз
  • очистка кеша и перезагрузка
  • удаление приложения, очистка сборки и повторная сборка
  • отключите устройство и подключите его снова

Наконец мне удалось решить эту проблему, отключив параметры разработчика, а затем включив его + включив отладку по USB.

Ответ 9

Была такая же проблема.

Не удалось захватить иерархию на эмуляторе.

Я использовал реальное устройство, и оно работало нормально.

Ответ 10

Я изменил свое устройство с Nexus 6 на Pixel XL. Тогда это сработало.

Поэтому попробуйте изменить свое устройство и посмотреть, решит ли это проблему.