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

Консольный браузер в Android-эмуляторе

Как посмотреть сообщения console.log сайта с помощью эмулятора Android?

4b9b3361

Ответ 1

Из короткой статьи Рича Четвинда "Отладка JavaScript в браузере Android".

Вы можете регистрировать ошибки JavaScript и консольные сообщения с вашего Android-устройства или эмулятора. Для этого сначала необходимо установить драйверы Android SDK и USB и включить отладку USB на реальном устройстве.

Чтобы проверить, правильно ли подключено устройство, вы можете запустить следующий cmd из каталога инструментов Android SDK, и вы должны увидеть устройство в списке

c:\android sdk..\platform-tools\adb devices

Затем вы можете использовать Android Debug Bridge для фильтрации отладочных сообщений, чтобы вы могли видеть только сообщения, связанные с браузером, выполнив следующий cmd.

c:\android sdk..\platform-tools\adb logcat browser:V *:S

По умолчанию журнал записывается в stdout, поэтому вы увидите все ошибки Javascript или сообщения console.log и т.д., записанные в окне cmd.

Дополнительная информация: Документация по инструменту CLI Logcat.

Ответ 2

Если вы запустили эмулятор с Eclipse с помощью ADT plugin, вы увидите все журналы консоли JavaScript непосредственно в представлении LogCat:

Window -> Show View -> Android -> LogCat

Ответ 3

Вы можете временно добавить JavaScript, например...

var console = {
    log: function(msg) { alert(msg); }
};

Уродливый, но он работает.

Ответ 4

Я захватил console.log, используя этот код:

function logManager() {
    var self = this;

    self.init = function () {
        console.log('logmanager initialized');
        var old = console.log;
        self.logger = document.getElementById('log');
        console.log = function (message, options) {
            if (typeof message == 'object') {
                self.logger.innerHTML = (JSON && JSON.stringify ? JSON.stringify(message) : message) + '<br />' + self.logger.innerHTML;
            } else {
                self.logger.innerHTML = message + '<br />' + self.logger.innerHTML;
            }
        }
    }
    self.toggleLogVisibility = function () {
        return $(self.logger).toggle();
    };
}

И потребляйте его так, как в своем html с вашим собственным стилем (абсолютное верхнее право - это то, что я использовал)

<div id="log" class="log">
    Application loaded...
</div>

И в вашем jscript (запустите это на странице, загруженной, поскольку элемент журнала должен существовать)

document.lmgr = new logManager();
document.lmgr.init();

Ответ 5

Если вы используете Android Studio; Вы можете открыть свой Logcat (Alt + 6) и отфильтровать для: :CONSOLE

Фильтрация только для :CONSOLE (вместо INFO:CONSOLE) отобразит все типы консольных сообщений (включая ERROR, WARN и т.д.).