Можно ли перемещать (DocumentsContract.moveDocument (…)) или копировать (DocumentsContract.copyDocument (…)) файлы / документы между разными поставщиками? - PullRequest
1 голос
/ 21 июня 2020

Я выбрал 2 дерева документов (Intent.ACTION_OPEN_DOCUMENT_TREE):

Uri sourceTreeUriApplicationHome[0] = content://com.android.externalstorage.documents/tree/primary%3AAndroid%2Fdata%2Fch.becke.sftp_server__s1_v1%2Ffiles/document/primary%3AAndroid%2Fdata%2Fch.becke.sftp_server__s1_v1%2Ffiles

и

Uri destinationTreeUri = content://com.android.providers.downloads.documents/tree/downloads/document/downloads”,

создал новый документ, и попытался

переместить: DocumentsContract.moveDocument(getContentResolver(), content://com.android.externalstorage.documents/tree/primary%3AAndroid%2Fdata%2Fch.becke.sftp_server__s1_v1%2Ffiles/document/primary%3AAndroid%2Fdata%2Fch.becke.sftp_server__s1_v1%2Ffiles%2FmoveTest_1592578134291.txt, content://com.android.externalstorage.documents/tree/primary%3AAndroid%2Fdata%2Fch.becke.sftp_server__s1_v1%2Ffiles/document/primary%3AAndroid%2Fdata%2Fch.becke.sftp_server__s1_v1%2Ffiles, content://com.android.providers.downloads.documents/tree/downloads/document/downloads)”

и скопировать: DocumentsContract.copyDocument(getContentResolver(), content://com.android.externalstorage.documents/tree/primary%3AAndroid%2Fdata%2Fch.becke.sftp_server__s1_v1%2Ffiles/document/primary%3AAndroid%2Fdata%2Fch.becke.sftp_server__s1_v1%2Ffiles%2FmoveTest_1592694493574.txt, content://com.android.providers.downloads.documents/tree/downloads/document/downloads)

документ, но ни одна из этих операций не сработала. Либо возвращенный Uri был нулевым (операция перемещения), либо получил UnsupportedOperationException: Copy not supported. Кто-нибудь еще испытывал ту же проблему, что могло бы решить эту проблему? Копирование и перемещение внутри одного и того же провайдера работает без проблем.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...