juliansteenbakker / mobile_scanner

A universal scanner for Flutter based on MLKit. Uses CameraX on Android and AVFoundation on iOS.
BSD 3-Clause "New" or "Revised" License
813 stars 475 forks source link

App is crashing in production (com.amolg.flutterbarcodescanner.FlutterBarcodeScannerPlugin.clearPluginSetup) #928

Open OsamaQureshi796 opened 7 months ago

OsamaQureshi796 commented 7 months ago

Hi.

My app is crashing in production because of the java.lang.NullPointerException

plugin version is

mobile_scanner: ^3.5.5

Exception java.lang.RuntimeException: Unable to destroy activity {com.example.app/com.example.app.MainActivity}: java.lang.NullPointerException: Attempt to invoke virtual method 'void androidx.lifecycle.g.c(androidx.lifecycle.k)' on a null object reference
  at android.app.ActivityThread.performDestroyActivity (ActivityThread.java:5472)
  at android.app.ActivityThread.handleDestroyActivity (ActivityThread.java:5501)
  at android.app.servertransaction.DestroyActivityItem.execute (DestroyActivityItem.java:44)
  at android.app.servertransaction.TransactionExecutor.executeLifecycleState (TransactionExecutor.java:187)
  at android.app.servertransaction.TransactionExecutor.execute (TransactionExecutor.java:102)
  at android.app.ActivityThread$H.handleMessage (ActivityThread.java:2317)
  at android.os.Handler.dispatchMessage (Handler.java:106)
  at android.os.Looper.loop (Looper.java:263)
  at android.app.ActivityThread.main (ActivityThread.java:8292)
  at java.lang.reflect.Method.invoke
  at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run (RuntimeInit.java:612)
  at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:1006)
Caused by java.lang.NullPointerException: Attempt to invoke virtual method 'void androidx.lifecycle.g.c(androidx.lifecycle.k)' on a null object reference
  at com.amolg.flutterbarcodescanner.FlutterBarcodeScannerPlugin.clearPluginSetup (FlutterBarcodeScannerPlugin.java)
  at com.amolg.flutterbarcodescanner.FlutterBarcodeScannerPlugin.onDetachedFromActivity (FlutterBarcodeScannerPlugin.java)
  at io.flutter.embedding.engine.FlutterEngineConnectionRegistry.detachFromActivity (FlutterEngineConnectionRegistry.java)
  at io.flutter.embedding.android.FlutterActivityAndFragmentDelegate.onDetach (FlutterActivityAndFragmentDelegate.java)
  at io.flutter.embedding.android.FlutterFragment.onDetach (FlutterFragment.java)
  at androidx.fragment.app.Fragment.performDetach (Fragment.java)
  at androidx.fragment.app.FragmentStateManager.detach (FragmentStateManager.java)
  at androidx.fragment.app.FragmentStateManager.moveToExpectedState (FragmentStateManager.java)
  at androidx.fragment.app.SpecialEffectsController$FragmentStateManagerOperation.complete (SpecialEffectsController.java)
  at androidx.fragment.app.SpecialEffectsController$Operation.cancel (SpecialEffectsController.java)
  at androidx.fragment.app.SpecialEffectsController.forceCompleteAllOperations (SpecialEffectsController.java)
  at androidx.fragment.app.FragmentManager.dispatchStateChange (FragmentManager.java)
  at androidx.fragment.app.FragmentManager.dispatchDestroy (FragmentManager.java)
  at androidx.fragment.app.FragmentController.dispatchDestroy (FragmentController.java)
  at androidx.fragment.app.FragmentActivity.onDestroy (FragmentActivity.java)
  at android.app.Activity.performDestroy (Activity.java:8399)
  at android.app.Instrumentation.callActivityOnDestroy (Instrumentation.java:1345)
  at android.app.ActivityThread.performDestroyActivity (ActivityThread.java:5457)
navaronbracke commented 7 months ago

The line

Caused by java.lang.NullPointerException: Attempt to invoke virtual method 'void androidx.lifecycle.g.c(androidx.lifecycle.k)' on a null object reference
  at com.amolg.flutterbarcodescanner.FlutterBarcodeScannerPlugin.clearPluginSetup (FlutterBarcodeScannerPlugin.java)

Does not point to anything related to mobile_scanner, but rather a plugin or package that has com.amolg.flutterbarcodescanner.FlutterBarcodeScannerPlugin as plugin class.

This leads me to believe that this has nothing to do with mobile_scanner, as our plugin class is dev.steenbakker.mobile_scanner.MobileScannerPlugin.

Do you have a third party dependency called FlutterBarcodeScannerPlugin ?