2017-03-17 2 views
0

最後に、Documentのインスタンスを移動するには、何とか(何とか)FLAG_SUPPORTS_MOVEを設定する必要があることがわかりました。しかし、DocumentクラスにはsetFlag()などのメソッドはありません。私はgetContentResolver().takePersistableUriPermission()でURIに設定されたフラグを試しましたが、IDEは注釈で指定されていない他のフラグを使用することを警告します。私はちょうど1つのフォルダから他の25のAPIにすべてのファイルを移動したい。FLAG_SUPPORTS_MOVEをDocumentに設定する方法は?

答えて

0

クライアントはFLAG_SUPPORTS_MOVEを設定しません。 DocumentsProviderは、これらの種類のフラグを使用してドキュメントの移動、名前の変更などができるかどうかを宣言します。プロバイダがそのフラグを追加した場合は、use moveDocument()を使用して、同じプロバイダ内のあるコレクションから別のコレクションにドキュメントを移動できます。

+0

私自身のDocumentProviderを実装する必要がありますか?または、プラットフォーム製のプロバイダがありますか? – constantinopolskaya

+0

@constantinopolskaya: "私自身のDocumentProviderを実装する必要がありますか?" - おそらくそうではありません。もしあなたがそれを行うことができれば、移動しようとしているものに直接ファイルシステムでアクセスすることができます。これは必要ありません。 "あるいはプラットフォーム製のプロバイダがありますか?"おそらくそれを使用しています。あなたはこの「ウリ」がどこから来ているのかを指定していません。 'ACTION_OPEN_DOCUMENT'、' ACTION_OPEN_DOCUMENT_TREE'などからのものであれば、他人の 'DocumentProvider'によって' Uri'が与えられました。 – CommonsWare

+0

私はSAF(意図アクション)からURIを取得していますので、DocumentProviderはどこですか?私は申し訳ありませんが、私は全く苦労しています – constantinopolskaya

関連する問題