App因“未能找到支持的表面信息-CameraId:null” CameraX而崩溃

我正在使用新的CameraX API(alpha 5)。

在LGE,三星,摩托罗拉,OPPO等设备上崩溃并显示以下消息:

Fail to find supported surface info - CameraId:null

发生。

这种崩溃很少见,但不能接受。

方法中发生错误:

     private fun initCamera(cameraMode: CameraMode) {
        val lensFacing = if (cameraMode == CameraMode.DEFAULT) CameraX.LensFacing.BACK else CameraX.LensFacing.FRONT
        val metrics = DisplayMetrics().also { textureView?.display?.getRealMetrics(it) }
        val resolution = Size(metrics.widthPixels,metrics.heightPixels)
        val previewConfig = PreviewConfig.Builder()
                .setTargetResolution(resolution)
                .setLensFacing(lensFacing)
                .build()

        preview?.let { CameraX.unbind(preview) }
        preview = Preview(previewConfig)
        preview?.setOnPreviewOutputUpdateListener { previewOutput ->
            val parent = textureView?.parent as ViewGroup
            parent.removeView(textureView)
            parent.addView(textureView,0)
            textureView?.surfaceTexture = previewOutput.surfaceTexture
        }

        CameraX.bindToLifecycle(this,preview)
    }

在线:

preview = Preview(previewConfig)

由于无法获取相机,它似乎无法为此设备创建预览。

有人知道这个问题的可能解决方法吗?

P.S: 我检查了。此设备(发生崩溃的设备型号)具有两个摄像头(前,后)。

asdf564e 回答:App因“未能找到支持的表面信息-CameraId:null” CameraX而崩溃

暂时没有好的解决方案,如果你有好的解决方案,请发邮件至:iooj@foxmail.com
本文链接:https://www.f2er.com/3139675.html

大家都在问