> 文档中心 > Android Camera2自定义相机绿屏

Android Camera2自定义相机绿屏

一、问题现象

在项目中使用Camera2自定义相机拍照,在其他手机上没有问题、在华为P40上、相机预览出现绿屏,绿屏如下所示

二、问题原因

预览设置高宽参数不符合相机高宽的话就会有绿条
原来的设置代码如下

imageReader = ImageReader.newInstance(largest.getWidth(), largest.getHeight(), ImageFormat.JPEG, 2);

三、问题解决

调整设置的高度和宽度即可解决问题。width和height为预览的imageView宽和高

//华为P40需要做特殊适配,像素太高导致绿屏if ("ANA-AN00".equals(android.os.Build.MODEL) || largest.getWidth() > 4160) {    imageReader = ImageReader.newInstance(width, height,     ImageFormat.JPEG, 2);} else {    imageReader = ImageReader.newInstance(largest.getWidth(), largest.getHeight(),     ImageFormat.JPEG, 2);}

China香烟网