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
850 stars 498 forks source link

Camera not found on Android 11 #1109

Open Maryusz opened 3 months ago

Maryusz commented 3 months ago

Hello, I have the following issue only on some Android 11 phones.

D/CameraValidator( 2192): Verifying camera lens facing on A13, lensFacingInteger: null
E/CameraValidator( 2192): Camera LensFacing verification failed, existing cameras: [Camera@131caf1[id=0], Camera@8201aae[id=1], Camera@9f231c8[id=3], Camera@cf433e3[id=4]]
W/CameraX ( 2192): Retry init. Start time 1137333660 current time 1137333810
W/CameraX ( 2192): androidx.camera.core.impl.CameraValidator$CameraIdListIncorrectException: Expected camera missing from device.
W/CameraX ( 2192):  at androidx.camera.core.impl.CameraValidator.validateCameras(CameraValidator.java:97)
W/CameraX ( 2192):  at androidx.camera.core.CameraX.lambda$initAndRetryRecursively$2$androidx-camera-core-CameraX(CameraX.java:334)
W/CameraX ( 2192):  at androidx.camera.core.CameraX$$ExternalSyntheticLambda3.run(Unknown Source:10)
W/CameraX ( 2192):  at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
W/CameraX ( 2192):  at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
W/CameraX ( 2192):  at java.lang.Thread.run(Thread.java:923)
W/CameraX ( 2192): Caused by: java.lang.IllegalArgumentException: The given lens facing integer: 255 can not be recognized.
W/CameraX ( 2192):  at androidx.camera.camera2.internal.LensFacingUtil.getCameraSelectorLensFacing(LensFacingUtil.java:56)
W/CameraX ( 2192):  at androidx.camera.camera2.internal.Camera2CameraInfoImpl.getLensFacing(Camera2CameraInfoImpl.java:198)
W/CameraX ( 2192):  at androidx.camera.core.impl.LensFacingCameraFilter.filter(LensFacingCameraFilter.java:48)
W/CameraX ( 2192):  at androidx.camera.core.CameraSelector.filter(CameraSelector.java:128)
W/CameraX ( 2192):  at androidx.camera.core.CameraSelector.filter(CameraSelector.java:153)
W/CameraX ( 2192):  at androidx.camera.core.CameraSelector.select(CameraSelector.java:90)
W/CameraX ( 2192):  at androidx.camera.core.impl.CameraValidator.validateCameras(CameraValidator.java:83)
W/CameraX ( 2192):  ... 5 more
D/CameraRepository( 2192): Added camera: 0
I/Camera2CameraInfo( 2192): Device Level: INFO_SUPPORTED_HARDWARE_LEVEL_LIMITED
D/CameraRepository( 2192): Added camera: 1
I/Camera2CameraInfo( 2192): Device Level: INFO_SUPPORTED_HARDWARE_LEVEL_LIMITED
D/CameraRepository( 2192): Added camera: 3
I/Camera2CameraInfo( 2192): Device Level: INFO_SUPPORTED_HARDWARE_LEVEL_LIMITED
D/CameraRepository( 2192): Added camera: 4
I/Camera2CameraInfo( 2192): Device Level: INFO_SUPPORTED_HARDWARE_LEVEL_LIMITED

This doesn't permit to scan any code.
Is there any solution to this?

navaronbracke commented 3 months ago

What type of camera is camera id 2 ? Because that one seems to be missing?

Is this a USB camera?

Maryusz commented 3 months ago

The phone have 2 cameras on the rear and one on the front, sincerely I don't know why the id camera n. 2 is missing.

However we have 5 phones of the same model (UMIDIGI) ehich have all the same issue.