Как посмотреть сообщения console.log
сайта с помощью эмулятора Android?
Консольный браузер в Android-эмуляторе
Ответ 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 и т.д.).