Android - Cordova 3.5.0 deviceready 在安装媒体插件后不启动

标签 android cordova

这是一个有趣而奇怪的问题。

首先,我在本地 创建了 Cordova 项目。我没有使用 Bd。 使用

cordova create test com.test.project.story "测试"

哪个成功了!

然后我添加了android平台,使用

cordova平台添加android

工作成功。

然后我用

构建了项目

Cordova 构建

再次工作。

我从 Eclipse 打开项目并在模拟器上运行它。 工作正常。

然后我想到在我的项目中使用添加一些插件

cordova plugin add org.apache.cordova.file
cordova plugin add org.apache.cordova.media

去掉android平台,重新添加平台。然后在模拟器上构建并运行项目。

屏幕一直停留在 Connecting to device 上。

我重新检查了我是否为 Android 平台使用了正确的 cordova.js。 这是正确的,它说

// Platform: android
// 3.5.0

检查了 ADB 日志,发现有很多可疑的事情发生。

D/CordovaWebViewClient( 1581): onPageFinished(file:///android_asset/www/index.html)
D/CordovaActivity( 1581): onMessage(onPageFinished,file:///android_asset/www/index.html)
D/CordovaActivity( 1581): onMessage(spinner,stop)
D/TilesManager( 1581): new EGLContext from framework: 2a1a2a10 
D/GLWebViewState( 1581): Reinit shader
D/dalvikvm(  270): GC_CONCURRENT freed 322K, 46% free 9831K/17991K, paused 813ms+21ms, total 2252ms
D/dalvikvm(  270): WAIT_FOR_CONCURRENT_GC blocked 906ms
D/GLWebViewState( 1581): Reinit transferQueue
W/ApplicationContext( 1581): Unable to create external files directory
D/        ( 1581): HostConnection::get() New Host Connection established 0x4a5f8558, tid 1605
E/PluginManager( 1581): Uncaught exception from plugin
E/PluginManager( 1581): java.lang.NullPointerException
E/PluginManager( 1581):     at org.apache.cordova.file.FileUtils.requestAllPaths(FileUtils.java:866)
E/PluginManager( 1581):     at org.apache.cordova.file.FileUtils.execute(FileUtils.java:348)
E/PluginManager( 1581):     at org.apache.cordova.CordovaPlugin.execute(CordovaPlugin.java:65)
E/PluginManager( 1581):     at org.apache.cordova.PluginManager.execHelper(PluginManager.java:242)
E/PluginManager( 1581):     at org.apache.cordova.PluginManager.exec(PluginManager.java:227)
E/PluginManager( 1581):     at org.apache.cordova.ExposedJsApi.exec(ExposedJsApi.java:53)
E/PluginManager( 1581):     at org.apache.cordova.CordovaChromeClient.onJsPrompt(CordovaChromeClient.java:227)
E/PluginManager( 1581):     at android.webkit.CallbackProxy.handleMessage(CallbackProxy.java:655)
E/PluginManager( 1581):     at android.os.Handler.dispatchMessage(Handler.java:99)
E/PluginManager( 1581):     at android.os.Looper.loop(Looper.java:137)
E/PluginManager( 1581):     at android.app.ActivityThread.main(ActivityThread.java:4745)
E/PluginManager( 1581):     at java.lang.reflect.Method.invokeNative(Native Method)
E/PluginManager( 1581):     at java.lang.reflect.Method.invoke(Method.java:511)
E/PluginManager( 1581):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:786)
E/PluginManager( 1581):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:553)
E/PluginManager( 1581):     at dalvik.system.NativeStart.main(Native Method)
D/dalvikvm(  270): GC_FOR_ALLOC freed 593K, 48% free 9509K/17991K, paused 275ms, total 280ms
I/dalvikvm-heap(  270): Grow heap (frag case) to 10.559MB for 1286224-byte allocation
D/dalvikvm(  270): GC_FOR_ALLOC freed 2K, 41% free 10763K/17991K, paused 182ms, total 186ms
D/dalvikvm(  270): GC_CONCURRENT freed 61K, 38% free 11284K/17991K, paused 41ms+11ms, total 304ms
D/CordovaActivity( 1581): onMessage(spinner,stop)
D/dalvikvm(  270): GC_CONCURRENT freed 2676K, 43% free 10293K/17991K, paused 16ms+29ms, total 130ms
D/CordovaLog( 1581): file:///android_asset/www/cordova.js: Line 1154 : deviceready has not fired after 5 seconds.
I/Web Console( 1581): deviceready has not fired after 5 seconds. at file:///android_asset/www/cordova.js:1154
D/CordovaLog( 1581): file:///android_asset/www/cordova.js: Line 1147 : Channel not fired: onFileSystemPathsReady
I/Web Console( 1581): Channel not fired: onFileSystemPathsReady at file:///android_asset/www/cordova.js:1147
E/ThrottleService(  149): problem during onPollAlarm: java.lang.IllegalStateException: problem parsing stats: java.io.FileNotFoundException: /proc/net/xt_qtaguid/iface_stat_all: open failed: ENOENT (No such file or directory)
D/dalvikvm(  251): GC_CONCURRENT freed 384K, 9% free 6556K/7175K, paused 7ms+5ms, total 67ms
D/dalvikvm(  251): GC_CONCURRENT freed 384K, 9% free 6556K/7175K, paused 6ms+13ms, total 62ms
I/EventLogService(  240): Aggregate from 1403981475023 (log), 1403981475023 (data)
E/ThrottleService(  149): problem during onPollAlarm: java.lang.IllegalStateException: problem parsing stats: java.io.FileNotFoundException: /proc/net/xt_qtaguid/iface_stat_all: open failed: ENOENT (No such file or directory)

这是怎么回事?

更新:

在 iOS 上运行良好。

最佳答案

我遇到了同样的问题。

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

相关主题:Cordova File plugin never becomes ready in Android

关于Android - Cordova 3.5.0 deviceready 在安装媒体插件后不启动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24470166/

相关文章:

angularjs - 混合应用程序 IFRAME youtube 嵌入不起作用

java - 如何将 facebook 响应日期转换为 unix 时间戳

ios - 错误 : Visual Studio Cordova Command failed with exit code 69

html - 滚动时停止列表项 onclick 事件触发

ios - 使用 xcbuild/xcrun 和 xcconfig 向 cordova ios 应用程序添加 64 位支持

android - 在 WebView Android 中启用缩放选项

android - 由于 .dex 文件错误,我无法构建我的应用程序。 (安卓)

android - 有没有办法判断 Google map fragment 中的相机何时停止移动?

android - 为什么在 Google TV Android 模拟器中按下媒体键时我的应用会收到 KEYCODE_UNKNOWN?

android - 从手机的内部存储器+外部SD卡存储器中获取所有图像?