Последние два дня я потратил, пытаясь понять, как отлаживать приложение HTML5, созданное с помощью Cordova 3.2 и развернутое на устройстве Android 2.3. Все статьи / сообщения, которые я видел, содержат хаки, а не реальные решения :( и в большинстве случаев ни один из них не работает в моем случае; отлаживайте стили css и код Angularjs внутри моего приложения.
Пока что тестировал;
debug.phonegap.com
Я внедрил сценарий в index.html
файл, затем посетил сгенерированный URL-адрес в debug.phonegap.com, но ничего не произошло; только пустая страница.
Weinre
Большинство статей, которые я нашел, указывают на устаревший репозиторий Github, который содержит файл Jar .. но он не найден :(
Осмотр края
Он работает и показывает веб-страницу, которую я просматриваю на ПК внутри мобильного телефона .. Но проблема в том, что он использует какой-то другой встроенный браузер (или эмулятор), чем тот, который запускает приложения для телефонной связи; поэтому результаты неточны.
Эмулятор Chrome
То же, что и Edge inspect; он не позволяет просматривать реальный веб-комплект v530, поставляемый с Android 2.3.
Решение мечты
Идеальным решением было бы расширение для Google Chrome (настольный компьютер), которое позволяет переключить настольный браузер на тот же, что и на платформах Android 2.3; без эмуляции, без хаков, только сам браузер с web-kit v 530.
К сожалению, такого решения не существует :( или я ошибаюсь?
Какие-либо предложения?
Ответы:
ДЛЯ ANDROID:
Вам нужно только включить «USB-удаленный отладчик» на вашем устройстве Android и подключить USB-кабель. Затем откройте свое приложение на устройстве. Chrome обнаружит удаленный браузер, и вы сможете увидеть консоль так же, как при локальном использовании Chrome.
Используйте эту ссылку:
chrome://inspect/#devices
в браузере Chrome (вам нужно будет вставить его в панель навигации).Если ваше приложение вылетает на устройстве, вам нужно только просмотреть журнал консоли в своем браузере и посмотреть, что произойдет. Вы также можете добавлять функциональные возможности, изменять переменные и переопределять функции точно так же, как мы это делаем в нашем локальном браузере.
Прочтите эту статью, чтобы узнать, что нужно предпринять.
Это будет работать ТОЛЬКО с устройствами под управлением Android 4.4+.
ДЛЯ iOS:
Используйте Safari для iOS, выполните следующие действия:
1. На устройстве iOS перейдите в Настройки> Safari> Дополнительно> Веб-инспектор, чтобы включить веб-инспектор.
2. Откройте Safari на своем устройстве iOS.
3. Подключите его к компьютеру через USB.
4. Откройте Safari на вашем компьютере.
5. В меню Safari перейдите в раздел «Разработка» и найдите имя своего устройства.
6. Выберите вкладку, которую хотите отладить.
источник
adb start-server
.chrome://inspect
.УВЕДОМЛЕНИЕ
Это старый ответ (январь 2014 г.) с тех пор доступно много новых решений для отладки.
Наконец-то все заработало! используя weinre и cordova (без сборки Phonegap) и чтобы сэкономить хлопоты для будущих разработчиков, которые могут столкнуться с той же проблемой, я сделал учебник на YouTube ;)
источник
Если вы можете использовать устройство Android 4.4+, вы можете использовать удаленную отладку Chrome даже во внутреннем WebView приложения. Это намного лучший отладчик, чем Weinre, но ключ в использовании последней версии Android.
Последние сборки Cordova автоматически включают этот вид отладки, если это отладочная сборка (она отключена в --release builds).
источник
chrome://inspect
и убедиться, что установлен флажок «Обнаружение USB-устройств». Это отобразит все доступные для отладки WebView на подключенных устройствах.console.log
оно не работает. Вам нужно пройти через то,alerts
что действительно является бременем.(it's turned off in --release builds).
это уведомление спасло мне день!Лучше всего подключить отладчик Chrome.
Для этого запустите приложение в эмуляторе или устройстве (используя $ cordova emulate).
затем откройте Google Chrome и перейдите в
chrome://inspect/
Вы увидите список с запущенными приложениями. Ваше приложение должно быть там. Нажмите на «проверить».
Откроется новое окно с инструментами разработчика. Там вы можете нажать на «консоль», чтобы проверить наличие ошибок.
источник
Если ваше приложение работает под управлением Cordova 3.3+, а ваше устройство работает под управлением Android 4.4+, вы можете использовать Chrome Remote Webview Debugging для отладки приложения Cordova.
Для этого необходимо сначала включить на телефоне отладку по USB.
Затем откройте вкладку «Проверить устройства». В Chrome перейдите в Настройки > Дополнительные инструменты > Проверить устройства .
Если вы запускаете приложение на устройстве, когда оно подключено к компьютеру, Webview должен появиться в списке устройств. Щелкните ссылку «Проверить» в своем веб-просмотре, и должен появиться инструмент отладки для веб-просмотра.
Вот статья, полностью объясняющая, как это сделать: http://geeklearning.io/apache-cordova-and-remote-debugging-on-android/
источник
Вы пробовали GapDebug ? Это бесплатно.
Похоже, что он объединяет версии Safari Webkit Inspector и Chrome Dev Tools, чтобы предложить интегрированный опыт отладки в OS X и Windows.
источник
Другой вариант - Visual Studio, в которой есть предварительная поддержка для отладки приложений Cordova :
Теперь, когда Microsoft выпустила бесплатную версию Visual Studio Community , вы можете попробовать это бесплатно. Вам нужно будет загрузить как Visual Studio, так и Visual Studio Tools для Apache Cordova .
источник
Насколько мне известно, единственным продуктивным инструментом для реальной отладки приложений Cordova для платформ Android от 2.2 до 4.3 является jshybugger . Вайнр - инспектор, а не отладчик. JsHybugger обрабатывает ваш код, позволяя выполнять отладку внутри Android WebView.
источник
Просто хочу добавить, что вы можете отлаживать приложения для Android с помощью Genymotion . Это НАМНОГО быстрее стандартного эмулятора Android.
источник
Вы можете использовать Intel XDK IDE для разработки и отладки на эмуляторе или на реальном устройстве.
Я также нашел очень хорошими инструменты Visual Studio 2015 RC для кордовы с его эмулятором пульсации.
источник
Если вы используете сборку телефонного разговора, есть возможность включить отладку.
Для локальных сборок вы можете установить weinre с помощью npm: https://npmjs.org/package/weinre
И ссылка на документы weinre: http://people.apache.org/~pmuellr/weinre/docs/latest/
И есть что-то, что называется удаленной отладкой хрома, но я мало о ней знаю, вы можете посмотреть статью Раймонда Камдена: http://www.raymondcamden.com/index.cfm/2014/1/2/Apache- Кордова-33-и-Remote-Debugging-для-Android
Документы для удаленной отладки Chrome: https://developers.google.com/chrome-developer-tools/docs/remote-debugging (если я правильно понял, вам нужно устройство Android с Chrome в качестве браузера по умолчанию) Возможно, самое близкое к вашей мечте решение?
источник
На Android 4.4+ с установленным SDK:
источник
Если вы используете Cordova 3.3 или выше и ваше устройство работает под управлением Android 4.4 или выше, вы можете использовать «Удаленную отладку на Android с Chrome». Полные инструкции здесь:
https://developer.chrome.com/devtools/docs/remote-debugging
В итоге:
Или , если вы используете Cordova 3.3+ и у вас нет физического устройства с 4.4, вы можете использовать эмулятор, который использует Android 4.4+ для запуска приложения через эмулятор на вашем настольном компьютере.
источник
Вот решение, использующее Phonegap Build. Добавьте следующее в свой config.xml, чтобы иметь возможность проверять с помощью Chrome Remote Webview Debugging.
Сначала убедитесь, что тег вашего виджета содержит xmlns: android = "http://schemas.android.com/apk/res/android"
Затем добавьте следующие
У меня работает на Nexus 5, Phonegap 3.7.0.
Создайте приложение в Phonegap Build, установите APK, подключите телефон к USB, включите USB-отладку на своем телефоне, затем посетите chrome: // inspect.
Источник: https://www.genuitec.com/products/gapdebug/learning-center/configuration/
источник
Используйте Android Device Monitor
Android Device Monitor поставляется с пакетами android sdk, которые вы должны были установить ранее. В мониторе устройства вы можете видеть весь журнал устройства, исключения, все сообщения. Это полезно для отладки сбоев приложений или любых других подобных проблем. Чтобы запустить это, перейдите в папку tools / внутри SDK для Android «/ var / android-sdk-linux / tools». Затем запустите следующий
Если вы работаете в Windows, откройте файл monitor.exe напрямую. Под «LogCat» есть вкладка, где вы увидите все сообщения, связанные с устройством. Здесь вы увидите все сообщения, включая исключения для устройств Android, которые не отображаются на устройстве Chrome inspect. Обязательно создавайте фильтры с помощью знака «+» на вкладке logcat, чтобы вы видели сообщения только для своего приложения.
Источник: http://excellencenodejsblog.com/phonegap-debugging-your-android-application/
источник
monitor
.Вы также можете отлаживать с помощью Chrome свои приложения html5
Я создаю .bat, чтобы открыть хром в режиме отладки
источник
Вы можете отлаживать приложения Cordova для Android, которые установлены на вашем телефоне, удаленно с вашего компьютера через USB-кабель (вы также можете удаленно щелкнуть веб-приложение, как если бы вы просматривали веб-приложение со своего компьютера) с помощью «Удаленной отладки Chrome». Таким же образом можно отлаживать веб-приложение, просматриваемое в стандартном браузере Android или в Chrome на Android .
Включите режим разработчика на вашем Android-устройстве (перейдите в настройки -> о телефоне -> коснитесь 7 раз по номеру сборки).
Подключите компьютер к телефону через USB-кабель.
Запустите Chrome на своем компьютере, перейдите к chrome: // inspect и нажмите кнопку «Проверить» рядом с удаленным устройством, которое вы хотите отлаживать (на вкладке «Устройства»). ИЛИ щелкните правой кнопкой мыши в Chrome на вашем компьютере -> Проверить -> Настроить и управлять DevTools (3 вертикальные точки - правый верхний угол инструментов разработчика) -> Дополнительные инструменты -> Удаленные устройства -> в разделе «Устройства» слева нажмите на свой устройство, к которому вы подключены через USB -> нажмите кнопку «Проверить» для нужного приложения.
Затем нажмите «Консоль», и вы сможете отлаживать JavaScript таким же образом, как и в обычном веб-приложении с инструментами разработчика Chrome.
источник
Я любил weinre! Как это использовать:
Сначала наденьте
index.html
(убедитесь,app.settings.debugUrl
что перед этим установлено):Затем:
sudo npm install -g weinre
weinre --boundHost -all-
На основе http://www.broken-links.com/2013/06/28/remote-debugging-with-weinre/
источник
На устройствах с android <= 4.0.4 необходимо добавить плагин https://www.npmjs.com/package/cordova-plugin-crosswalk-webview-pgb-adapt
источник