我希望 SAF 在指定文档中\xe2\x80\x9claunch 导航器(如果它是文件夹\xe2\x80\x9d)(他们在文档中这么称呼它)。
\n\n这不起作用,所以我还想知道是否可以将存储快捷方式添加到 SAF UI。请参阅此链接中的图片:https://i.stack.imgur.com/adINm.jpg
\n\n但我认为更有可能在特定文件夹中启动 SAF UI,因此我暂时可能会采用这种方法。我已经在 - 方法中尝试过onCreate(...):
String pathAsString = Environment.getExternalStorageDirectory() + "/myscientificapp/measurements/";\nFile pathAsFile = new File(pathAsString);\n\nif (pathAsFile.exists()) { Log.d(TAG, "pathAsFile exists!"); } //This is printed in Logcat\n\nandroid.net.Uri pathAsUri = Uri.fromFile(pathAsFile);\nIntent intent = new Intent(Intent.ACTION_OPEN_DOCUMENT);\nintent.addCategory(Intent.CATEGORY_OPENABLE);\nintent.setType("*/*");\nintent.putExtra(DocumentsContract.EXTRA_INITIAL_URI, pathAsUri); //Does not make effect\nstartActivityForResult(intent, REQUEST_OPEN_DOCUMENT);\nRun Code Online (Sandbox Code Playgroud)\n\n问题是它不起作用..或者我不知道该怎么做。:/
\n\n我读过一些关于这些地方的内容。例如在Medium.com上,一位开发人员说:
\n\n\n\n\n当使用 ACTION_CREATE_DOCUMENT 选择保存文件的位置或打开文档时,新的 EXTRA_INITIAL_URI 允许您使用自己的自定义起始位置覆盖默认初始位置(用户选择的最后位置)。
\n
在 Android 文档中,我们可以阅读有关EXTRA_INITIAL_URI的信息:
\n\n\n调用者可以通过 DocumentsContract#EXTRA_INITIAL_URI 设置文档 URI 来指示文档导航器的初始位置。如果指定文档是文件夹,系统将尽力在指定文档中启动导航器;如果不是,则在包含指定文档的文件夹中启动导航器。
\n …
android android-intent android-contentprovider storage-access-framework