我希望自己在第一次发布时创建自己的专辑。我想根据自己的原因使用这张专辑....我知道如何保存文件,但我不知道如何选择它去的画廊。我猜这个答案碰巧出现在我选择保存的目录中,如果我把相应的子目录放到Gallery目录中,我的相册就会出现在画廊中。
private String saveToInternalStorage(Bitmap bitmapImage){
ContextWrapper cw = new ContextWrapper(getApplicationContext());
File directory = cw.getDir("imageDir", Context.MODE_PRIVATE);
// Create imageDir
File mypath=new File(directory,"profile.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();
}
这是我的功能。如果有人可以告诉我如何保存ToToInternalStorage(Bitmap,String AlbumName),那将是很好的,AlbumName将创建相册并添加图像,或者只是将图像添加到其中。 我也试过了......
public void doSave(View w)
{
Bitmap finalBitmap= getBitmapFromView(drawView);
String root = Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DCIM).toString()+ "/Camera/ThoughtCast";
File myDir = new File(root);
myDir.mkdirs();
String fname = "Image-test.png";
File file = new File(myDir, fname);
System.out.println(file.getAbsolutePath());
if (file.exists()) file.delete();
Log.i("LOAD", root + fname);
try {
FileOutputStream out = new FileOutputStream(file);
finalBitmap.compress(Bitmap.CompressFormat.PNG, 90, out);
out.flush();
out.close();
} catch (Exception e) {
e.printStackTrace();
}
MediaScannerConnection.scanFile(getApplicationContext(), new String[]{file.getPath()}, new String[]{"image/jpeg"}, null);
}