Отладка JavaScript в эмуляторе Android с пробелом - PullRequest
68 голосов
/ 13 января 2011

Я новичок в разработке телефонов и мобильных телефонов.Могу ли я узнать, как я могу отладить ошибку javascript на эмуляторе?Я слышал об ADB, могу ли я узнать, как я могу использовать и установить его в системе Windows 7?У меня есть ajax с jsonp, но на эмуляторе нет ответа.Тем не менее, я могу назвать это AJAX с браузером на Windows.Могу ли я узнать, что пошло не так?

Ответы [ 16 ]

0 голосов
/ 25 декабря 2015

Отладка PhoneGap / Apache Cordova Приложение легко с GapDebug

  • Скачать и установить GapDebug с https://www.genuitec.com/products/gapdebug/

  • Запустить GapDebug на ПК / Mac

  • Включить опцию разработчика и отладку USB на вашем устройстве Android (Настройки -> Опция разработчика (ВКЛ) -> Отладка USB (ВКЛ))

  • Если опция разработчика не найдена (Настройки -> О телефоне -> 7 раз нажмите номер сборки)

  • ВыМожно отладить ваше приложение с вашего GapDebug

См.

0 голосов
/ 09 октября 2015

Если вы используете Phonegap Build и хотите отлаживать с помощью консоли Chrome, вот рабочее решение.Отладка WebViews возможна с помощью отладки по USB (https://developer.chrome.com/devtools/docs/remote-debugging#debugging-webviews)

Сначала убедитесь, что тег виджета содержит xmlns: android = "http://schemas.android.com/apk/res/android"

<widget 
    xmlns="http://www.w3.org/ns/widgets" 
    xmlns:gap="http://phonegap.com/ns/1.0" 
    xmlns:android="http://schemas.android.com/apk/res/android"
    id="me.app.id" 
    version="1.0.0">

Затем добавьте следующее

<gap:config-file platform="android" parent="/manifest">
     <application android:debuggable="true" />
</gap:config-file>

У меня работает на Nexus 5, Phonegap 3.7.0.

<preference name="phonegap-version" value="3.7.0" />

Сборка приложения в Phonegap Сборка, установка APK, подключение телефона к USB, включение отладки по USB наВы звоните по телефону, затем посетите Chrome: //inspect.

Источник: https://www.genuitec.com/products/gapdebug/learning-center/configuration/

0 голосов
/ 26 января 2013

В Eclipse вы можете добавить хук к кнопке возврата эмулятора Android и проверить значение на лету.Добавьте менеджер событий onBackPressed и вызовите консоль javascript оттуда.С точки зрения отладки eclipse вы измените значение переменной String на то, что вы хотите проверить, и передадите его в свое приложение, вызвав super.loadUrl.

.Не забудьте включить отладку вашего приложения из представления DDMS

public class MyActivity extends DroidGap {
    private String js = "";
    @Override
    public void onBackPressed() {  
        //add a breakpoint to the follow line 
        //and change the value for "js" variable before continuing execution
        super.loadUrl("javascript:console.log(" + js + ")");
        return;
    }
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        super.setBooleanProperty("keepRunning", false);
        super.setIntegerProperty("splashscreen", R.drawable.splash);
        super.loadUrl("file:///android_asset/www/index.html", 20000);
    }
}
0 голосов
/ 12 ноября 2012

Лучшее решение для отлова исключений и отображения в вашей консоли - это код:

window.onerror = function(msg, uri, line) {
    console.log(msg + uri + line);
}
0 голосов
/ 30 мая 2011

Если вы используете console.log, вы можете делать простые операторы печати. Кроме того, что вы можете использовать adb для их просмотра, вы можете использовать программу просмотра журналов на устройстве и просматривать журналы там. Дополнительная информация: http://www.technomancy.org/android/javascript-debugging/

0 голосов
/ 16 января 2011

Если вы хотите установить NodeJS где-нибудь, вы можете выполнить некоторую расширенную отладку с помощью iBug Джона Боксалла, который хотя и был разработан для iPhone, который я тестировал на Android, и работает нормально.Это в основном firebug lite для мобильных устройств.Я указываю на мой ответвление, потому что Node сильно изменился, и код Джона не будет работать на современном nodeJS, поэтому я установил исправление, чтобы запустить его на nodeJS 0.2.3, YMMV на более поздних версиях nodeJS.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...