Open ghost opened 3 years ago
Dette sker når appen er i baggrunden:
E/CameraCaptureSession(27837): android.hardware.camera2.CameraAccessException: CAMERA_ERROR (3): The camera device has encountered a serious error
E/CameraCaptureSession(27837): at android.hardware.camera2.impl.CameraDeviceImpl.checkIfCameraClosedOrInError(CameraDeviceImpl.java:2294)
E/CameraCaptureSession(27837): at android.hardware.camera2.impl.CameraDeviceImpl.stopRepeating(CameraDeviceImpl.java:1274)
E/CameraCaptureSession(27837): at android.hardware.camera2.impl.CameraCaptureSessionImpl.close(CameraCaptureSessionImpl.java:592)
E/CameraCaptureSession(27837): at io.flutter.plugins.camera.Camera.closeCaptureSession(Camera.java:1147)
E/CameraCaptureSession(27837): at io.flutter.plugins.camera.Camera.close(Camera.java:1153)
E/CameraCaptureSession(27837): at io.flutter.plugins.camera.Camera$1.onError(Camera.java:247)
E/CameraCaptureSession(27837): at android.hardware.camera2.impl.CameraDeviceImpl.notifyError(CameraDeviceImpl.java:1692)
E/CameraCaptureSession(27837): at android.hardware.camera2.impl.CameraDeviceImpl.lambda$oDs27OTfKFfK18rUW2nQxxkPdV0(Unknown Source:0)
E/CameraCaptureSession(27837): at android.hardware.camera2.impl.-$$Lambda$CameraDeviceImpl$oDs27OTfKFfK18rUW2nQxxkPdV0.accept(Unknown Source:8)
E/CameraCaptureSession(27837): at com.android.internal.util.function.pooled.PooledLambdaImpl.doInvoke(PooledLambdaImpl.java:278)
E/CameraCaptureSession(27837): at com.android.internal.util.function.pooled.PooledLambdaImpl.invoke(PooledLambdaImpl.java:201)
E/CameraCaptureSession(27837): at com.android.internal.util.function.pooled.OmniFunction.run(OmniFunction.java:97)
E/CameraCaptureSession(27837): at android.os.Handler.handleCallback(Handler.java:938)
E/CameraCaptureSession(27837): at android.os.Handler.dispatchMessage(Handler.java:99)
E/CameraCaptureSession(27837): at android.os.Looper.loop(Looper.java:233)
E/CameraCaptureSession(27837): at android.app.ActivityThread.main(ActivityThread.java:8010)
E/CameraCaptureSession(27837): at java.lang.reflect.Method.invoke(Native Method)
E/CameraCaptureSession(27837): at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:631)
E/CameraCaptureSession(27837): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:978)```
Når man går ind i appen er Preview frosset, man kan trykke på knapperne, ved tryk på blitz:
E/MethodChannel#plugins.flutter.io/camera(27837): Failed to handle method call
E/MethodChannel#plugins.flutter.io/camera(27837): java.lang.NullPointerException: Attempt to invoke virtual method 'java.lang.String android.hardware.camera2.CameraDevice.getId()' on a null object reference
E/MethodChannel#plugins.flutter.io/camera(27837): at io.flutter.plugins.camera.Camera.setFlashMode(Camera.java:707)
E/MethodChannel#plugins.flutter.io/camera(27837): at io.flutter.plugins.camera.MethodCallHandlerImpl.onMethodCall(MethodCallHandlerImpl.java:142)
E/MethodChannel#plugins.flutter.io/camera(27837): at io.flutter.plugin.common.MethodChannel$IncomingMethodCallHandler.onMessage(MethodChannel.java:233)
E/MethodChannel#plugins.flutter.io/camera(27837): at io.flutter.embedding.engine.dart.DartMessenger.handleMessageFromDart(DartMessenger.java:85)
E/MethodChannel#plugins.flutter.io/camera(27837): at io.flutter.embedding.engine.FlutterJNI.handlePlatformMessage(FlutterJNI.java:818)
E/MethodChannel#plugins.flutter.io/camera(27837): at android.os.MessageQueue.nativePollOnce(Native Method)
E/MethodChannel#plugins.flutter.io/camera(27837): at android.os.MessageQueue.next(MessageQueue.java:335)
E/MethodChannel#plugins.flutter.io/camera(27837): at android.os.Looper.loop(Looper.java:183)
E/MethodChannel#plugins.flutter.io/camera(27837): at android.app.ActivityThread.main(ActivityThread.java:8010)
E/MethodChannel#plugins.flutter.io/camera(27837): at java.lang.reflect.Method.invoke(Native Method)
E/MethodChannel#plugins.flutter.io/camera(27837): at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:631)
E/MethodChannel#plugins.flutter.io/camera(27837): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:978)
E/flutter (27837): [ERROR:flutter/lib/ui/ui_dart_state.cc(186)] Unhandled Exception: CameraException(error, Attempt to invoke virtual method 'java.lang.String android.hardware.camera2.CameraDevice.getId()' on a null object reference)
E/flutter (27837): #0 CameraController.setFlashMode (package:camera/src/camera_controller.dart:571:7)
E/flutter (27837): <asynchronous suspension>
E/flutter (27837): #1 _CameraState.toggleFlash.<anonymous closure> (package:ituvidit/camera.dart)
E/flutter (27837): <asynchronous suspension>
E/flutter (27837):
======== Exception caught by gesture ===============================================================
The following ArgumentError was thrown while handling a gesture:
Invalid argument (onError): Error handler must accept one Object or one Object and a StackTrace as arguments, and return a valid result: Closure: () => Null
When the exception was thrown, this was the stack:
#2 _CameraState.toggleFlash (package:ituvidit/camera.dart:351:10)
#3 _CameraState.build.<anonymous closure> (package:ituvidit/camera.dart:430:36)
#4 _InkResponseState._handleTap (package:flutter/src/material/ink_well.dart:991:20)
#5 GestureRecognizer.invokeCallback (package:flutter/src/gestures/recognizer.dart:182:24)
#6 TapGestureRecognizer.handleTapUp (package:flutter/src/gestures/tap.dart:607:11)
...
Handler: "onTap"
Recognizer: TapGestureRecognizer#fcbb5
debugOwner: GestureDetector
state: possible
won arena
finalPosition: Offset(347.2, 203.5)
finalLocalPosition: Offset(19.2, 34.9)
button: 1
sent tap down
====================================================================================================
D/ViewRootImpl[MainActivity](27837): windowFocusChanged hasFocus=false inTouchMode=true
Not fixed maybe? https://github.com/flutter/flutter/issues/61544
Hvis man går ud og ind af appen bliver CameraController null, og man skal skifte camera for at få det til at virke. Gør så hvis Camera klassen er mountet og controller == null, så lav ny controller.