0

Android 6.0.1、API 23、

一致するすべてのドキュメント プロバイダー (USB スティックを含む) を表示する SAF ピッカーに、Android フォンに接続された USB スティックを表示するにはどうすればよいですか?? さらに、USBポータブルストレージにファイルとフォルダーを作成するためにSAFをセットアップする方法??

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/*");、ソリューションは次のとおりです。

「設定」(つまり、3 つの縦のドット)に入ると、「内部ストレージを表示」を選択できます。

その後、USB スティックを接続すると、SAF の ContentProvider ピッカーに希望どおりに表示されます (下のスクリーンショットを参照)。

...外部接続されたUSBスティックが「内部ストレージ」として通過する理由がわかりません??? (誰かがその謎の答えを知っているなら、私はそれを高く評価します!) ... とにかく、ついに USB フラッシュが登場するのを見てうれしいです !!

ここに画像の説明を入力

于 2016-08-14T15:01:15.950 に答える