java - 如何将图像保存到android中的Camera文件夹?

标签 java android

我正在尝试将照片保存到我的应用拍摄的相机文件夹中。这就是我正在尝试的

private File createImageFile() throws IOException {

    // Create an image file name
    String timeStamp = new SimpleDateFormat("yyyyMMdd_HHmmss").format(new Date());
    String imageFileName = "PlumFastJob" + timeStamp + "_";
    File storageDir = Environment.getExternalStoragePublicDirectory("Camera");

    if(!storageDir.exists()){

        boolean s = new File(storageDir.getPath()).mkdirs();

        if(!s){
            Log.v("not", "not created");
        }
        else{
            Log.v("cr","directory created");
        }
    }
    else{
        Log.v("directory", "directory exists");
    }

    File image = File.createTempFile(
            imageFileName,  /* prefix */
            ".png",         /* suffix */
            storageDir      /* directory */
    );

    // Save a file: path for use with ACTION_VIEW intents
    currentPhotoPath = image.getAbsolutePath();
    uriOfImage = Uri.parse(image.getPath());
    return image;
}

我还尝试了 Enviornment.Directory_DCIM 和 Environment.Directory_Pictures。但他们都创建了一个名为 DCIM 和图片的文件夹。

这只会创建另一个名为 Camera 的文件夹并保存它。

这是我的文件提供者。

<?xml version="1.0" encoding="utf-8"?>
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">
    <external-path name="my_images" path="." />
</PreferenceScreen>

最佳答案

现在所有的相机应用程序都保存在 DCIM 目录中的 Camera 目录中。

所以你必须使用

File dir = new File( Environment.getExternalStoragePublicDirectory(
      Environment.DIRECTORY_DCIM), "Camera");

关于java - 如何将图像保存到android中的Camera文件夹?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48822182/

相关文章:

java - Runnable .jar 和 Eclipse run 之间的行为非常不同

java - 如何返回 JsonArray 请求中的变量

java - Android 文件读写

Java Swing - 在 Java Web Start 中复制/粘贴不起作用

java - 构造函数处理异常并使用 this 关键字 Java

javascript - leaflet.js 检查标记是否打开了绑定(bind)的弹出窗口

java - 为什么我收到了 Google Cloud Messaging 的 Intent.REGISTRATION

java - QR 码扫描仪库支持 Marshmallow?

java - Groovy类加载机制

java - 无法从资源测试文件夹加载资源