Почему программа cordova.exec () работает в моем приложении Android PhoneGap (1.7) до «deviceready»?

Я пытаюсь «PhoneGap» (1.7.0) приложение jQuery Mobile (1.1.0). Мне нужно создать приложение для Android. Однако я продолжаю получать следующее предупреждающее сообщение.

ERROR: Attempting to call cordova.exec() before 'deviceready'. Ignoring. 

Похоже, что это может произойти во время вызовов $ .ajax, но это трудно сделать.

Я не звоню в функции Кордовы в моем приложении – это чистый JQM.

Любые идеи в чем проблема. Или, в противном случае, кто-нибудь знает, почему cordova.exec () может быть вызван во время запроса $ .ajax?

Я запускаю приложение под Android 4.0.3, в виртуальном устройстве / симуляторе.

Solutions Collecting From Web of "Почему программа cordova.exec () работает в моем приложении Android PhoneGap (1.7) до «deviceready»?"

У меня была аналогичная проблема, проведя пару часов. Я понял, что cordova-1.7.0.js (или phonegap-1.7.0.js в вашем случае) был iOS, поскольку первоначально созданный проект для iOS я заменил этот файл на Соответствующий файл JS для Android и он начал работать.

Cordova-1.7.0.js отличается для разных мобильных платформ, используйте правильный JS-файл для конкретной платформы.

В моем случае это было потому, что

 $(document).ready()... 

Функция не срабатывала должным образом, поэтому я просто изменил ее на версию javascript

 <body onload="init();"> 

В html и определил функцию

 function init(){ document.addEventListener("deviceready", onDeviceReady, true); } 

В моем файле javascript, и он решил проблему