0

打开失败:ENOENT(没有这样的文件或目录)

已经添加了清单,因为 Environment.getExternalStorageDirectory() 在 Android R 上已弃用。如果我将其更改为 getExternalFilesDir() 路径将转到应用程序目录,而不是存储

android:requestLegacyExternalStorage="true" 

Android Q 下面工作正常,但 Android R 得到 ENOENT 错误

    protected Uri getImageFile()
    {

        String imagePathStr = IMAGE_FOLDER;
        File path = new File(imagePathStr);
        if (!path.exists()) {
            path.mkdirs();
        }
        String finalPhotoName = "IMG" +
                (withTimeStamp ? "_" + new SimpleDateFormat("yyyyMMdd_HHmmss", Locale.US).format(new Date(System.currentTimeMillis())) :  "")
                + ".png";
        // long currentTimeMillis = System.currentTimeMillis();
        // String photoName = imageName + "_" + new SimpleDateFormat("yyyyMMdd_HHmmss", Locale.US).format(new Date(currentTimeMillis)) + ".jpg";
        File photo = new File(path, finalPhotoName);

        return Uri.fromFile(photo);
    }
4

1 回答 1

1

IMAGE_FOLDER 的字符串是什么

尝试使用

getExternalStoragePublicDirectory(Environment.DIRECTORY_PICTURES)
于 2020-11-09T06:09:24.440 回答