Phonegap - отладка JavaScript в XCode - PullRequest
6 голосов
/ 28 января 2011

Я работаю над проектом, основанным на телефонном разрыве. Я хотел бы использовать некоторые инструменты отладки, чтобы иметь возможность отладки некоторых переменных и т. Д. В консоли XCode и т. Д. Теперь я обнаружил, что для этого мне нужно вызвать функцию console.log.

Проблема, однако, заключается в том, что при запуске приложения в симуляторе в консоли XCode не отображается отладочная информация ... Я использую PhoneGap версии 0.9.3, что я делаю неправильно?

Спасибо за ответ

Ответы [ 3 ]

3 голосов
/ 06 января 2012

Лукас, есть фантастический инструмент, который вы можете использовать для отладки проекта phonegap.

С iWebInspector у вас в основном есть Firebug для приложения Phonegap.Вы даже можете изменить код в реальном времени.

3 голосов
/ 18 февраля 2013

Вставьте следующее где-то в начале вашего документа, чтобы он выполнялся перед любым другим вашим JavaScript.

<script type="text/javascript">
    window.onerror = function(message, url, lineNumber) {
        console.log("Error: "+message+" in "+url+" at line "+lineNumber);
    }
</script>

И наслаждайтесь просмотром деталей ваших ошибок Javascript в окне консоли Xcode.

ОБНОВЛЕНИЕ: вышеупомянутый метод будет регистрировать ошибки, такие как неопределенные переменные.Но синтаксические ошибки, такие как пропущенные запятые, по-прежнему приводят к разрыву всего сценария без регистрации чего-либо.

Поэтому в начало функции onDeviceReady необходимо добавить следующее:

console.log('Javascript OK');

Если вы не видите «JavaScript OK» в окне журналакогда приложение запускается, это означает, что у вас где-то есть синтаксическая ошибка.

Чтобы спасти поиск пропущенных запятых, проще всего вставить свой код в такой валидатор Javascript, как этот:

http://www.javascriptlint.com/online_lint.php

и позволить ему найтиошибка для вас.

Надеюсь, это устранит некоторые трудности при отладке.

3 голосов
/ 29 января 2011

Эта функция была реализована совсем недавно (два дня назад) и не включена в выпуск 0.9.3.Вы можете увидеть этот тикет в трекере проблем для получения дополнительной информации.

Чтобы это работало, вам нужно извлечь последний код из PhoneGap GitHub репозитория .Из оболочки:

$ git clone git://github.com/phonegap/phonegap-iphone.git

... и затем приступайте к созданию источника с нуля.Тогда вы должны увидеть это!

В качестве альтернативы , вы заменяете свои операторы console.log на debug.log, и это будет работать в 0.9.3.

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