Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

The application crashes when taking a photo with the camera on Android on iOS it works normally #2051

Open
williamingenews opened this issue Apr 30, 2024 · 0 comments

Comments

@williamingenews
Copy link

Version

Tell us which versions you are using:

  • react-native-image-crop-picker v0.40.3
  • react-native v0.72.3

Platform

Tell us to which platform this issue is related

  • Android

Expected behaviour

Avoid crashes on some cell phones when taking a photo

Actual behaviour

Every time you open the camera and take a photo, the application immediately closes, but this only happens in some cases because there are other Android phones where this does not happen to me.

Steps to reproduce

  1. Set the option to open camera:
   ImagePicker.openCamera({
      compressImageMaxWidth:720,
      comprimeImageQuality:1,
      cropping:false
  }).then((image) => {
      console.log(props.route.params);
      console.log(image);
      saveImage(props.route.params.id,props.route.params.tipo_servicio, image);
  })
  .catch((error) => {
      console.log(error);
  });
  1. Run the real device on Android.

Attachments

// stacktrace or any other useful debug info
I started checking the Android Studio logcat when testing and it gave me this error:

FATAL EXCEPTION: main
Process: com.ingenews.tllevoconductor, PID: 16051
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.ingenews.tllevoconductor/com.ingenews.tllevoconductor.MainActivity}: androidx.fragment.app.Fragment$InstantiationException: Unable to instantiate fragment com.swmansion.rnscreens.ScreenStackFragment: calling Fragment constructor caused an exception
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3751)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3919)
at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:103)
at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:135)
at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:95)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2311)
at android.os.Handler.dispatchMessage(Handler.java:111)
at android.os.Looper.loopOnce(Looper.java:238)
at android.os.Looper.loop(Looper.java:357)
at android.app.ActivityThread.main(ActivityThread.java:8090)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:548)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1026)
Caused by: androidx.fragment.app.Fragment$InstantiationException: Unable to instantiate fragment com.swmansion.rnscreens.ScreenStackFragment: calling Fragment constructor caused an exception
at androidx.fragment.app.Fragment.instantiate(Fragment.java:631)
at androidx.fragment.app.FragmentContainer.instantiate(FragmentContainer.java:57)
at androidx.fragment.app.FragmentManager$3.instantiate(FragmentManager.java:483)
at androidx.fragment.app.FragmentStateManager.<init>(FragmentStateManager.java:85)
at androidx.fragment.app.FragmentManager.restoreSaveState(FragmentManager.java:2728)
at androidx.fragment.app.FragmentController.restoreSaveState(FragmentController.java:198)
at androidx.fragment.app.FragmentActivity$2.onContextAvailable(FragmentActivity.java:149)
at androidx.activity.contextaware.ContextAwareHelper.dispatchOnContextAvailable(ContextAwareHelper.java:99)
at androidx.activity.ComponentActivity.onCreate(ComponentActivity.java:322)
at androidx.fragment.app.FragmentActivity.onCreate(FragmentActivity.java:273)
at com.facebook.react.ReactActivity.onCreate(ReactActivity.java:45)
at android.app.Activity.performCreate(Activity.java:8232)
at android.app.Activity.performCreate(Activity.java:8212)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1331)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3724)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3919) 
at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:103) 
at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:135) 
at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:95) 
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2311) 
at android.os.Handler.dispatchMessage(Handler.java:111) 
at android.os.Looper.loopOnce(Looper.java:238) 
at android.os.Looper.loop(Looper.java:357) 
at android.app.ActivityThread.main(ActivityThread.java:8090) 
at java.lang.reflect.Method.invoke(Native Method) 
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:548) 
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1026) 
Caused by: java.lang.reflect.InvocationTargetException
at java.lang.reflect.Constructor.newInstance0(Native Method)
at java.lang.reflect.Constructor.newInstance(Constructor.java:343)
at androidx.fragment.app.Fragment.instantiate(Fragment.java:613)
at androidx.fragment.app.FragmentContainer.instantiate(FragmentContainer.java:57) 
at androidx.fragment.app.FragmentManager$3.instantiate(FragmentManager.java:483) 
at androidx.fragment.app.FragmentStateManager.<init>(FragmentStateManager.java:85) 
at androidx.fragment.app.FragmentManager.restoreSaveState(FragmentManager.java:2728) 
at androidx.fragment.app.FragmentController.restoreSaveState(FragmentController.java:198) 
at androidx.fragment.app.FragmentActivity$2.onContextAvailable(FragmentActivity.java:149) 
at androidx.activity.contextaware.ContextAwareHelper.dispatchOnContextAvailable(ContextAwareHelper.java:99) 
at androidx.activity.ComponentActivity.onCreate(ComponentActivity.java:322) 
at androidx.fragment.app.FragmentActivity.onCreate(FragmentActivity.java:273) 
at com.facebook.react.ReactActivity.onCreate(ReactActivity.java:45) 
at android.app.Activity.performCreate(Activity.java:8232) 
at android.app.Activity.performCreate(Activity.java:8212) 
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1331) 
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3724) 
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3919) 
at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:103) 
at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:135) 
at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:95) 
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2311) 
at android.os.Handler.dispatchMessage(Handler.java:111) 
at android.os.Looper.loopOnce(Looper.java:238) 
at android.os.Looper.loop(Looper.java:357) 
at android.app.ActivityThread.main(ActivityThread.java:8090) 
at java.lang.reflect.Method.invoke(Native Method) 
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:548) 
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1026) 
Caused by: java.lang.IllegalStateException: Screen fragments should never be restored. Follow instructions from https://github.com/software-mansion/react-native-screens/issues/17#issuecomment-424704067 to properly configure your main activity.
at com.swmansion.rnscreens.ScreenFragment.<init>(ScreenFragment.kt:54)
at com.swmansion.rnscreens.ScreenStackFragment.<init>(ScreenStackFragment.kt:35)
at java.lang.reflect.Constructor.newInstance0(Native Method) 
at java.lang.reflect.Constructor.newInstance(Constructor.java:343) 
at androidx.fragment.app.Fragment.instantiate(Fragment.java:613) 
at androidx.fragment.app.FragmentContainer.instantiate(FragmentContainer.java:57) 
at androidx.fragment.app.FragmentManager$3.instantiate(FragmentManager.java:483) 
at androidx.fragment.app.FragmentStateManager.<init>(FragmentStateManager.java:85) 
at androidx.fragment.app.FragmentManager.restoreSaveState(FragmentManager.java:2728) 
at androidx.fragment.app.FragmentController.restoreSaveState(FragmentController.java:198) 
at androidx.fragment.app.FragmentActivity$2.onContextAvailable(FragmentActivity.java:149) 
at androidx.activity.contextaware.ContextAwareHelper.dispatchOnContextAvailable(ContextAwareHelper.java:99) 
at androidx.activity.ComponentActivity.onCreate(ComponentActivity.java:322) 
at androidx.fragment.app.FragmentActivity.onCreate(FragmentActivity.java:273) 
at com.facebook.react.ReactActivity.onCreate(ReactActivity.java:45) 
at android.app.Activity.performCreate(Activity.java:8232) 
at android.app.Activity.performCreate(Activity.java:8212) 
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1331) 
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3724) 
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3919) 
at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:103) 
at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:135) 
at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:95) 
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2311) 
at android.os.Handler.dispatchMessage(Handler.java:111) 
at android.os.Looper.loopOnce(Looper.java:238) 
at android.os.Looper.loop(Looper.java:357) 
at android.app.ActivityThread.main(ActivityThread.java:8090) 
at java.lang.reflect.Method.invoke(Native Method) 
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:548) 
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1026) 

Love react-native-image-crop-picker? Please consider supporting our collective:
👉 https://opencollective.com/react-native-image-crop-picker/donate

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant