更改摄像机分辨率的Android编程设置(Change camera resolution sett

2019-07-29 21:56发布

我使用下面的代码打开摄像头。 是否有可能将相机分辨率编程设置为高?

private void openDefaultCameraApp() {
    Intent i = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE);
    startActivityForResult(i, CAPTURE_PHOTO_CONSTANT);
}

Answer 1:

您必须添加一个MediaStore.EXTRA_OUTPUT的意图。 在额外的,你必须指定一个URI的图片保存到。 这将节省的全分辨率图像,否则,它只会捕捉小图像。

请参考Android的文档: ACTION_IMAGE_CAPTURE

可以发送到具有相机应用程序拍摄图像,并返回其标准意图的行动。 调用者可以通过一个额外的EXTRA_OUTPUT为了控制这个图像将被写入。 如果EXTRA_OUTPUT不存在,则一个小尺寸的图像被返回作为额外字段Bitmap对象。 这对于那些只需要一个小图像应用。 如果EXTRA_OUTPUT存在,则全尺寸的图像将被写入到的URI值EXTRA_OUTPUT



Answer 2:

我认为它不可能看下面的链接:

开放的Android相机与ACTION_IMAGE_CAPTURE较低的分辨率

您必须手动设置从相机预览屏幕分辨率。

如果您收到的小卡,即使你的相机分辨率设置为高,然后使用Zed的国务院新闻办公室的做法。



Answer 3:

您可以使用此方法来获取图片的所有受支持的大小。

public List<Camera.Size> getSupportedPictureSizes ()

你会得到一个List支持的图片尺寸。 然后从这个,你可以设置任何你想要的大小,使用这种方法。

public void setPictureSize (int width, int height)


文章来源: Change camera resolution setting programmatically in android