照相馆中的自定义相册

时间:2018-06-18 06:14:41

标签: android

我希望自己在第一次发布时创建自己的专辑。我想根据自己的原因使用这张专辑....我知道如何保存文件,但我不知道如何选择它去的画廊。我猜这个答案碰巧出现在我选择保存的目录中,如果我把相应的子目录放到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);


}

0 个答案:

没有答案