我有一个非常简单的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文件插件坏了?我做错了什么吗?还有其他人遇到过这个问题并找到了解决方案吗?
尝试安装1.1.0版本的文件插件。更新到1.2.0是个坏主意。
cordova plugin add org.apache.cordova.file@1.1.0
这让我在Android上找到了工作(在iOS上,我不再遇到其他奇怪的问题)。
我遇到了同样的问题。
对我有用的是使用不同版本的文件插件:https://github.com/onflapp/cordova-plugin-file
相关主题:Android - Cordova 3.5.0 deviceready在安装媒体插件后不启动
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>