Java Android 10创建一个文件夹-getExternalFilesDir而不是getExternalStorageDirectory()(已弃用)
我试图使用context.getExternalFilesDir()方法在sdcard内创建一个新文件夹,但它不起作用,它创建了Pictures文件夹,但没有创建TestFolder和txt文件。我的目的是创建一个文件夹,并将从我的应用程序下载的图像放在其中。不幸的是,Environment.getExternalStorageDirectory()在API级别29中已被弃用,我不知道如何修复它。一如既往,非常感谢您的帮助Java Android 10创建一个文件夹-getExternalFilesDir而不是getExternalStorageDirectory()(已弃用),java,android,file,directory,deprecated,Java,Android,File,Directory,Deprecated,我试图使用context.getExternalFilesDir()方法在sdcard内创建一个新文件夹,但它不起作用,它创建了Pictures文件夹,但没有创建TestFolder和txt文件。我的目的是创建一个文件夹,并将从我的应用程序下载的图像放在其中。不幸的是,Environment.getExternalStorageDirectory()在API级别29中已被弃用,我不知道如何修复它。一如既往,非常感谢您的帮助 File folder = new File(getCo
File folder = new File(getContext().getExternalFilesDir(Environment.DIRECTORY_PICTURES), "TestFolder");
if (!folder.exists()) {
folder.mkdirs();
}
File filename = new File(folder, "test.txt");
try {
filename.createNewFile();
} catch (Exception e) {
e.printStackTrace();
}
使用
文件夹=新建
文件(this.getExternalFilesDir(null.getAbsolutePath(),“TestFolder”)
而不是
文件夹=新建
文件(getContext().getExternalFilesDir(Environment.DIRECTORY\u图片),
“测试文件夹”)
使用
文件夹=新建
文件(this.getExternalFilesDir(null.getAbsolutePath(),“TestFolder”)
而不是
文件夹=新建
文件(getContext().getExternalFilesDir(Environment.DIRECTORY\u图片),
“测试文件夹”)
请注意,问题中的代码没有显示
环境.getExternalStorageDirectory()
的用法。它显示了getExternalFilesDir()
,它在安卓4.4到10上运行良好(到目前为止,在安卓R上运行良好)。因此,你的问题的标题与问题的主体并不匹配。除此之外,查看Logcat以查看是否从异常中获取堆栈跟踪。请记住,createNewFile()
实际上没有太多功能,也没有真正用于Android应用程序开发。您好。现在标题对你更合适了?感谢您对createNewFile的建议。我的终端中没有任何错误。“它创建图片文件夹,但不创建TestFolder和txt文件”--你到底在找什么?尝试在Android Studio中使用设备文件资源管理器。设备文件资源管理器显示我以前尝试创建的所有文件和文件夹,谢谢。但是为什么我不能在我的android模拟器中看到它们呢?我需要访问这些文件。再次感谢您如果您在gallery样式的应用程序中查找这些图像,getExternalFilesDir()
不会被Android 10+上的MediaStore
索引。IIRC,它不能被MediaStore
索引。如果您想写出图像,特别是对外部存储的标准公共位置,您可以直接考虑使用<代码> MistaSoRe>代码>。我有一大堆关于它的博客文章,开始。请注意,您问题中的代码没有显示环境的使用。getExternalStorageDirectory()
。它显示了getExternalFilesDir()
,它在安卓4.4到10上运行良好(到目前为止,在安卓R上运行良好)。因此,你的问题的标题与问题的主体并不匹配。除此之外,查看Logcat以查看是否从异常中获取堆栈跟踪。请记住,createNewFile()
实际上没有太多功能,也没有真正用于Android应用程序开发。您好。现在标题对你更合适了?感谢您对createNewFile的建议。我的终端中没有任何错误。“它创建图片文件夹,但不创建TestFolder和txt文件”--你到底在找什么?尝试在Android Studio中使用设备文件资源管理器。设备文件资源管理器显示我以前尝试创建的所有文件和文件夹,谢谢。但是为什么我不能在我的android模拟器中看到它们呢?我需要访问这些文件。再次感谢您如果您在gallery样式的应用程序中查找这些图像,getExternalFilesDir()
不会被Android 10+上的MediaStore
索引。IIRC,它不能被MediaStore
索引。如果您想写出图像,特别是对外部存储的标准公共位置,您可以直接考虑使用<代码> MistaSoRe>代码>。我有一大堆关于它的博客文章,开始。