AutoFocus在带有Zxing库的Galaxy S9和S9 +上不起作用

时间:2018-11-15 01:37:41

标签: android zxing galaxy

・症状
该应用正在使用zxing 1.9进行QR码读取。
它在几乎Android设备上都能正常运行,但在Galaxy S9和S9 +设备上却无法正常运行。
自动对焦似乎不起作用。
到Galaxy版本8,没问题。

・环境
Android:5至8.0
内核版本:4.9.65-144892203
zxing:1.9版
设备:Galaxy S9,Galaxy S9 +

1 个答案:

答案 0 :(得分:0)

我用以下代码解决了这个问题。 与Galaxy S8,S8 +,S9,S9 +兼容。

private val autoFocusExecutor = ScheduledThreadPoolExecutor(1)

fun startCamera() {
if (camera == null) {
    camera = Camera.open()
    if (camera == null) {
        showCameraErrorMsg()
    } else {
        preview.camera = camera
        capturereceipt_textview_cameraerrormsg.visibility = View.GONE
        capturereceipt_framelayout_viewfinder.visibility = View.VISIBLE

        autoFocusExecutor.schedule(Sc{
            val params: Camera.Parameters = camera!!.parameters
            if (params.getSupportedFocusModes()
                    .contains(Camera.Parameters.FOCUS_MODE_CONTINUOUS_PICTURE)) {
                //TODO: Auto focus not working
                params.focusMode = Camera.Parameters.FOCUS_MODE_CONTINUOUS_PICTURE
            }
            camera?.parameters = params
        }, 1000, TimeUnit.MILLISECONDS)
    }
}}