Cordova 3.5 deviceready 事件在 5 秒后未触发

2024-01-12

我最近将我的 cordova 应用程序从 cordova v2.9 升级到 v3.5.0。从命令行添加插件后,我将应用程序导入到 eclipse 中,以便可以在 Android 设备上进行测试。但是,当我运行该应用程序时,我看到以下 logcat 消息:

07-08 11:24:03.359: I/Web Console(1500): deviceready has not fired after 5 seconds. at file:///android_asset/www/cordova/cordova.js:1154

07-08 11:24:03.359: D/CordovaLog(1500): file:///android_asset/www/cordova/cordova.js: Line 1147 : Channel not fired: onFileSystemPathsReady

07-08 11:24:03.359: I/Web Console(1500): Channel not fired: onFileSystemPathsReady at file:///android_asset/www/cordova/cordova.js:1147

根据Cordova 设备就绪文档 http://cordova.apache.org/docs/en/3.5.0/cordova_events_events.md.html#deviceready,我必须绑定deviceready inside document.ready()。它没有火。也尝试过将其绑定在外面document.ready()根据SO的一些答案。还是没有运气。有人可以帮我吗???

设备就绪事件绑定

function cordovaInit() {
    document.addEventListener('deviceready', initApp, false);
}

I call cordovaInit() from onload()body 元素如下所示:

<body onload="cordovaInit()">

deviceready 问题现已消失,但我收到如下空指针异常:

07-08 18:58:40.750: W/System.err(6670): java.lang.NullPointerException
07-08 18:58:40.750: W/System.err(6670):     at org.apache.cordova.file.LocalFilesystem.filesystemPathForURL(LocalFilesystem.java:67)
07-08 18:58:40.750: W/System.err(6670):     at org.apache.cordova.file.LocalFilesystem.getFileForLocalURL(LocalFilesystem.java:189)
07-08 18:58:40.750: W/System.err(6670):     at org.apache.cordova.file.FileUtils.getFile(FileUtils.java:749)
07-08 18:58:40.760: W/System.err(6670):     at org.apache.cordova.file.FileUtils.access$5(FileUtils.java:742)
07-08 18:58:40.760: W/System.err(6670):     at org.apache.cordova.file.FileUtils$16.run(FileUtils.java:397)
07-08 18:58:40.760: W/System.err(6670):     at org.apache.cordova.file.FileUtils$23.run(FileUtils.java:525)
07-08 18:58:40.760: W/System.err(6670):     at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1076)
07-08 18:58:40.760: W/System.err(6670):     at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:569)
07-08 18:58:40.760: W/System.err(6670):     at java.lang.Thread.run(Thread.java:856)

同样的问题。尝试删除/更新文件插件(org.apache.cordova.file) 这对我有用。 OnFileSystemReady 是该插件的一个事件。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Cordova 3.5 deviceready 事件在 5 秒后未触发 的相关文章