Отладка веба
Смотреть веб внутри приложения через DevTools
Запросы, ошибки консоли и HTML веб-страниц внутри приложения — в обычных инструментах разработчика Chrome, рядом с телефоном.
Зачем: во многих приложениях часть экранов — это веб-страницы. Когда там что-то ломается, DevTools показывает, какой запрос упал и какую ошибку выдала страница, и в баг-репорте будет написано, что именно сломалось, а не просто «не работает».
Что происходит
Заголовок раздела «Что происходит»- Вкладка DevTools находится рядом с телефоном. Это инструменты разработчика Chrome, подключённые к WebView приложения — встроенному браузерному движку, который показывает веб-страницы внутри приложений.
- Network показывает все запросы страницы. Красная строка — запрос с ошибкой; нажмите на неё, чтобы прочитать заголовки и ответ.
- Console показывает сообщения страницы и ошибки с файлом и строкой, откуда они пришли.
- Elements показывает HTML и стили — для багов вёрстки.
- Продолжайте пользоваться телефоном: всё новое появляется сразу.
Полезно знать
Заголовок раздела «Полезно знать»- Holtdroid включает отладку WebView при старте приложения. APK не меняется и не пересобирается.
- В строке над DevTools виден адрес страницы. Введите другой адрес и нажмите Enter, чтобы открыть его в WebView; кнопка слева перезагружает страницу.
- Если в приложении несколько веб-страниц или процессов, выберите нужную в списке целей рядом с адресом.
- Iframe (страница внутри страницы) не отдельная цель: откройте Console и выберите его в меню
top ▾в левом верхнем углу консоли.
Если не работает
Заголовок раздела «Если не работает»- DevTools пустой, «Waiting for a WebView…»: на текущем экране приложения нет веб-содержимого. Откройте ту часть приложения, где оно есть.
- На настоящем телефоне DevTools пустой: на телефоне без root свои WebView показывают только отладочные (debug) сборки. Попросите debug-сборку или используйте виртуальное устройство.
- Приложение закрывается сразу после старта: некоторые приложения отказываются работать на рутованных или эмулированных устройствах. Попробуйте настоящий телефон.
Подробнее: WebView DevTools.