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

java.util.concurrent.ExecutionException when initial camera #78

Closed
kyze8439690 opened this issue Nov 11, 2022 · 2 comments
Closed

java.util.concurrent.ExecutionException when initial camera #78

kyze8439690 opened this issue Nov 11, 2022 · 2 comments

Comments

@kyze8439690
Copy link

kyze8439690 commented Nov 11, 2022

Crash log as below:

Caused by java.util.concurrent.ExecutionException: w.s0: java.lang.IllegalStateException: Failed to register a camera service listener
       at androidx.concurrent.futures.AbstractResolvableFuture.getDoneValue(AbstractResolvableFuture.java:518)
       at androidx.concurrent.futures.AbstractResolvableFuture.get(AbstractResolvableFuture.java:475)
       at androidx.concurrent.futures.CallbackToFutureAdapter$SafeFuture.get(CallbackToFutureAdapter.java:199)
       at androidx.camera.core.impl.utils.futures.FutureChain.get(FutureChain.java:157)
       at androidx.camera.core.impl.utils.futures.ChainingListenableFuture.get(ChainingListenableFuture.java:107)
       at io.github.g00fy2.quickie.QRScannerActivity.startCamera$lambda$5(QRScannerActivity.java:88)
       at androidx.camera.core.ProcessingImageReader$$InternalSyntheticLambda$4$dbaec4db6246f9a70463e1ad230a0f23052441fbc13c08a22670d4bb6101a731$0.run$bridge(ProcessingImageReader.java:68)
       at android.os.Handler.handleCallback(Handler.java:883)
       at android.os.Handler.dispatchMessage(Handler.java:100)
       at android.os.Looper.loop(Looper.java:214)
       at android.app.ActivityThread.main(ActivityThread.java:7397)
       at java.lang.reflect.Method.invoke(Method.java)
       at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:492)
       at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:935)

Caused by w.s0: java.lang.IllegalStateException: Failed to register a camera service listener
       at androidx.camera.core.CameraX.lambda$initAndRetryRecursively$2(CameraX.java:373)
       at androidx.camera.core.CameraX$$InternalSyntheticLambda$5$845f10987ef598ac292769067d92d63fd4aa661f29de3bb3ed47d03f5eaa76ed$0.run(CameraX.java:292)
       at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
       at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
       at java.lang.Thread.run(Thread.java:919)

Caused by java.lang.IllegalStateException: Failed to register a camera service listener
       at android.hardware.camera2.CameraManager$CameraManagerGlobal.connectCameraServiceLocked(CameraManager.java:1023)
       at android.hardware.camera2.CameraManager$CameraManagerGlobal.getCameraIdList(CameraManager.java:1037)
       at android.hardware.camera2.CameraManager.getCameraIdList(CameraManager.java:111)
       at androidx.camera.camera2.internal.compat.CameraManagerCompatBaseImpl.getCameraIdList(CameraManagerCompatBaseImpl.java:58)
       at androidx.camera.camera2.internal.compat.CameraManagerCompat.getCameraIdList(CameraManagerCompat.java:98)
       at androidx.camera.camera2.internal.CameraSelectionOptimizer.getSelectedAvailableCameraIds(CameraSelectionOptimizer.java:49)
       at androidx.camera.camera2.internal.Camera2CameraFactory.<init>(Camera2CameraFactory.java:69)
       at androidx.camera.camera2.Camera2Config$$InternalSyntheticLambda$1$b737bf8082c5f7ea267385a154eefca2640a55b974e0d2599d3c3cd43ba9dca3$0.newInstance(Camera2Config.java:2)
       at androidx.camera.core.CameraX.lambda$initAndRetryRecursively$2(CameraX.java:312)
       at androidx.camera.core.CameraX$$InternalSyntheticLambda$5$845f10987ef598ac292769067d92d63fd4aa661f29de3bb3ed47d03f5eaa76ed$0.run(CameraX.java:54)
       at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
       at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
       at java.lang.Thread.run(Thread.java:919)

Caused by android.os.ServiceSpecificException: addListenerHelper:1811: Listener already registered
       at android.os.Parcel.createException(Parcel.java:2085)
       at android.os.Parcel.readException(Parcel.java:2039)
       at android.os.Parcel.readException(Parcel.java:1987)
       at android.hardware.ICameraService$Stub$Proxy.addListener(ICameraService.java:639)
       at android.hardware.camera2.CameraManager$CameraManagerGlobal.connectCameraServiceLocked(CameraManager.java:1016)
       at android.hardware.camera2.CameraManager$CameraManagerGlobal.getCameraIdList(CameraManager.java:1037)
       at android.hardware.camera2.CameraManager.getCameraIdList(CameraManager.java:111)
       at androidx.camera.camera2.internal.compat.CameraManagerCompatBaseImpl.getCameraIdList(CameraManagerCompatBaseImpl.java:58)
       at androidx.camera.camera2.internal.compat.CameraManagerCompat.getCameraIdList(CameraManagerCompat.java:98)
       at androidx.camera.camera2.internal.CameraSelectionOptimizer.getSelectedAvailableCameraIds(CameraSelectionOptimizer.java:49)
       at androidx.camera.camera2.internal.Camera2CameraFactory.<init>(Camera2CameraFactory.java:69)
       at androidx.camera.camera2.Camera2Config$$InternalSyntheticLambda$1$b737bf8082c5f7ea267385a154eefca2640a55b974e0d2599d3c3cd43ba9dca3$0.newInstance(Camera2Config.java:2)
       at androidx.camera.core.CameraX.lambda$initAndRetryRecursively$2(CameraX.java:312)
       at androidx.camera.core.CameraX$$InternalSyntheticLambda$5$845f10987ef598ac292769067d92d63fd4aa661f29de3bb3ed47d03f5eaa76ed$0.run(CameraX.java:54)
       at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
       at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
       at java.lang.Thread.run(Thread.java:919)
@kyze8439690
Copy link
Author

Seems exception is throw from framework layer, maybe we can catch this and fallback to failture callback?

https://android.googlesource.com/platform/frameworks/base/+/cd92588/core/java/android/hardware/camera2/CameraManager.java#85

@G00fY2
Copy link
Owner

G00fY2 commented Jan 8, 2023

@kyze8439690 This should now be fixed by 54d78f4, which is part of the 1.6.0 release.

@G00fY2 G00fY2 closed this as completed Jan 8, 2023
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

2 participants