Android - Cordova 3.5.0 deviceready não disparar depois de instalar o plug-in media

? Maverick @ | Original: StackOverFlow
---

Esta é uma questão interessante e estranho.

Primeiro eu criei Cordova projeto locally . Eu não estou usando Bd . utilização

cordova create test com.test.project.story "Test"

Que trabalhou com sucesso!

Então eu adicionei plataforma android, utilizando-se

cordova platform add android

Trabalhou com sucesso.

Então eu construí o projeto usando

cordova build

Worked, again.

Eu abri o projeto de Eclipse e ele correu no emulador. Funcionou corretamente .

Então eu pensei em adicionar alguns plugins no meu projeto usando

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

Removido a plataforma android e acrescentou mais uma vez a plataforma. Em seguida, construiu e operou o projeto no emulador.

A tela foi preso em Connecting to device para sempre.

I reverificado se eu estava usando o correto cordova.js para a plataforma Android . É correto, e ele diz que

// Platform: android
// 3.5.0

Verificado log ADB e há um monte de coisas suspeitas acontecendo.

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)

O que está acontecendo aqui?

UPDATE:

Funciona bem no iOS.

---

Top 5 Responder

1jeff.d @

Corri para o mesmo problema.

O que funcionou para mim foi usando uma versão diferente do arquivo plugin encontrado aqui:  https://github.com/onflapp/cordova-plugin-file

Tópico relacionado : http://stackoverflow.com/questions/24438087/cordova-file-plugin-never-becomes-ready-in-android

2Amrudesh @

Eu tive um problema semelhante . evento deviceReady não estava disparando ( app iônica no Android) . Trabalhou depois que eu removi o arquivo plugin v1.2 e v1.1 então adicionado em seu lugar.

3Simone Avogadro @

Corri para o mesmo e resolvidos usando apache plugin oficial dev compilação do arquivo:

https://github.com/apache/cordova-plugin-file/

Suficiente liberação cordova 1.3.1 -dev engraçado é mais estável depois do lançamento oficial 1.2.0 ...

4Henrik @

Até agora a https://cordova.apache.org/news/2014/08/11/plugins-release.html foi liberado. Você não deve mais enfrentar o problema com a versão atualizada ( e há, portanto, não é mais uma necessidade de fazer o downgrade ) .

5enRaiser @

para mim ele foi resolvido adicionando cordova.js em index.html (embora a sua não exigida em ripple )

<script src="cordova.js"></script>