Android开发——自定义相机拍照遇到java.lang.IllegalStateException
·
前言
在最近的一个项目需要自定义相机功能,在实现拍照的时候遇到java.lang.IllegalStateException: maxImages (1) has already been acquired, call #close before acquiring more.有点懵逼的感觉,第二次拍照的时候出现这个情况。但是问题不大,不要慌解决方法就在下面。
异常的解决方法
异常是有说明的,我们需要调用close方法。
ImageReader.setOnImageAvailableListener(reader -> {
// 拿到拍照的数据
Image image = reader.acquireNextImage();
// 需要在这个事件监听里面调用close要不然会报上面的错误
image.close();
});
只要加多一句代码就可以解决这个问题了,希望对同样开发Android自定义相机的小伙伴有帮助。
更多推荐
所有评论(0)