首页 > 解决方案 > Android - 如何使用 MediaStore.Images 将图像保存在特定文件夹中

问题描述

在我的应用程序中,图像直接保存到图片中,但我需要将图像保存在特定文件夹中,例如Pictures/ClearScanner/img.jpg,我尝试了 StackOverflow 和 google android 文档中的许多解决方案,但我无法让它们中的任何一个工作所以我在寻求帮助

实用程序.java

    public class Utils {

    private Utils() {

    }

    public static Uri getUri(Context context, Bitmap bitmap) {

        @SuppressLint("SimpleDateFormat") String timeStamp = new SimpleDateFormat("dd-MM-YYYY HH.mm.ss").format(new Date());
        String foldername = "ClearScanner";
        String filename = "ClearScanner " + timeStamp + ".jpg";

        ByteArrayOutputStream bytes = new ByteArrayOutputStream();
        bitmap.compress(Bitmap.CompressFormat.JPEG, 100, bytes);
        String path = MediaStore.Images.Media.insertImage(context.getContentResolver(), bitmap, filename , null);
       // add the requested log statement after this line

       // add the requested log statement before this line
        return Uri.parse(path);

    }

    public static Bitmap getBitmap(Context context, Uri uri) throws IOException {
        return MediaStore.Images.Media.getBitmap(context.getContentResolver(), uri);
    }
}

AndroidManifest.xml

<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

标签: androidandroid-studioandroid-galleryandroid-camera-intent

解决方案


推荐阅读