Closed ak-cloud closed 2 years ago
Hi, seems like a pretty easy scenario to reproduce. Thank you for reporting it, will try it and fix it!
Stack overflow reference if you find the issue and solution https://stackoverflow.com/questions/65966286/flutter-android-app-crashes-on-all-devices
Seems like a good log, this will help. Will try to fix this after lunch.
pls solve this
I'm on it ;)
I think you got a first crash log. I'm not pretty sure It's coming from camerAwesome or a conflict with two libs. For now I can't reproduce it. Uninstalled the example and installed never crashed on Android 9/10.
Could you give me :
Also:
<uses-feature android:name="android.hardware.camera" android:required="true"/>
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.FLASHLIGHT"/>
<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
compileSdkVersion 30
minSdkVersion 21
targetSdkVersion 30
Hey I have a related problem when using Permission Handler before using the camera the first time. Here's my error log:
D/com.apparence.camerawesome.CamerawesomePlugin(11746): _handleCheckPermissions:
E/flutter (11746): [ERROR:flutter/lib/ui/ui_dart_state.cc(186)] Unhandled Exception: Null check operator used on a null value
E/flutter (11746): #0 CameraAwesomeState.initPlatformState.<anonymous closure>
package:camerawesome/camerapreview.dart:188
E/flutter (11746): #1 _rootRunUnary (dart:async/zone.dart:1362:47)
E/flutter (11746): #2 _CustomZone.runUnary (dart:async/zone.dart:1265:19)
E/flutter (11746): #3 _CustomZone.runUnaryGuarded (dart:async/zone.dart:1170:7)
E/flutter (11746): #4 _BufferingStreamSubscription._sendData (dart:async/stream_impl.dart:341:11)
E/flutter (11746): #5 _BufferingStreamSubscription._add (dart:async/stream_impl.dart:271:7)
E/flutter (11746): #6 _SinkTransformerStreamSubscription._add (dart:async/stream_transformers.dart:63:11)
E/flutter (11746): #7 _EventSinkWrapper.add (dart:async/stream_transformers.dart:13:11)
E/flutter (11746): #8 CamerawesomePlugin.listenPermissionResult.<anonymous closure>
package:camerawesome/camerawesome_plugin.dart:125
E/flutter (11746): #9 _HandlerEventSink.add (dart:async/stream_transformers.dart:209:17)
E/flutter (11746): #10 _SinkTransformerStreamSubscription._handleData (dart:async/stream_transformers.dart:111:24)
E/flutter (11746): #11 _rootRunUnary (dart:async/zone.dart:1362:47)
E/flutter (11746): #12 _CustomZone.runUnary (dart:async/zone.dart:1265:19)
E/flutter (11746): #13 _CustomZone.runUnaryGuarded (dart:async/zone.dart:1170:7)
E/flutter (11746): #14 _BufferingStreamSubscription._sendData (dart:async/stream_impl.dart:341:11)
E/flutter (11746): #15 _DelayedData.perform (dart:async/stream_impl.dart:591:14)
E/flutter (11746): #16 _StreamImplEvents.handleNext (dart:async/stream_impl.dart:706:11)
E/flutter (11746): #17 _PendingEvents.schedule.<anonymous closure> (dart:async/stream_impl.dart:663:7)
E/flutter (11746): #18 _rootRun (dart:async/zone.dart:1346:47)
E/flutter (11746): #19 _CustomZone.run (dart:async/zone.dart:1258:19)
E/flutter (11746): #20 _CustomZone.runGuarded (dart:async/zone.dart:1162:7)
E/flutter (11746): #21 _CustomZone.bindCallbackGuarded.<anonymous closure> (dart:async/zone.dart:1202:23)
E/flutter (11746): #22 _rootRun (dart:async/zone.dart:1354:13)
E/flutter (11746): #23 _CustomZone.run (dart:async/zone.dart:1258:19)
E/flutter (11746): #24 _CustomZone.runGuarded (dart:async/zone.dart:1162:7)
E/flutter (11746): #25 _CustomZone.bindCallbackGuarded.<anonymous closure> (dart:async/zone.dart:1202:23)
E/flutter (11746): #26 _microtaskLoop (dart:async/schedule_microtask.dart:40:21)
E/flutter (11746): #27 _startMicrotaskLoop (dart:async/schedule_microtask.dart:49:5)
Ah think I found it! Line 188 of camera preview uses ! operator. I think ? would be a better choice in this case, cause otherwise one always has to implement a dummy onPermissionsResult.
Yes you are right, that's a null safety migration mistake!
You can create a pull request, we'll validate it right away
Awesome I created one!
Fixed this on 0.3.3
Steps to Reproduce
Install a app for first time with this dependency and you get the error Describe how to reproduce the error Uninstall all versions of your app from the app and reinstall. Error appears at launch and app crashes
Expected results
App to load What it should be
Actual results
App crashes What you see Below error: E/AndroidRuntime( 7923): java.lang.RuntimeException: Unable to destroy activity {mypackage.myapp/mypackage.myapp.MainActivity}: java.lang.NullPointerException: Attempt to invoke virtual method 'void com.apparence.camerawesome.CameraPreview.setMainHandler(android.os.Handler)' on a null object reference E/AndroidRuntime( 7923): at android.app.ActivityThread.performDestroyActivity(ActivityThread.java:5105) E/AndroidRuntime( 7923): at android.app.ActivityThread.handleDestroyActivity(ActivityThread.java:5135) E/AndroidRuntime( 7923): at android.app.ActivityThread.handleRelaunchActivityInner(ActivityThread.java:5427) E/AndroidRuntime( 7923): at android.app.ActivityThread.handleRelaunchActivity(ActivityThread.java:5357) E/AndroidRuntime( 7923): at android.app.servertransaction.ActivityRelaunchItem.execute(ActivityRelaunchItem.java:69) E/AndroidRuntime( 7923): at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:135) E/AndroidRuntime( 7923): at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:95) E/AndroidRuntime( 7923): at android.app.ClientTransactionHandler.executeTransaction(ClientTransactionHandler.java:58) E/AndroidRuntime( 7923): at android.app.ActivityThread.handleRelaunchActivityLocally(ActivityThread.java:5410) E/AndroidRuntime( 7923): at android.app.ActivityThread.access$3300(ActivityThread.java:237) E/AndroidRuntime( 7923): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2076) E/AndroidRuntime( 7923): at android.os.Handler.dispatchMessage(Handler.java:106) E/AndroidRuntime( 7923): at android.os.Looper.loop(Looper.java:223) E/AndroidRuntime( 7923): at android.app.ActivityThread.main(ActivityThread.java:7660) E/AndroidRuntime( 7923): at java.lang.reflect.Method.invoke(Native Method) E/AndroidRuntime( 7923): at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:592) E/AndroidRuntime( 7923): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:947) E/AndroidRuntime( 7923): Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'void com.apparence.camerawesome.CameraPreview.setMainHandler(android.os.Handler)' on a null object reference E/AndroidRuntime( 7923): at com.apparence.camerawesome.CamerawesomePlugin.onDetachedFromActivityForConfigChanges(CamerawesomePlugin.java:521) E/AndroidRuntime( 7923): at io.flutter.embedding.engine.FlutterEnginePluginRegistry.detachFromActivityForConfigChanges(FlutterEnginePluginRegistry.java:328) E/AndroidRuntime( 7923): at io.flutter.embedding.android.FlutterActivityAndFragmentDelegate.onDetach(FlutterActivityAndFragmentDelegate.java:510) E/AndroidRuntime( 7923): at io.flutter.embedding.android.FlutterActivity.onDestroy(FlutterActivity.java:577) E/AndroidRuntime( 7923): at android.app.Activity.performDestroy(Activity.java:8245) E/AndroidRuntime( 7923): at android.app.Instrumentation.callActivityOnDestroy(Instrumentation.java:1344) E/AndroidRuntime( 7923): at android.app.ActivityThread.performDestroyActivity(ActivityThread.java:5090) E/AndroidRuntime( 7923): ... 16 more
About your device