2017-03-17 71 views
0

最後,我發現要移動Document個實例,我需要(以某種方式)將FLAG_SUPPORTS_MOVE設置爲它。但Document類沒有任何setFlag()或其他方法。我嘗試將標誌設置爲與getContentResolver().takePersistableUriPermission()的URI,但IDE警告我使用未由註釋指定的其他標誌。我只想將所有文件從一個文件夾移動到25 API上的其他文件夾。如何將FLAG_SUPPORTS_MOVE設置爲文檔?

回答

0

客戶端沒有設置FLAG_SUPPORTS_MOVEDocumentsProvider通告使用這些標誌是否可以移動,重命名文檔等。如果提供者添加了該標誌,則可以使用use moveDocument()將文檔從同一供應商內的一個集合移動到另一個集合。

+0

我需要實現自己的DocumentProvider嗎?還是有平臺製造商? – constantinopolskaya

+0

@constantinopolskaya:「我需要實現自己的DocumentProvider嗎?」 - 可能不會。如果你能做到這一點,你可以直接訪問文件系統,無論你想要移動什麼,並且你不需要這些。 「還是有平臺製造商?」 - 你已經在使用它了,據推測。你沒有註明這個'Uri'是從哪裏來的。如果它來自'ACTION_OPEN_DOCUMENT','ACTION_OPEN_DOCUMENT_TREE'等,那麼'Uri'是其他人的'DocumentProvider'給你的。 – CommonsWare

+0

我從SAF(intent action)獲得URI,那麼Doc​​umentProvider在哪裏?我很抱歉,但我一直在掙扎 – constantinopolskaya

相關問題