Удаленная отладка WebViews

Отлаживайте WebViews в собственных приложениях Android с помощью инструментов разработчика Chrome.

В Android 4.4 (KitKat) или более поздней версии используйте DevTools для отладки содержимого WebView в собственных приложениях Android.

Краткое содержание

  • Включите отладку WebView в вашем родном приложении Android; отладка WebViews в Chrome DevTools.
  • Доступ к списку веб-представлений с поддержкой отладки через chrome://inspect .
  • Отладка WebViews аналогична отладке веб-страницы посредством удаленной отладки .

Настройка WebViews для отладки

Отладка WebView должна быть включена в вашем приложении. Чтобы включить отладку WebView, вызовите статический метод setWebContentsDebuggingEnabled в классе WebView.

if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
    WebView.setWebContentsDebuggingEnabled(true);
}

Этот параметр применяется ко всем веб-представлениям приложения.

Совет . На отладку WebView не влияет состояние флага debuggable в манифесте приложения. Если вы хотите включить отладку WebView только в том случае, если debuggable имеет значение true , проверьте этот флаг во время выполнения.

if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
    if (0 != (getApplicationInfo().flags & ApplicationInfo.FLAG_DEBUGGABLE))
    { WebView.setWebContentsDebuggingEnabled(true); }
}

Откройте WebView в DevTools

На странице chrome://inspect отображается список веб-представлений с поддержкой отладки на вашем устройстве.

Чтобы начать отладку, нажмите «Проверить» под веб-представлением, которое вы хотите отладить. Используйте DevTools так же, как и для удаленной вкладки браузера.

Проверка элементов в WebView

Серая графика, указанная в WebView, представляет его размер и положение относительно экрана устройства. Если в ваших WebViews установлены заголовки, заголовки также отображаются в списке.

Поиск неисправностей

Не видите свои WebViews на странице chrome://inspect ?

  • Убедитесь, что для вашего приложения включена отладка WebView.
  • На своем устройстве откройте приложение с WebView, который вы хотите отладить. Затем обновите страницу chrome://inspect .