private void storeImage(Bitmap image) {
File pictureFile = getOutputMediaFile();
if (pictureFile == null) {
// Log.d(TAG, "Error creating media file, check storage permissions: ");// e.getMessage());
return;
}
try {
FileOutputStream fos = new FileOutputStream(pictureFile);
image.compress(Bitmap.CompressFormat.PNG, 90, fos);
fos.close();
} catch (FileNotFoundException e) {
// Log.d(TAG, "File not found: " + e.getMessage());
} catch (IOException e) {
// Log.d(TAG, "Error accessing file: " + e.getMessage());
}
}
我已使用上面的代码将生成的QR保存在Gallery中。而且它也在工作。
但是它正在保存在Internal Storage/package_name/Files/mtImage.jpg
中。
我必须去文件管理器才能查看。我想直接在图库中查看它,但没有任何SD卡。
请帮助我。
答案 0 :(得分:0)
下面的代码有助于将位图图像保存到图库
public static void addImageToGallery(最终字符串filePath,最终Context上下文){
ContentValues values = new ContentValues();
values.put(MediaStore.Images.Media.DATE_TAKEN, System.currentTimeMillis());
values.put(MediaStore.Images.Media.MIME_TYPE, "image/jpeg");
values.put(MediaStore.MediaColumns.DATA, filePath);
context.getContentResolver().insert(MediaStore.Images.Media.EXTERNAL_CONTENT_URI, values);
}