John M. Wargo created CB-5628:
---------------------------------

             Summary: Media Capture: Audio Capture on Android 4.1.2
                 Key: CB-5628
                 URL: https://issues.apache.org/jira/browse/CB-5628
             Project: Apache Cordova
          Issue Type: Bug
          Components: Android
    Affects Versions: 3.1.0
         Environment: Macintosh OS, Samsung Galaxy III running Android 4.1.2
            Reporter: John M. Wargo


When I try to create an audio capture, the application crashes after generating 
the following log entries. The same application works on iOS, but fails with a 
returned error code on Android 4.4. 

12-10 06:54:17.121: W/IInputConnectionWrapper(4632): showStatusIcon on inactive 
InputConnection
12-10 06:54:33.697: D/CordovaActivity(4632): Incoming Result
12-10 06:54:33.697: D/CordovaActivity(4632): Request code = 0
12-10 06:54:33.697: D/CordovaActivity(4632): We have a callback to send this 
result to
12-10 06:54:33.697: W/dalvikvm(4632): threadid=1: thread exiting with uncaught 
exception (group=0x41525438)
12-10 06:54:33.697: E/AndroidRuntime(4632): FATAL EXCEPTION: main
12-10 06:54:33.697: E/AndroidRuntime(4632): java.lang.RuntimeException: Failure 
delivering result ResultInfo{who=null, request=0, result=-1, data=Intent { 
dat=content://media/external/audio/media/324 }} to activity 
{com.cordovacookbook.ex041/com.cordovacookbook.ex041.Ex041}: 
java.lang.IllegalStateException: Do not perform IO operations on the UI thread. 
Use CordovaInterface.getThreadPool() instead.
12-10 06:54:33.697: E/AndroidRuntime(4632):     at 
android.app.ActivityThread.deliverResults(ActivityThread.java:3205)
12-10 06:54:33.697: E/AndroidRuntime(4632):     at 
android.app.ActivityThread.handleSendResult(ActivityThread.java:3248)
12-10 06:54:33.697: E/AndroidRuntime(4632):     at 
android.app.ActivityThread.access$1200(ActivityThread.java:143)
12-10 06:54:33.697: E/AndroidRuntime(4632):     at 
android.app.ActivityThread$H.handleMessage(ActivityThread.java:1289)
12-10 06:54:33.697: E/AndroidRuntime(4632):     at 
android.os.Handler.dispatchMessage(Handler.java:99)
12-10 06:54:33.697: E/AndroidRuntime(4632):     at 
android.os.Looper.loop(Looper.java:137)
12-10 06:54:33.697: E/AndroidRuntime(4632):     at 
android.app.ActivityThread.main(ActivityThread.java:4950)
12-10 06:54:33.697: E/AndroidRuntime(4632):     at 
java.lang.reflect.Method.invokeNative(Native Method)
12-10 06:54:33.697: E/AndroidRuntime(4632):     at 
java.lang.reflect.Method.invoke(Method.java:511)
12-10 06:54:33.697: E/AndroidRuntime(4632):     at 
com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1004)
12-10 06:54:33.697: E/AndroidRuntime(4632):     at 
com.android.internal.os.ZygoteInit.main(ZygoteInit.java:771)
12-10 06:54:33.697: E/AndroidRuntime(4632):     at 
dalvik.system.NativeStart.main(Native Method)
12-10 06:54:33.697: E/AndroidRuntime(4632): Caused by: 
java.lang.IllegalStateException: Do not perform IO operations on the UI thread. 
Use CordovaInterface.getThreadPool() instead.
12-10 06:54:33.697: E/AndroidRuntime(4632):     at 
org.apache.cordova.CordovaResourceApi.assertBackgroundThread(CordovaResourceApi.java:351)
12-10 06:54:33.697: E/AndroidRuntime(4632):     at 
org.apache.cordova.CordovaResourceApi.mapUriToFile(CordovaResourceApi.java:130)
12-10 06:54:33.697: E/AndroidRuntime(4632):     at 
org.apache.cordova.mediacapture.Capture.createMediaFile(Capture.java:396)
12-10 06:54:33.697: E/AndroidRuntime(4632):     at 
org.apache.cordova.mediacapture.Capture.onActivityResult(Capture.java:265)
12-10 06:54:33.697: E/AndroidRuntime(4632):     at 
org.apache.cordova.CordovaActivity.onActivityResult(CordovaActivity.java:915)
12-10 06:54:33.697: E/AndroidRuntime(4632):     at 
android.app.Activity.dispatchActivityResult(Activity.java:5363)
12-10 06:54:33.697: E/AndroidRuntime(4632):     at 
android.app.ActivityThread.deliverResults(ActivityThread.java:3201)
12-10 06:54:33.697: E/AndroidRuntime(4632):     ... 11 more




--
This message was sent by Atlassian JIRA
(v6.1.4#6159)

Reply via email to