我正在尝试使用 TreeUri 目录的子文件夹内的循环获取文件/文件夹的 uri。
这是路径/storage/0018-E24D 的 treeUri
内容://com.android.externalstorage.documents/tree/0018-E24D%3A
该文件位于 treeUri 子文件夹中,路径为/storage/0018-E24D/apks/Admission deposit Slip-2019.pdf
我的代码如下
public static Uri getPathUri(String path,Uri TreeUri,Context context) {
DocumentFile[] fileList=null;
List xSplit=null;
xSplit= Arrays.asList(path.split("/"));
DocumentFile file=DocumentFile.fromTreeUri(context,TreeUri);
fileList=file.listFiles();
for(DocumentFile df:fileList)
{
if(xSplit.contains(df.getName()))
{
if(df.getName().equals(new File(path).getName())){
return df.getUri();
}
else
{
return getPathUri(path,df.getUri(),context);
}
}
}
return null;
}
OnActivityShow
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Log.d("GotUri", FileUtil.getPathUri("/storage/0018-E24D/apks/Admission deposit Slip-2019.pdf",treeUri, this));
}
但我未能获得该文件的 uri