摘要:对于某些图片大小,在调用Camera.takePicture()之后,将相机图片大小明确设置为支持的大小会导致不调用回调.
细节:
我正在开发一个简单的相机应用程序,它使用Camera API来捕获图像.它遵循Camera类文档中描述的准则,可在各种设备上可靠地运行.
在调用Camera.open()之后,应用程序调用camera.getParameters()来获取Camera.Parameters对象,然后调用此对象的getSupportedPictureSizes().它迭代支持的图片大小,并选择一个符合某些标准的大小对.然后调用setPictureSize(),传入选定的宽度和高度.最后,它通过调用camera.SetParameters()来设置摄像机参数,传入Camera.Parameters对象.
我遇到了HTC Desire 620的问题.该设备上报告的支持图片尺寸之一是1184×1184.如果我设置此图片大小然后调用camera.takePicture(),则不会调用任何回调(快门,原始或jpeg),并且相机对象似乎处于无效状态.如果我明确地将图片大小设置为任何其他支持的大小(方形或矩形宽高比),则调用回调.但对于1184×1184他们不是.
有人遇到过这样的事吗?有没有办法事先知道支持的图片大小是否会导致这类问题?我在这里错过了什么?
编辑:错字