LuckSiege / LuckSiege/PictureSelector
Caused by java.lang.IllegalArgumentException: No available camera can be found.
Nobody has claimed this yet.
- Dominant language
- Java
- Stars
- 13.6k
- Forks
- 3.1k
- PR merge metrics
- No merged PRs in 30d
Description
品牌:Google
型号:MBOX
andorid10
Fatal Exception: java.lang.IllegalStateException: The selected camera does not support the enabled use cases. Please disable use case and/or select a different camera. e.g. #setVideoCaptureEnabled(false)
at androidx.camera.view.CameraController.startCameraAndTrackStates(CameraController.java:1117)
at androidx.camera.view.CameraController.setEnabledUseCases(CameraController.java:364)
at com.luck.picture.lib.camera.CustomCameraView$2.takePictures(CustomCameraView.java:149)
at com.luck.picture.lib.camera.view.CaptureLayout$2.takePictures(CaptureLayout.java:152)
at com.luck.picture.lib.camera.view.CaptureButton$1.onAnimationStart(CaptureButton.java:244)
at android.animation.Animator$AnimatorListener.onAnimationStart(Animator.java:538)
at android.animation.ValueAnimator.notifyStartListeners(ValueAnimator.java:1023)
at android.animation.ValueAnimator.startAnimation(ValueAnimator.java:1272)
at android.animation.ValueAnimator.start(ValueAnimator.java:1074)
at android.animation.ValueAnimator.start(ValueAnimator.java:1098)
at com.luck.picture.lib.camera.view.CaptureButton.startCaptureAnimation(CaptureButton.java:251)
at com.luck.picture.lib.camera.view.CaptureButton.handlerPressByState(CaptureButton.java:179)
at com.luck.picture.lib.camera.view.CaptureButton.onTouchEvent(CaptureButton.java:163)
at android.view.View.dispatchTouchEvent(View.java:13430)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3060)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2755)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3060)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2755)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3060)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2755)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3060)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2755)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3060)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2755)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3060)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2755)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3060)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2755)
at com.android.internal.policy.DecorView.superDispatchTouchEvent(DecorView.java:465)
at com.android.internal.policy.PhoneWindow.superDispatchTouchEvent(PhoneWindow.java:1849)
at android.app.Activity.dispatchTouchEvent(Activity.java:3995)
at androidx.appcompat.view.WindowCallbackWrapper.dispatchTouchEvent(WindowCallbackWrapper.java:69)
at com.android.internal.policy.DecorView.dispatchTouchEvent(DecorView.java:423)
at android.view.View.dispatchPointerEvent(View.java:13689)
at android.view.ViewRootImpl$ViewPostImeInputStage.processPointerEvent(ViewRootImpl.java:5493)
at android.view.ViewRootImpl$ViewPostImeInputStage.onProcess(ViewRootImpl.java:5296)
at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:4799)
at android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:4852)
at android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:4818)
at android.view.ViewRootImpl$AsyncInputStage.forward(ViewRootImpl.java:4958)
at android.view.ViewRootImpl$InputStage.apply(ViewRootImpl.java:4826)
at android.view.ViewRootImpl$AsyncInputStage.apply(ViewRootImpl.java:5015)
at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:4799)
at android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:4852)
at android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:4818)
at android.view.ViewRootImpl$InputStage.apply(ViewRootImpl.java:4826)
at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:4799)
at android.view.ViewRootImpl.deliverInputEvent(ViewRootImpl.java:7516)
at android.view.ViewRootImpl.doProcessInputEvents(ViewRootImpl.java:7485)
at android.view.ViewRootImpl.enqueueInputEvent(ViewRootImpl.java:7446)
at android.view.ViewRootImpl$WindowInputEventReceiver.onInputEvent(ViewRootImpl.java:7641)
at android.view.InputEventReceiver.dispatchInputEvent(InputEventReceiver.java:188)
at android.os.MessageQueue.nativePollOnce(MessageQueue.java)
at android.os.MessageQueue.next(MessageQueue.java:336)
at android.os.Looper.loop(Looper.java:174)
at android.app.ActivityThread.main(ActivityThread.java:7356)
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:1067)
Caused by java.lang.IllegalArgumentException: No available camera can be found.
at androidx.camera.core.CameraSelector.filter(CameraSelector.java:105)
at androidx.camera.core.CameraSelector.filter(CameraSelector.java:135)
at androidx.camera.lifecycle.ProcessCameraProvider.bindToLifecycle(ProcessCameraProvider.java:400)
at androidx.camera.lifecycle.ProcessCameraProvider.bindToLifecycle(ProcessCameraProvider.java:310)
at androidx.camera.view.LifecycleCameraController.startCamera(LifecycleCameraController.java:135)
at androidx.camera.view.CameraController.startCameraAndTrackStates(CameraController.java:1107)
at androidx.camera.view.CameraController.setEnabledUseCases(CameraController.java:364)
at com.luck.picture.lib.camera.CustomCameraView$2.takePictures(CustomCameraView.java:149)
at com.luck.picture.lib.camera.view.CaptureLayout$2.takePictures(CaptureLayout.java:152)
at com.luck.picture.lib.camera.view.CaptureButton$1.onAnimationStart(CaptureButton.java:244)
at android.animation.Animator$AnimatorListener.onAnimationStart(Animator.java:538)
at android.animation.ValueAnimator.notifyStartListeners(ValueAnimator.java:1023)
at android.animation.ValueAnimator.startAnimation(ValueAnimator.java:1272)
at android.animation.ValueAnimator.start(ValueAnimator.java:1074)
at android.animation.ValueAnimator.start(ValueAnimator.java:1098)
at com.luck.picture.lib.camera.view.CaptureButton.startCaptureAnimation(CaptureButton.java:251)
at com.luck.picture.lib.camera.view.CaptureButton.handlerPressByState(CaptureButton.java:179)
at com.luck.picture.lib.camera.view.CaptureButton.onTouchEvent(CaptureButton.java:163)
at android.view.View.dispatchTouchEvent(View.java:13430)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3060)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2755)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3060)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2755)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3060)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2755)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3060)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2755)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3060)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2755)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3060)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2755)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3060)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2755)
at com.android.internal.policy.DecorView.superDispatchTouchEvent(DecorView.java:465)
at com.android.internal.policy.PhoneWindow.superDispatchTouchEvent(PhoneWindow.java:1849)
at android.app.Activity.dispatchTouchEvent(Activity.java:3995)
at androidx.appcompat.view.WindowCallbackWrapper.dispatchTouchEvent(WindowCallbackWrapper.java:69)
at com.android.internal.policy.DecorView.dispatchTouchEvent(DecorView.java:423)
at android.view.View.dispatchPointerEvent(View.java:13689)
at android.view.ViewRootImpl$ViewPostImeInputStage.processPointerEvent(ViewRootImpl.java:5493)
at android.view.ViewRootImpl$ViewPostImeInputStage.onProcess(ViewRootImpl.java:5296)
at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:4799)
at android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:4852)
at android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:4818)
at android.view.ViewRootImpl$AsyncInputStage.forward(ViewRootImpl.java:4958)
at android.view.ViewRootImpl$InputStage.apply(ViewRootImpl.java:4826)
at android.view.ViewRootImpl$AsyncInputStage.apply(ViewRootImpl.java:5015)
at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:4799)
at android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:4852)
at android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:4818)
at android.view.ViewRootImpl$InputStage.apply(ViewRootImpl.java:4826)
at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:4799)
at android.view.ViewRootImpl.deliverInputEvent(ViewRootImpl.java:7516)
at android.view.ViewRootImpl.doProcessInputEvents(ViewRootImpl.java:7485)
at android.view.ViewRootImpl.enqueueInputEvent(ViewRootImpl.java:7446)
at android.view.ViewRootImpl$WindowInputEventReceiver.onInputEvent(ViewRootImpl.java:7641)
at android.view.InputEventReceiver.dispatchInputEvent(InputEventReceiver.java:188)
at android.os.MessageQueue.nativePollOnce(MessageQueue.java)
at android.os.MessageQueue.next(MessageQueue.java:336)
at android.os.Looper.loop(Looper.java:174)
at android.app.ActivityThread.main(ActivityThread.java:7356)
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:1067)
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Reproduce the camera-capture failure on the reported Google MBOX running Android 10, then trace the path through com.luck.picture.lib.camera.CustomCameraView.java:149 and the CameraController stack frames shown in the report. Compare the selected camera and enabled use cases at the failure point; done means capture no longer raises the reported no-available-camera exception on the affected device.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- android, java
- Domain
- mobile
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 30/100