我正在使用以下代码打开相机。是否可以通过编程将相机分辨率设置为高?
private void openDefaultCameraApp() {
Intent i = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE);
startActivityForResult(i, CAPTURE_PHOTO_CONSTANT);
}
我正在使用以下代码打开相机。是否可以通过编程将相机分辨率设置为高?
private void openDefaultCameraApp() {
Intent i = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE);
startActivityForResult(i, CAPTURE_PHOTO_CONSTANT);
}
您必须MediaStore.EXTRA_OUTPUT
在意图中添加一个。另外,您必须为要保存的图片指定一个 Uri。这将保存全分辨率图像,否则,它只会捕捉一个小图像。
请参阅 Android 文档:ACTION_IMAGE_CAPTURE
可以发送标准 Intent 操作以使相机应用程序捕获图像并返回它。调用者可以传递一个额外的EXTRA_OUTPUT
来控制这个图像将被写入哪里。如果EXTRA_OUTPUT
不存在,则在额外字段中将小尺寸图像作为 Bitmap 对象返回。这对于只需要小图像的应用程序很有用。如果EXTRA_OUTPUT
存在,则将全尺寸图像写入 Uri 值EXTRA_OUTPUT
我认为它不可能看到下面的链接:
使用 ACTION_IMAGE_CAPTURE 以较低分辨率打开 Android 相机
您必须从相机预览屏幕手动设置分辨率。
如果即使您的相机分辨率设置为高,您也获得了小快照,那么请使用 Zed Scio 的方法。