Javascript консоль в мобильном WebView - PullRequest
0 голосов
/ 10 апреля 2020

У меня есть веб-страница, которую я хочу показать в WebView, встроенном в мобильное приложение (для Android и iPhone). Эта веб-страница предназначена для тестирования javascript скриптов. Страница вызывает определенный набор JS сценариев (тестов), и эти тесты выводят их в консоль (именно здесь я могу диагностировать то, что произошло во время тестов). Использование console.log. Плюс исключения отображаются в консоли.

Когда тесты не пройдены, обработчик ошибок JS уведомит меня об этом, и я смогу показать этот факт на своей веб-странице, чтобы увидеть его на телефоне. Но мне также нужно взглянуть на консоль JS, чтобы понять, что пошло не так. Как получить доступ к консоли JS на телефоне, когда результат теста показывает, что он не прошел?

Одним из вариантов, о котором я думал, было как-то вывести содержимое консоли в контент веб-страницы (DOM), чтобы я мог просматривать его в приложении (во встроенном веб-представлении, поскольку это будет контент). на странице показано). Но я не знаю, возможно ли в Javascript как-нибудь вывести консоль в HTML.

Я не разрабатываю мобильное приложение, просто доставляю контент, который приложение показывает в WebView. Поэтому мне нужно решение, которое не зависит от самого приложения, просто есть что-то, что я в идеале вижу в WebView. Примерно так, когда вы отлаживаете свои javascripts в Chrome, вы открываете окно DevTools и работаете с ним. Если бы не было DevTools на Chrome, был бы способ увидеть содержимое консоли?

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

1 Ответ

0 голосов
/ 10 апреля 2020

Для Android:

Может быть, эта ссылка поможет вам: https://developers.google.com/web/tools/chrome-devtools/remote-debugging/webviews

Используя режим Chrome dev на вашем компьютере, вы должны быть возможность отладить ваше веб-представление

О IPhone, я не знаю, но Xcode или что-то вроде этого должно помочь

...