Подтвердить что ты не робот

Как отладить javascript в webview в android

У меня есть веб-просмотр, который отлично работает на iOS, но не на Android. Есть ли инструмент, в котором я могу подключиться к веб-обозревателю Android в браузере и отлаживать его с помощью firefox или консоли webkit? В настоящее время я понятия не имею, почему веб-браузер не работает на Android.

В iOS я могу открыть свой симулятор iPad или iPhone, открыть панель просмотра веб-страниц, а в браузере моего браузера я слушаю порт 9999, и он показывает мне инструменты, которые вы видите в инструментах разработчика/отладки webkit.

Я ищу аналогичный инструмент для Android или, по крайней мере, для начала отладки.

4b9b3361

Ответ 1

Отъезд weinre. Он предоставляет инструменты разработчика для Chrome для отладки браузеров WebKit для браузеров, работающих на удаленных устройствах.

Ответ 2

Если вы не используете Android 4.4, в соответствии с http://developer.android.com/guide/webapps/debugging.html вы будете наслаждаться способом отладки старой школы...

Если у вас нет устройства под управлением Android 4.4 или выше, вы можете отлаживайте свой JavaScript с помощью консольных JavaScript-API и просматривайте выводить сообщения на logcat.

Для Android 4.4 и лучше вам понравится удаленная отладка, см. https://developers.google.com/chrome-developer-tools/docs/remote-debugging#debugging-webviews

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

Ответ 3

Самый простой способ отладки WebView - подключить Android-устройство к компьютеру через USB и проверить WebView с помощью инструментов Chrome dev.

Итак, вам понадобится:

1) Активируйте отладку USB на нашем устройстве. Вы можете найти его Settings >> Developer Options >> Debugging >> USB Debugging (активировать флажок)

2) Подключитесь к компьютеру с помощью USB

Примечание. Если вы работаете в Windows, установите соответствующий USB-драйвер для своего устройства. Смотрите OEM-драйверы USB на сайте разработчиков Android.

3) Откройте браузер Chrome и введите поле URL: chrome://inspect/#devices

4) Подтвердите, что активировано "Обнаружение USB-устройств"

5) На вашем устройстве предупреждение предлагает вам разрешить отладку USB с вашего компьютера. Нажмите "ОК".

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

Более подробное руководство - Отладка Android WebView

Ответ 4

Это те шаги, которые я использую для отладки содержимого WebView в устройстве:

  • Включен режим разработчика на вашем устройстве.
  • Подключите устройство к ПК и включите USB-отладку (при необходимости установите драйвер)
  • Добавьте эту строку в свой собственный класс Application или в Activity, где загружается веб-просмотр

    //if your build is in debug mode, enable inspecting of webviews
    if (0 != (getApplicationInfo().flags & ApplicationInfo.FLAG_DEBUGGABLE)) {
        WebView.setWebContentsDebuggingEnabled(true);
    }
    
  • Откройте Chrome и перейдите в chrome://inspect, и вы увидите свое устройство в списке удаленных целей

  • Начните отладку своего приложения с Android Studio
  • Когда в макет будет добавлен WebView, на открывшейся вкладке появится скриншот с кнопкой Inspect, нажмите там, и консоль разработчика Chrome откроет

Ответ 5

Если вы ищете решение для отладки вашего javascript-кода, который запускается внутри webview, посмотрите на jsHybugger - отладчик JavaScript/HTML5/CSS для веб-просмотров Android.

http://www.jsHybugger.org

Ответ 6

Я работал с веб-просмотром с использованием javascript в своем предыдущем проекте, и я столкнулся с той же проблемой. Я не нашел способ напрямую отлаживать свой код, но я использовал javascriptinterface для отправки информации в свою деятельность. Таким образом, вы можете регистрировать действия вашего javascript или показывать сообщения с Toast.

Когда ваши java-методы не вызывают, обычно это означает, что вы сделали какую-то ошибку в своем JS-коде.

Я знаю, что это не высокотехнологичное решение вашей проблемы, но это что-то по крайней мере, и это сработало для меня.

Удачи, Wottah

Ответ 7

Попробуйте подключиться к ADB Logcat устройства, установив adb на рабочий стол...