Dagfinn Parnas created CB-11034:
-----------------------------------

             Summary: Camera.getPicture -Handle of OutOfMemoryError gracefully
                 Key: CB-11034
                 URL: https://issues.apache.org/jira/browse/CB-11034
             Project: Apache Cordova
          Issue Type: Bug
          Components: Plugin Camera
    Affects Versions: 2.1.1
         Environment: Android
            Reporter: Dagfinn Parnas


We have an app for which we are dependent on using DATA_URL.

On some older phones (Samsung SII Android 4.1), we have experienced sporadic 
OutOfMemoryError exceptions when taking a picture. 

When this occurs the app crashes since the camera plugin doesn't explicitly 
handle the java.lang.OutOfMemoryError which is thrown. 

It's ok that the OutOfMemoryError appear, but the apps should be able to handle 
it gracefully and not just have the app crash. 

Example stack trace from an uncaught OutOfMemoryError 
{code}
04-06 09:51:55.155: E/dalvikvm-heap(22744): Out of memory on a 31961104-byte 
allocation.
04-06 09:51:55.155: I/dalvikvm(22744):   at 
android.graphics.BitmapFactory.nativeDecodeStream(Native Method)
04-06 09:51:55.160: I/dalvikvm(22744):   at 
android.graphics.BitmapFactory.decodeStream(BitmapFactory.java:652)
04-06 09:51:55.160: I/dalvikvm(22744):   at 
android.graphics.BitmapFactory.decodeStream(BitmapFactory.java:724)
04-06 09:51:55.160: I/dalvikvm(22744):   at 
org.apache.cordova.camera.CameraLauncher.getScaledBitmap(CameraLauncher.java:916)
04-06 09:51:55.160: I/dalvikvm(22744):   at 
org.apache.cordova.camera.CameraLauncher.processResultFromCamera(CameraLauncher.java:454)
04-06 09:51:55.160: I/dalvikvm(22744):   at 
org.apache.cordova.camera.CameraLauncher.onActivityResult(CameraLauncher.java:753)
04-06 09:51:55.160: I/dalvikvm(22744):   at 
org.apache.cordova.CordovaInterfaceImpl.onActivityResult(CordovaInterfaceImpl.java:120)
{code}

In the example above, CameraLauncher.getScaledBitmap doesn't catch the 
java.lang.OutOfMemoryError and the app crashes. The same situation can occur in 
CameraLauncher.processPicture (which has a try catch with only exception)



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to