5

我正在尝试“PhoneGap”(1.7.0)一个 jQuery Mobile 应用程序(1.1.0)我必须创建一个 Android 应用程序。但是,我不断收到以下警报消息。

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

似乎这可能$.ajax 调用期间发生,但很难确定。

我没有在我的应用程序中调用 Cordova 函数 - 它是纯 JQM。

任何想法是什么问题。或者,如果做不到这一点,有人知道为什么在 $.ajax 请求期间可能会调用 cordova.exec() 吗?

我在虚拟设备/模拟器中运行 Android 4.0.3 下的应用程序。

4

2 回答 2

21

花了几个小时后我遇到了类似的问题,我意识到 cordova-1.7.0.js(或你的情况下的 phonegap-1.7.0.js)是 iOS 的,因为我最初为 iOS 创建了项目我用这个文件替换了相关的android JS文件并开始工作。

cordova-1.7.0.js 对于不同的移动平台是不同的,针对特定平台使用正确的 JS 文件。

于 2012-05-13T06:38:34.467 回答
0

就我而言,这是因为

$(document).ready()...

函数没有正确触发,所以我只是将其更改为 javascript 版本

<body onload="init();">

在html中定义了一个函数

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

在我的javascript文件中,它解决了问题

于 2012-11-28T13:31:36.050 回答