我正在开发一个应用程序,因为我正在使用 Surfaceview 和 Camera api 拍照。我的问题是使用 Galaxy S3 拍摄的图像的分辨率仅显示 640x480。但在其他设备中,它会根据相机显示分辨率。因此,当我显示图像时它变得模糊,仅在 S3 中,在其他设备中完美显示。
我不知道这背后的问题是什么。其他设备在 2.3 上运行,s3 在 4.0 上运行。请帮我。
我正在开发一个应用程序,因为我正在使用 Surfaceview 和 Camera api 拍照。我的问题是使用 Galaxy S3 拍摄的图像的分辨率仅显示 640x480。但在其他设备中,它会根据相机显示分辨率。因此,当我显示图像时它变得模糊,仅在 S3 中,在其他设备中完美显示。
我不知道这背后的问题是什么。其他设备在 2.3 上运行,s3 在 4.0 上运行。请帮我。
不同的设备有不同的可用分辨率。
在扩展 Surfaceview 的类中设置相机时,您可以找到支持的图片尺寸:
public void setCamera(Camera camera) {
this.mCamera = camera;
if (mCamera != null) {
List<Camera.Size> mSupportedPictureSizes = Camera.getParameters().getSupportedPictureSizes();
//Iterate over list and find the size you want.
Camera.Parameters parameters = mCamera.getParameters();
parameters.setPictureSize(chosenPictureSize.width, chosenPictureSize.height);
mCamera.setParameters(parameters);
}
}