Есть ли отладка консоли Firebug или JavaScript для Android?

Я разрабатываю сайт для мобильных устройств. Он работает на рабочем столе Firefox. Это работает на iPhone, но когда я нажимаю кнопку на Android 2.x (и, возможно, ниже). мой код JavaScript дает сбой или что еще...

Могу ли я получить доступ к регистратору или консоли JavaScript для этих устройств?

Тем лучше должно быть некое приложение Firebug.


person Christophe Debove    schedule 12.05.2011    source источник
comment
Возможный обман stackoverflow.com/questions/468993/   -  person peteorpeter    schedule 12.05.2011
comment
возможный дубликат Отладка javascript на планшетах/телефонах Android?   -  person epascarello    schedule 12.05.2011
comment
Вот библиотека под названием mobile-web-console-logger, которая позволяет вам отлаживать javascript на мобильном устройстве через Wi-Fi без необходимости использования USB-кабелей или установки драйверов. github.com/erspark2002/mobile-web-console-logger Выводит всю консоль журналы и ошибки страницы в div внизу страницы.   -  person user1491819    schedule 29.08.2016
comment
Нет ничего лучше, чем https://github.com/liriliri/eruda . Eruda обладает большинством функций набора инструментов консоли Chrome.   -  person Rango    schedule 03.07.2017


Ответы (15)


Один из вариантов — weinre. Он обеспечивает редактирование DOM и стиля вместе с консолью. Если вы не хотите настраивать его самостоятельно, есть экземпляр, размещенный по адресу http://debug.phonegap.com

Другой вариант — JSHybugger. Это, безусловно, самая полная среда отладки, доступная для браузера Android. Это платный продукт, но, вероятно, он того стоит.

person Paul Beusterien    schedule 13.05.2011
comment
Слик! Кажется немного глючным, но определенно стоящим инструментом. Спасибо! - person pspahn; 04.05.2012
comment
вроде прикольно, посмотрю - person arod; 05.11.2012
comment
Я только что попробовал это на Nexus 4, и интерфейс Weinre, похоже, отлично работает и в версии Chrome для Android. Это означает, что если вы пройдете через weinre (либо запустив где-то свою собственную версию, либо эту размещенную версию), вы сможете одновременно запускать веб-приложение и отлаживать его на устройстве. - person bergie; 14.02.2013
comment
Вайнре невероятно. - person Régis B.; 11.07.2013
comment
ввод about:debug в адресной строке, как это было предложено NSJonas, отлично сработало для меня в Android, нет необходимости в weinre - person dannyxyz22; 16.07.2013
comment
Размещенный экземпляр PhoneGap больше не работает. - person SBhojani; 18.09.2013
comment
как мне использовать weinre со страницы, которая должна загружаться через https? - person Michael; 17.12.2013

В Chrome есть очень приятная функция под названием «Веб-отладка USB», которая позволяет видеть консоль отладки мобильного устройства на вашем ПК при подключении через USB.

Дополнительные сведения см. здесь.

РЕДАКТИРОВАТЬ: кажется, что ADB не поддерживается в Windows 8, но эта ссылка, похоже, предлагает решение:

http://mikemurko.com/general/chrome-remote-debugging-nexus-7-on-windows-8/

person seeg    schedule 30.05.2012
comment
очень хороший инструмент спасибо - person Christophe Debove; 19.06.2012
comment
Отлично, этот инструмент упрощает отладку мобильных устройств. - person CoalaWeb; 08.07.2012
comment
Хороший. Opera также поддерживает удаленную отладку с ПК, см. dev.opera. com/статьи/просмотр/ - person NoBugs; 24.08.2012
comment
А что делать, если у вас нет прав администратора и драйвер usb не установлен? - person Stefan Steiger; 13.09.2012
comment
@Quandary подумайте о другом работодателе, где вам предоставят инструменты и разрешения для выполнения вашей работы. - person xdumaine; 16.01.2013
comment
Какой смысл иметь планшет, если я также должен носить с собой ПК? - person Samuel Danielson; 24.04.2014
comment
@SamuelDanielson +infinity за указание на слона в комнате! - person Michael; 17.08.2014

Вы можете ввести about:debug в некоторых мобильных браузерах, чтобы вызвать консоль JavaScript.

person NSjonas    schedule 23.04.2012
comment
Технически вы правы, но не ожидайте, что это будет очень полезно. В стандартном браузере Android (4.0) он мало что делает, кроме как выдает ваши console.logs, даже не возвращая результат ваших оцененных команд. - person Tom McKenzie; 28.11.2013

Иногда я вывожу отладочный вывод в окно браузера. Используя jQuery, вы можете отправлять выходные сообщения в область отображения на своей странице:

<div id='display'></div>

$('#display').text('array length: ' + myArray.length);

Или, если вы хотите просматривать переменные JavaScript, не добавляя область отображения на свою страницу:

function debug(txt) {
    $('body').append("<div style='width:300px;background:orange;padding:3px;font-size:13px'>" + txt + "</div>");
}
person mbokil    schedule 29.10.2012

У меня была такая же проблема, просто используйте console.log(...) (например, firebug) и установите приложение для просмотра журналов, это позволит вам просматривать все журналы для вашего браузера.

person Rory    schedule 30.05.2011

Мы выполняем следующие шаги в нашем проекте для отладки веб-сайта на мобильных устройствах.

  1. Установите программное обеспечение mobogenie на мобильный и настольный компьютер (оба имеют одинаковую версию).
  2. Откройте свой сайт в мобильном браузере Google Chrome.
  3. Откройте Google Chrome на рабочем столе. Перейдите в раздел Параметры --> Дополнительные параметры --> Проверить устройство.
  4. Здесь вы найдете список сайтов, открытых на мобильных устройствах, и нажмете «Проверить», и вы получите нужную вам консоль JavaScript.
person chirag    schedule 05.02.2015

«Веб-отладка по USB» — один из вариантов

"печать на экране" другой.

Но я предпочитаю удаленную отладку с помощью adobe edge inspect, официально известного как adobe shadow. Внутри используется weinre (=WEb INspect REmote).

Вы просто устанавливаете его + небольшой плагин в браузере (Chrome) и бесплатное приложение, которое можно скачать в плей-маркете. Тогда у вас есть все инструменты, такие как инструменты разработки Chrome.

Он также поддерживает iOS и Kindle Fire.

Обновить

Как заметил Крис, вы должны оплатить подписку, чтобы использовать проверку краев. Дешевой альтернативой является непосредственное использование weinre, это основа проверки краев. Вот статья о том, как его настроить вверх.

person VDP    schedule 29.10.2012
comment
Похоже, вам нужно оплатить ежемесячную подписку на Adbobe Creative Cloud, чтобы иметь возможность использовать Edge Inspect. - person Chris Halcrow; 09.08.2013
comment
@ChrisHalcrow Да, это грустно, но похоже, что им приходится выжимать каждую копейку из всех успешных проектов :) - person VDP; 09.08.2013

Если вы используете Cordova 3.3 или выше и ваше устройство под управлением Android 4.4 или выше, вы можете использовать «Удаленная отладка на Android с Chrome». Полная инструкция здесь:

https://developer.chrome.com/devtools/docs/remote-debugging

В итоге:

  • Подключите устройство к настольному компьютеру с помощью USB-кабеля.
  • Включите отладку по USB на вашем устройстве (на моем устройстве это находится в разделе «Настройки»> «Дополнительно»> «Параметры разработчика»> «Отладка по USB»).

Или, если вы используете Cordova 3.3+ и у вас нет физического устройства с 4.4, вы можете использовать эмулятор, который использует Android 4.4+ для запуска приложения через эмулятор на настольном компьютере.

  • Запустите приложение Cordova на устройстве или в эмуляторе.
  • В Chrome на настольном компьютере введите chrome://inspect/#devices в адресной строке.
  • Ваше устройство/эмулятор будет отображаться вместе с любыми другими распознанными устройствами, подключенными к вашему компьютеру, а под вашим устройством будут сведения о Cordova 'WebView' (в основном ваше приложение Cordova), которое работает на устройстве/эмуляторе ( способ работы Cordova заключается в том, что он в основном создает окно «браузера» на вашем устройстве/эмуляторе, в котором есть «WebView», который является вашим работающим приложением HTML/JavaScript)
  • Нажмите ссылку «проверить» в разделе «WebView», где вы видите свое устройство/эмулятор в списке. Это вызывает инструменты разработчика Chrome, которые теперь позволяют вам отлаживать ваше приложение.
  • Выберите вкладку «Источники» в инструментах разработчика Chrome, чтобы просмотреть JavaScript, который в настоящее время работает в вашем приложении Cordova на устройстве/эмуляторе. Вы можете добавить точки останова в JavaScript, которые позволят вам отлаживать код.
  • Кроме того, вы можете использовать вкладку «Консоль» для просмотра ошибок (они будут выделены красным цветом) или в нижней части консоли вы увидите подсказку «>». Здесь вы можете ввести любые переменные или объекты (например, объекты DOM), текущее значение которых вы хотите проверить, и значение будет отображаться.
person Chris Halcrow    schedule 23.09.2015
comment
Это отличный вариант. Я обнаружил, что xamarin.com/android-player работает очень хорошо, предназначен для отладки и поддерживает USB протокол. Что я сделал, так это зашел в настройки моего эмулируемого Android и включил USB в соответствии с инструкциями, убедитесь, что вы установили, какое приложение вы хотите отлаживать (в моем случае я отлаживал стандартный браузер). эмулированного Android, затем вернитесь в окно Chrome DevTools для проверки устройств. Браузер появится в списке с хорошим списком вкладок для проверки. Блаженство! - person Mike Kormendy; 04.11.2015

Вы можете попробовать YConsole встроенную консоль js. Он легкий и простой в использовании.

  • Отловить логи и ошибки.
  • Редактор объектов.

Как пользоваться :

<script type="text/javascript" src="js/YConsole-compiled.js"></script>
<script type="text/javascript" >YConsole.show();</script>
person yorg    schedule 04.10.2015

Я установил надстройку консоли Firefox (https://addons.mozilla.org/en-US/android/addon/console/) в моем браузере Firefox на Android, и он работал достаточно хорошо. Помог мне отладить мое приложение angular2.

person Sacky San    schedule 02.08.2016

Если вы не возражаете против переадресации через сторонний сервер, JSConsole — довольно полезный удаленный отладчик для JavaScript.

person merv    schedule 20.11.2012

Недавно я написал инструмент для отображения журналов консоли в подвижном/изменяемом размере «окне» (на самом деле это div). Он предоставляет функции, аналогичные консоли Firebug, но вы можете видеть его поверх своей страницы на планшете. Консоль отладки для планшетов/смартфонов/фаблетов

person Gus T Butt    schedule 19.08.2014

Я тоже искал простую замену консоли, лишь бы свалить текст. Итак, что я сделал, так это эту функцию:

function remoteLog (arg) {
    var file = '/files/remoteLog.php';
    $.post(file, {text: arg});
}

Удаленный файл PHP записывает весь вывод в базу данных в arg. У меня это заняло 5 минут (ОК, на стороне сервера я использовал простенькую библиотеку логирования, которая записывает и отображает текстовые сообщения, но все же...).

person Moshe Shaham    schedule 07.08.2012

03 декабря 2013 г. Google запустил Chrome DevTools для мобильных устройств, который позволяет разработчикам удаленная отладка мобильных веб-приложений с помощью эмуляции и трансляции экрана с нулевой конфигурацией.

Чтобы узнать обо всех функциях, ознакомьтесь с выступлением Пола Айриша на YouTube.

person Farm    schedule 03.12.2013
comment
Пользователь специально спрашивает о старом браузере Android 2.x, а не о Chrome. Увы, там много старых телефонов. - person mikemaccana; 10.12.2013
comment
@mikemaccana, значит, вы говорите, что не можете удаленно отлаживать Android на базе 2.x с помощью новейших инструментов разработчика Chrome? - person Farm; 13.12.2013
comment
Это правильно. Инструменты разработчика Chrome работают только с Chrome для Android, а не с браузером Android. Браузер Android не отображается в разделе chrome://inspect/#devices. - person mikemaccana; 13.12.2013

Попробуйте js-mobile-console

MobileConsole можно встроить в любую страницу для отладки. Он будет ловить ошибки и вести себя точно так же, как встроенная консоль JavaScript в браузере. Он также выводит все журналы, которые вы написали, через API window.console.

person stevemao    schedule 07.11.2014