我认为Android DirectoryChooser可以帮助您选择文件保存目录。
表现
您需要声明DirectoryChooserActivity并请求android.permission.WRITE_EXTERNAL_STORAGE权限。
...
活动
要选择目录,请从应用逻辑启动活动:
final Intent chooserIntent = new Intent(this, DirectoryChooserActivity.class); final DirectoryChooserConfig config = DirectoryChooserConfig.builder() .newDirectoryName("DirChooserSample") .allowReadOnlyDirectory(true) .allowNewDirectoryNameModification(true) .build(); chooserIntent.putExtra(DirectoryChooserActivity.EXTRA_CONFIG, config); // REQUEST_DIRECTORY is a constant integer to identify the request, eg 0 startActivityForResult(chooserIntent, REQUEST_DIRECTORY);
在onActivityResult方法中处理结果:
@Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data); if (requestCode == REQUEST_DIRECTORY) { if (resultCode == DirectoryChooserActivity.RESULT_CODE_DIR_SELECTED) { handleDirectoryChoice(data .getStringExtra(DirectoryChooserActivity.RESULT_SELECTED_DIR)); } else { // Nothing selected } } }