我通过以下方式将应用程序的屏幕截图保存到图库 -
//screenshot
private void screenshot()
{
Uri photo = lomography();
String photopath = photo.getPath();
try {
MediaStore.Images.Media.insertImage(getContentResolver(), photopath, "name" , "desc");
} catch (FileNotFoundException e) {
e.printStackTrace();
}
}
存储在光路中的图像质量很高:
但是当我导航到图库并打开同一张照片时,这是带有几个压缩伪影的低 JPEG 版本:
当原始文件是 PNG 时,为什么画廊图像是 JPEG 版本?如何将高分辨率版本保存到图库?
我在这里读到,诀窍在于“使用 ContentResolver::insert 注册图像”。
但我正在使用 getContentResolver。