PhoneGap ondevice在5秒后没有开火

时间:2013-12-07 03:26:33

标签: javascript android events cordova

所以我目前正在使用Weinre调试我的PhoneGap应用程序,我不断收到以下错误...

5秒后,deviceready尚未解雇。

频道未被解雇:onPluginsReady

频道未被解雇:onCordovaReady

频道未被解雇:onCordovaConnectionReady

我正在使用barcodescanner插件并使用PhoneGap网站提供的远程服务进行编译。还在android 2.3上使用PhoneGap 3.2。

this.initialize = function(){
    this.bindEvents();
};

this.bindEvents = function(){
    console.log('binding events...');
    document.addEventListener('deviceready', this.onDeviceReady.bind(this), false);
};
this.onDeviceReady(){
...
};

在body onload事件中调用initialize函数。

3 个答案:

答案 0 :(得分:0)

全新的phonegap项目是否适用于phonegap 3.2.0? 我们遇到了同样的问题,结果发现甚至股票样本webapp在使用phonegap 3.2.0运行时都会遇到相同的错误:

[Log] deviceready has not fired after 5 seconds. (phonegap.js, line 1078)
[Log] Channel not fired: onCordovaInfoReady (phonegap.js, line 1071)

不确定原因。降级到3.0.0是一种解决方法:

npm install -g phonegap@3.0.0-0.14.4 cordova@3.0.10

然后创建一个新的phonegap项目,看看它是否可以使用3.0.0。对我们这样做。

答案 1 :(得分:0)

在我的情况下,cordova.js和插件存在问题。我从iOS版本获得它,而不是从Android获得它并收到错误。

答案 2 :(得分:-3)

使用以下方法。

function onDeviceReady() {
    alert("on device ready");
}

document.addEventListener("deviceready", onDeviceReady, false);