4

Мне нужно устранить проблему, возникающую в веб-обозревателе, запущенном в моем приложении. Эта проблема возникает только в версиях Android, которые ниже или равны 4.3. Для моего приложения требуется обновленная версия услуг Google Play.Устранение неполадок веб-просмотра Android 4.3 в приложении, которое требует современных услуг Google Play

Для устранения проблем с моим веб-просмотром я обычно могу запустить свое приложение под Android-эмулятором (с последней версией Android), а затем подключиться к веб-просмотру через Chrome (используя chrome: // inspect) - веб-представление появляется в Chrome, и я могу просматривать DOM и отлаживать.

Чтобы запустить приложение под 4.3, я создал (по АДВ) нового устройства от существующего определения устройства, затем выбрал цель Google API (Google Inc.) - Уровень 18 API. Затем я установил приложение, но при попытке запустить его, я получаю сообщение об ошибке «Это приложение не будет работать, если вы не обновите службы Google Play». В предыдущем диалоговом окне есть кнопка «Обновить», но при нажатии ничего не происходит.

Затем я попытался отладить мою проблему с помощью Genymotion. Я создал устройство под 4.3, затем these instructions, чтобы запустить мое устройство с новейшими сервисами Google Play и установить мое приложение. Теперь я могу запустить приложение и воспроизвести проблему в этой моделируемой среде.

Теперь уловка заключается в том, чтобы иметь возможность подключаться к веб-представлению из моего локального браузера Chrome. Я включил удаленную отладку, как описано here. Теперь мое устройство появляется в Chrome, но веб-просмотр не отображается в инспекторе. Аналогично, если я открою новую вкладку под собственным браузером, она не появится в удаленном инспекторе. Если я открою новую вкладку в Android Chrome, я вижу, что она появляется под моим удаленным инспектором Chrome.

Я вижу два пути продвижения вперед и успешно доступ к DOM моей WebView:

  • Крепеж "Update" выпуск под Android эмулятора под управлением 4.3

Или

  • Подключение к моему веб-представлению от моего инспектора Chrome во время работы приложения под Genymotion

Любая идея о том, как решить одну из этих двух проблем?

ответ

2

Удаленные отладочные веб-представления работают только на устройствах с Android 4.4 и выше. взглянуть на это: https://developer.chrome.com/devtools/docs/remote-debugging

+0

Это было в документе, который я связал. Не могу поверить, что андроид не поддерживал это до 4.4, я честно, хотя, читая его, нужно, чтобы веб-представление нужно было настроить, чтобы его догнал инспектор, а до 4.4 он всегда будет доступен. Nevermind, должен найти другой способ справиться с проблемой, поскольку хромовый инспектор кажется бесполезным здесь. – flochtililoch

3

я использую weinre для иногда. это довольно хороший инструмент для отладки webview для Android 4.3 и ниже. Он обеспечивает почти тот же интерфейс, что и хром-отладчик.

Все, что вам нужно сделать, это:

Установите weinre

sudo npm -g install weinre 

стороне клиента:

Вставьте следующий код в разделе веб-страницы <head>.

Примечание: лучше поместить его в конец раздела <head>, иначе будут какие-то странные ошибки, и отладчик не появится.

<script src="http://<your server ip here>:8081/target/target-script-min.js"></script> 

стороне сервера

weinre --boundHost -all- --httpPort 8081 

Debugger

открыть инструмент отладчика из weinre с настольного браузера:

http://localhost:8081/client/ 

Наконец,

выберите любую цель в части «Цели», а затем начните отладку.

+1

Это прекрасно работает при локальном отладке, т.е. на том же компьютере, есть ли способ отладить реальное устройство, подключенное к серверу? В настоящее время я не вижу удаленных устройств, перечисленных – Samdeesh