我正在尝试使用saf(存储访问框架)保存文本文件,但我无法控制它应保存在何处,我在文档中使用了以下方法:
private void createFile(Uri pickerInitialUri) {
Intent intent = new Intent(Intent.ACTION_CREATE_DOCUMENT);
intent.addCategory(Intent.CATEGORY_OPENABLE);
intent.setType("text/*");
intent.putExtra(Intent.EXTRA_TITLE, "new.txt");
// Optionally, specify a URI for the directory that should be opened in
// the system file picker when your app creates the document.
intent.putExtra(DocumentsContract.EXTRA_INITIAL_URI, pickerInitialUri);
startActivityForResult(intent, CREATE_FILE);
}
按如下方式传递根目录uri:
Uri.parse(Environment.getExternalStorageDirectory().toString())
但是,无论我解析什么字符串,即使我传递null作为uri,框架ui总是从下载开始。
我想把文件保存在根目录下。另外,我想保存它自动没有任何用户交互。
1条答案
按热度按时间pu82cl6c1#
引用文档
EXTRA_INITIAL_URI
:[额外的]应该指定一个文档uri或一个带有文档id的树uri。
“文档uri”是您以前从
ACTION_OPEN_DOCUMENT
或者ACTION_CREATE_DOCUMENT
. “树uri”是您以前从ACTION_OPEN_DOCUMENT_TREE
.Uri.parse()
两者都不是。