一切关于camera清晰度的问题,都是跟硬件有关系的,所以parameter必须得设置对了。下面是代码:
Camera.Size maxPictureSize = mParameters.getSupportedPictureSizes().get(0);
Camera.Size maxPreviewSize = mParameters.getSupportedPreviewSizes().get(0);
for (int i = 0; i < mParameters.getSupportedPictureSizes().size(); i++) {
Camera.Size s = mParameters.getSupportedPictureSizes().get(i);
if (s.width > maxPictureSize.width) {
maxPictureSize = s;
}
if(s.width==maxPictureSize.width&&s.height>maxPictureSize.height){
maxPictureSize = s;
}
}
for (int i = 0; i < mParameters.getSupportedPreviewSizes().size(); i++) {
Camera.Size s = mParameters.getSupportedPreviewSizes().get(i);
if (s.width > maxPreviewSize.width) {
maxPreviewSize = s;
}
if(s.width==maxPreviewSize.width&&s.height>maxPreviewSize.height){
maxPreviewSize = s;
}
}
mParameters.setPictureSize(maxPictureSize.width, maxPictureSize.height);
mParameters.setPreviewSize(maxPreviewSize.width, maxPreviewSize.height);
mCamera.setParameters(mParameters)