ivpusic / react-native-image-crop-picker

iOS/Android image picker with support for camera, video, configurable compression, multiple images and cropping
MIT License
6.09k stars 1.55k forks source link

[Android] Attempt to invoke virtual method 'void com.reactnative.ivpusic.imagepicker.ResultCollector.notifyProblem(java.lang.String, java.lang.String)' on a null object reference #415

Closed birgernass closed 6 years ago

birgernass commented 7 years ago

Version

Platforms

Devices

Message

Failure delivering result ResultInfo{who=null, request=69, result=0, data=null} to activity {de.******.app/de.******.app.MainActivity}: java.lang.NullPointerException: Attempt to invoke virtual method 'void com.reactnative.ivpusic.imagepicker.ResultCollector.notifyProblem(java.lang.String, java.lang.String)' on a null object reference

Trace

java.lang.NullPointerException: Attempt to invoke virtual method 'void com.reactnative.ivpusic.imagepicker.ResultCollector.notifyProblem(java.lang.String, java.lang.String)' on a null object reference
    at com.reactnative.ivpusic.imagepicker.PickerModule.croppingResult(PickerModule.java:670)
    at com.reactnative.ivpusic.imagepicker.PickerModule.onActivityResult(PickerModule.java:681)
    at com.facebook.react.bridge.ReactContext.onActivityResult(ReactContext.java:256)
    at com.facebook.react.ReactInstanceManager.onActivityResult(ReactInstanceManager.java:601)
    at com.facebook.react.ReactActivityDelegate.onActivityResult(ReactActivityDelegate.java:149)
    at com.facebook.react.ReactActivity.onActivityResult(ReactActivity.java:77)
    at android.app.Activity.dispatchActivityResult(Activity.java:7188)
    at android.app.ActivityThread.deliverResults(ActivityThread.java:4334)
    at android.app.ActivityThread.handleSendResult(ActivityThread.java:4381)
    at android.app.ActivityThread.-wrap22(ActivityThread.java)
    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1624)
    at android.os.Handler.dispatchMessage(Handler.java:105)
    at android.os.Looper.loop(Looper.java:156)
    at android.app.ActivityThread.main(ActivityThread.java:6577)
    at java.lang.reflect.Method.invoke(Method.java)
    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:941)
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:831)
java.lang.RuntimeException: Failure delivering result ResultInfo{who=null, request=69, result=0, data=null} to activity {de.tellonym.app/de.tellonym.app.MainActivity}: java.lang.NullPointerException: Attempt to invoke virtual method 'void com.reactnative.ivpusic.imagepicker.ResultCollector.notifyProblem(java.lang.String, java.lang.String)' on a null object reference
    at android.app.ActivityThread.deliverResults(ActivityThread.java:4338)
    at android.app.ActivityThread.handleSendResult(ActivityThread.java:4381)
    at android.app.ActivityThread.-wrap22(ActivityThread.java)
    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1624)
    at android.os.Handler.dispatchMessage(Handler.java:105)
    at android.os.Looper.loop(Looper.java:156)
    at android.app.ActivityThread.main(ActivityThread.java:6577)
    at java.lang.reflect.Method.invoke(Method.java)
    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:941)
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:831)

About

This error occurs for one of our users, when he presses the check icon after cropping an image.

Edit: The Error occurs sometimes after cropping. For some users every time. Especially, after pressing the cancel button. We also encountered app freezes after canceling on iOS.

hsxiaochou commented 7 years ago

solved this problem : Make sure you are using Gradle 2.2.x (project build.gradle)

birgernass commented 7 years ago

I am already using Gradle 2.2.3

How did you reproduce this bug? I would like to debug it, but can't reproduce it so far.

Jobeso commented 7 years ago

@hsxiaochou We are running on Gradle 2.2.3 but still get the problem on some devices. Have you done anything beside that to fix it?

nizwafay commented 7 years ago

i've problem here too. the problem occurs when used startResolutionForResult on LocationServices

murzhang commented 7 years ago

hi,please check your code of MainActivity.java,if has onActivityResult,then throw this error. delete this code or modify PickerModule.java like this,make sure trigger event one times public void onActivityResult(Activity activity, final int requestCode, final int resultCode, final Intent data) { if(this.onActivityResultStatus>0) { this.onActivityResultStatus=0;

        if (requestCode == IMAGE_PICKER_REQUEST) {
            imagePickerResult(activity, requestCode, resultCode, data);
        } else if (requestCode == CAMERA_PICKER_REQUEST) {
            cameraPickerResult(activity, requestCode, resultCode, data);
        } else if (requestCode == UCrop.REQUEST_CROP) {
            croppingResult(activity, requestCode, resultCode, data);
        }
    }
}
Jobeso commented 7 years ago

@murzhang Thanks for your suggestion. Sadly it is not working for us. When building I get the error error: cannot find symbol if(this.onActivityResultStatus>0) {

jjdp commented 6 years ago

+1 on a Samsung SM-N9005 Android 5.0

a

tantan1 commented 6 years ago

"react-native-image-crop-picker": "^0.19.1", "react-native": "^0.53.0", "react": "^16.2.0", android 6

code

ImagePicker.openPicker({ }).then(image => { console.log(image); });

App crash when open image picker at the first time. And show this issue

java.lang.RuntimeException: Failure delivering result ResultInfo{who=null, request=61110, result=-1, data=Intent { dat=content://com.android.providers.media.documents/document/image:36 flg=0x1 }} to activity {com.winningfotos.kodak/com.winningfotos.kodak.MainActivity}: java.lang.NullPointerException: Attempt to invoke virtual method 'void com.reactnative.ivpusic.imagepicker.ResultCollector.notifyProblem(java.lang.String, java.lang.String)' on a null object reference at android.app.ActivityThread.deliverResults(ActivityThread.java:3699) at android.app.ActivityThread.handleSendResult(ActivityThread.java:3742) at android.app.ActivityThread.-wrap16(ActivityThread.java) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1393) at android.os.Handler.dispatchMessage(Handler.java:102) at android.os.Looper.loop(Looper.java:148) at android.app.ActivityThread.main(ActivityThread.java:5417) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616) Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'void com.reactnative.ivpusic.imagepicker.ResultCollector.notifyProblem(java.lang.String, java.lang.String)' on a null object reference at com.reactnative.ivpusic.imagepicker.PickerModule.imagePickerResult(PickerModule.java:643) at com.reactnative.ivpusic.imagepicker.PickerModule.onActivityResult(PickerModule.java:700) at com.facebook.react.bridge.ReactContext.onActivityResult(ReactContext.java:255) at com.facebook.react.ReactInstanceManager.onActivityResult(ReactInstanceManager.java:706) at com.facebook.react.ReactActivityDelegate.onActivityResult(ReactActivityDelegate.java:126) at com.facebook.react.ReactActivity.onActivityResult(ReactActivity.java:77) at com.winningfotos.kodak.MainActivity.onActivityResult(MainActivity.java:65) at android.app.Activity.dispatchActivityResult(Activity.java:6428) at android.app.ActivityThread.deliverResults(ActivityThread.java:3695) at android.app.ActivityThread.handleSendResult(ActivityThread.java:3742)  at android.app.ActivityThread.-wrap16(ActivityThread.java)  at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1393)  at android.os.Handler.dispatchMessage(Handler.java:102)  at android.os.Looper.loop(Looper.java:148)  at android.app.ActivityThread.main(ActivityThread.java:5417)  at java.lang.reflect.Method.invoke(Native Method)  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726)  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616) 

ivpusic commented 6 years ago

should be fixed in https://github.com/ivpusic/react-native-image-crop-picker/releases/tag/v0.20.3