0

使用 Android 6.0.1,API 23,

如何在 SAF 选择器中显示连接到 Android 手机的 USB 记忆棒,该选择器显示所有匹配的文档提供者(包括您的 USB 记忆棒)?此外,如何设置 SAF 以便在 USB 便携式存储设备上创建文件和文件夹?

SAF-documentation,我尝试:

public void performFileSearch() {

    Intent intent = new Intent(Intent.ACTION_OPEN_DOCUMENT);

    intent.addCategory(Intent.CATEGORY_OPENABLE);

    // in my case, showing only text-files is enough, therefore I guess the type is as follows:
    intent.setType("text/plain");

    startActivityForResult(intent, READ_REQUEST_CODE);
}

但是 USB 便携式存储不是选择器选择的一部分……

我错过了什么?是否有显示必要步骤的示例项目?

@CommonsWare:这里是所需的屏幕截图:

在此处输入图像描述

4

1 回答 1

1

我刚刚找到了解决问题的方法:

启动 SAF 客户端 APP(如在此处找到)- 包括我在内部的微小变化performFileSearch()(即intent.setType("text/plain");,而不是原始 DevBytesesample 中的内容intent.setType("image/*");,解决方案如下:

如果您进入“设置”(即三个垂直点),您可以选择:“显示内部存储” - 就是这样!

之后,在 SAF 的 ContentProvider 选择器中根据需要显示连接任何 USB 棒(见下面的屏幕截图)!

...不知道为什么外部连接的 USB 记忆棒会作为“内部存储”使用???(如果有人知道这个谜团的答案,我非常感谢!)...无论如何,很高兴终于看到 USB 闪存出现了!

在此处输入图像描述

于 2016-08-14T15:01:15.950 回答