我有一个简单的Cordova应用程序,只有一个插件:org.apache.cordova.file。
当我在Android模拟器中模拟应用程序时,deviceready
事件永远不会被触发,我将其作为输出:
D/CordovaLog( 1841): file:///android_asset/www/cordova.js: Line 1154 : deviceready has not fired after 5 seconds.
D/CordovaLog( 1841): file:///android_asset/www/cordova.js: Line 1147 : Channel not fired: onFileSystemPathsReady
其他一些信息:
cordova --version
3.5.0-0.2.4
javac -version
javac 1.7.0_55
java -version
java version "1.7.0_55"
OpenJDK Runtime Environment (IcedTea 2.4.7) (7u55-2.4.7-1~deb7u1)
OpenJDK 64-Bit Server VM (build 24.51-b03, mixed mode)
的index.html:
<!doctype html>
<html>
<head>
</head>
<body>
<script src='cordova.js' type='text/javascript'></script>
<script src='index.js' type='text/javascript'></script>
</body>
</html>
index.js:
(function() {
"use strict";
document.addEventListener("deviceready", function() {
console.log("Ready");
}, false);
}());
Cordova文件插件是否已损坏?难道我做错了什么?有没有其他人遇到过这个问题并找到了解决方案?
答案 0 :(得分:6)
尝试安装1.1.0版本的文件插件。更新到1.2.0是一个坏主意。
cordova plugin add org.apache.cordova.file@1.1.0
这使我在Android上工作(在iOS上我停止了其他异国情调的问题)。
答案 1 :(得分:4)
我遇到了同样的问题。
对我有用的是使用此处找到的不同版本的File插件: https://github.com/onflapp/cordova-plugin-file
相关主题:Android - Cordova 3.5.0 deviceready not firing after installing media plugin
答案 2 :(得分:-1)
You need to include cordova plugin before closing of body tag , so that cordova gets loaded properly before body loading completes.
<!doctype html>
<html>
<head>
</head>
<body>
<script src='cordova.js' type='text/javascript'></script>
<script src='index.js' type='text/javascript'></script>
</body>
</html>