随着Android版本升级,也发现mkdirs()不成功问题。
解决办法
1.Android10创建文件
当targetSDKVersion>=Android10(29),file.mkdirs()返回false,原因:
需要在Manifest文件里的application这个tag, 写入:android:requestLegacyExternalStorage=“true”
2.Android11创建文件
第一种办法
改用了getExternalFilesDir来获取路径,就可以成功(但路径不一样)
File fileEx = this.getExternalFilesDir(null);
String dir = fileEx.getAbsolutePath() + "/test_abc";
//路径是:/storage/emulated/0/Android/data/ai.emeet.emrtc/files/test_abc
第二种办法
将targetSDKVersion降为29,按照Android10创建
将targetSDKVersion降为28,按照标准创建
喜欢就给个赞哦