m_O*_*O_m 5 android android-developer-api android-camerax
我正在使用该库的 1.1.0 版本浏览Android 开发人员https://developer.android.com/codelabs/camerax-getting-started#3上的 CameraX 教程。日志一开始看起来不错,但后来引发了 TimeoutException 并且相机预览保持黑色:
(omitted)
D/CameraStateRegistry: Recalculating open cameras:
Camera State
-------------------------------------------------------------------
Camera@f35a3d7[id=0] OPEN
Camera@e46a673[id=1] UNKNOWN
-------------------------------------------------------------------
Open count: 1 (Max allowed: 1)
D/CameraStateMachine: New public camera state CameraState{type=OPEN, error=null} from OPEN and null
D/CameraStateMachine: Publishing new public camera state CameraState{type=OPEN, error=null}
D/UseCaseAttachState: All use case: [androidx.camera.core.Preview-c7727ae2-d02c-4135-956c-a76c24deb02d40667318] for camera: 0
D/UseCaseAttachState: Active and attached use case: [androidx.camera.core.Preview-c7727ae2-d02c-4135-956c-a76c24deb02d40667318] for camera: 0
D/Camera2CameraImpl: {Camera@f35a3d7[id=0]} Transitioning camera internal state: OPENED --> OPENED
D/CameraStateMachine: New public camera state CameraState{type=OPEN, error=StateError{code=4, cause=java.util.concurrent.TimeoutException: Cannot complete surfaceList within 5000}} from OPEN and StateError{code=4, cause=java.util.concurrent.TimeoutException: Cannot complete surfaceList within 5000}
D/CameraStateMachine: Publishing new public camera state CameraState{type=OPEN, error=StateError{code=4, cause=java.util.concurrent.TimeoutException: Cannot complete surfaceList within 5000}}
Run Code Online (Sandbox Code Playgroud)
我的虚拟硬件是 Pixel 4 API 30,我的三星 A52 的行为方式相同。该代码与上面教程中的代码相同,但采用 Java 语言。
我究竟做错了什么?
小智 0
这很大概率是因为设置绑定时没有修改setContentView的内容。
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
viewBinding = ActivityMainBinding.inflate(layoutInflater)
// setContentView(R.layout.activity_main)
setContentView(viewBinding.root)
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1463 次 |
| 最近记录: |