Should not crash :)
Crash with Samsung Galaxy XCover4 (xcover4lte), Android 7.0
java.lang.OutOfMemoryError:
at dalvik.system.VMRuntime.newNonMovableArray (Native Method)
at android.graphics.Bitmap.nativeCreate (Native Method)
at android.graphics.Bitmap.createBitmap (Bitmap.java:977)
at android.graphics.Bitmap.createBitmap (Bitmap.java:948)
at android.graphics.Bitmap.createBitmap (Bitmap.java:879)
at id.zelory.compressor.ImageUtil.decodeSampledBitmapFromFile (ImageUtil.java:70)
at id.zelory.compressor.ImageUtil.compressImage (ImageUtil.java:33)
at id.zelory.compressor.Compressor.compressToFile (Compressor.java:60)
at com.reactnative.ivpusic.imagepicker.Compression.compressImage (Compression.java:63)
at com.reactnative.ivpusic.imagepicker.PickerModule.getImage (PickerModule.java:544)
at com.reactnative.ivpusic.imagepicker.PickerModule.getAsyncSelection (PickerModule.java:447)
at com.reactnative.ivpusic.imagepicker.PickerModule.imagePickerResult (PickerModule.java:631)
at com.reactnative.ivpusic.imagepicker.PickerModule.onActivityResult (PickerModule.java:713)
at com.facebook.react.bridge.ReactContext.onActivityResult (ReactContext.java:253)
at com.facebook.react.ReactInstanceManager.onActivityResult (ReactInstanceManager.java:692)
at com.facebook.react.ReactActivityDelegate.onActivityResult (ReactActivityDelegate.java:129)
at com.facebook.react.ReactActivity.onActivityResult (ReactActivity.java:75)
at android.app.Activity.dispatchActivityResult (Activity.java:7280)
at android.app.ActivityThread.deliverResults (ActivityThread.java:4556)
at android.app.ActivityThread.handleSendResult (ActivityThread.java:4603)
at android.app.ActivityThread.-wrap22 (ActivityThread.java)
at android.app.ActivityThread$H.handleMessage (ActivityThread.java:1702)
at android.os.Handler.dispatchMessage (Handler.java:102)
at android.os.Looper.loop (Looper.java:154)
at android.app.ActivityThread.main (ActivityThread.java:6836)
at java.lang.reflect.Method.invoke (Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run (ZygoteInit.java:1520)
at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:1410)
@ivpusic any idea how we could fix that? Would like to help.
me too
I fixed this by asking the permissions on Android and iOS (using react-native-permissions lib):
useEffect(() => {
async function askPermissions() {
if (Platform.OS === 'android') {
await Permissions.requestMultiple([
'android.permission.CAMERA',
'android.permission.WRITE_EXTERNAL_STORAGE',
]);
}
if (Platform.OS === 'ios') {
await Permissions.requestMultiple(['ios.permission.CAMERA', 'ios.permission.PHOTO_LIBRARY']);
}
}
askPermissions();
}, []);