Но проблема в том, что приложение может удалять файлы в обеих папках, и я не понимаю, почему. Разрешения были правильно сохранены следующим образом:
Код: Выделить всё
//
if (folderType == "source") {
requireContext().contentResolver.takePersistableUriPermission(
it,
Intent.FLAG_GRANT_READ_URI_PERMISSION
)
} else if (folderType == "target") {
requireContext().contentResolver.takePersistableUriPermission(
it,
Intent.FLAG_GRANT_READ_URI_PERMISSION or Intent.FLAG_GRANT_WRITE_URI_PERMISSION
)
}
Код: Выделить всё
requireContext().contentResolver.persistedUriPermissions.forEach { perm ->
Log.i(TAG, "URI: ${perm.uri} | Read: ${perm.isReadPermission} | Write: ${perm.isWritePermission}")
}
Код: Выделить всё
I URI: content://com.android.externalstorage.documents/tree/primary%3ATest%2FTarget | Read: true | Write: true
I URI: content://com.android.externalstorage.documents/tree/primary%3ATest%2FSource | Read: true | Write: false
Код: Выделить всё
val deleted = DocumentsContract.deleteDocument(resolver, fileUri)
Я был бы признателен за любую помощь в этом вопросе. Заранее спасибо!
Подробнее здесь: https://stackoverflow.com/questions/799 ... ite-access
Мобильная версия