我试图将位图保存到图库,以便从ImagePicker意图再次打开它。
问题是 - 如果我将其保存在外部存储设备上,它将无法在没有它的设备上运行,并且当我将其写入内部存储设备时 - 它不会在图库中显示,所以我不能选择那个图像。
尝试了很多方法解决它,但到目前为止没有成功。
我的意思是,是否可以在内部存储中保存位图并从活动中打开它,从而调用从库中选择图像?
编辑:添加代码
private String saveToInternalStorage(Bitmap bitmapImage, String filename){
ContextWrapper cw = new ContextWrapper(getApplicationContext());
// path to /data/data/yourapp/app_data/imageDir
File directory = cw.getDir("imageDir", Context.MODE_PRIVATE);
// Create imageDir
File mypath=new File(directory,filename + ".jpg");
FileOutputStream fos = null;
try {
fos = new FileOutputStream(mypath);
// Use the compress method on the BitMap object to write image to the OutputStream
bitmapImage.compress(Bitmap.CompressFormat.PNG, 100, fos);
} catch (Exception e) {
e.printStackTrace();
} finally {
try {
fos.close();
} catch (IOException e) {
e.printStackTrace();
}
}
return directory.getAbsolutePath();
}
通过该程序,似乎保存位图是可以的,但我无法在图库中找到该文件。