Cordova 文件插件在 Android 中永远无法准备好

问题描述 投票:0回答:4

我有一个非常简单的 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 文件插件是否损坏?难道我做错了什么?有其他人遇到过这个问题并找到解决方案吗?

javascript android cordova
4个回答
6
投票

尝试安装1.1.0版本的文件插件。更新到 1.2.0 是个坏主意。

cordova plugin add [email protected]

这让我在 Android 上找到了工作(在 iOS 上我不再遇到其他奇怪的问题)。


5
投票

我遇到了同样的问题。

对我有用的是使用此处找到的不同版本的文件插件: https://github.com/onflapp/cordova-plugin-file

相关主题:Android - Cordova 3.5.0 deviceready 在安装媒体插件后未触发


0
投票

我通过恢复到插件版本 7.0.0 解决了这个问题,然后再次正常更新到 8.0.1。


-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>
© www.soinside.com 2019 - 2024. All rights reserved.