当前位置: 代码迷 >> 综合 >> storage/emulated/0路径下的File.listFiles返回值为null
  详细解决方案

storage/emulated/0路径下的File.listFiles返回值为null

热度:42   发布时间:2023-10-15 04:18:12.0

Android studio中 虚拟机路径storage/emulated/0下File.Listfile返回值为null

前言
为了获取Android手机中某个文件夹下的所有文件夹或文件,我们利用File类的listFiles方法,但是,有些文件路径下明明有子文件,可是该方法总是返回null值。比如Android虚拟机中的storage/emulated/0路径下明明有子文件,但是,listFiles却返回null。
Android手机文件路径问题真的是很恶心,我也是栽了很多坑,现在将关于该问题的解决方案分享。

-----------------------------------------------分割线-----------------------------------------------

一、利用如下代码获取手机外存文件中的所有子文件

 String path = Environment.getExternalStorageDirectory().getAbsolutePath();File DirOrFile=new File(path );File[] files = DirOrFile.listFiles();

二、但是,以上代码会返回null值,此时,打开Android studio的build.gradle(Module.app)文件,将其中的targetSdkVersion修改为22(小于23即可),不必管它是否报错,直接点击提示的【Sync Now】
storage/emulated/0路径下的File.listFiles返回值为null
三、完成之后,再将targetSdkVersion修改回您原先的版本号即可解决问题(我也不知道发生了什么神奇的事情,但是,这样就是解决了)

  相关解决方案