我正在嘗試訪問由 選擇的檔案夾內的檔案,但listFiles()始終回傳空值。這是我的代碼。
private void RequestSAFPermission(){
Intent intent = new Intent(Intent.ACTION_OPEN_DOCUMENT_TREE);
startActivityForResult(intent, 101);
}
@Override
protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (resultCode != RESULT_OK)
return;
Uri treeUri = data.getData();
DocumentFile pickedDir = DocumentFile.fromTreeUri(this, treeUri);
grantUriPermission(getPackageName(), treeUri, Intent.FLAG_GRANT_READ_URI_PERMISSION | Intent.FLAG_GRANT_WRITE_URI_PERMISSION);
Uri docUri = DocumentsContract.buildDocumentUriUsingTree(treeUri,
DocumentsContract.getTreeDocumentId(treeUri));
path = getPath(getBaseContext(), docUri);
File file = new File(path);
File[] files = file.listFiles();
}
getPath()來自這里
uj5u.com熱心網友回復:
使用pickedDir.listFiles()來代替。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/363590.html
下一篇:將Id引數傳遞給ajax函式
