Как читать внешние документы в Android 11? - PullRequest
0 голосов
/ 22 марта 2020

В Android 11 с флагом хранения в области флаг requestLegacyExternalStorage больше не будет работать для доступа к файлам во внешнем хранилище. С

<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>

, объявленным в файле манифеста, а также с предоставлением этого разрешения во время выполнения пользователем, следующий код имел обыкновение читать файл, но он не сможет Android 11. файл в /sdcard/Documents/my_confi_file.json

try {
    var fileContent = ""
    val file = File("/sdcard/Documents/my_confi_file.json")
    val fileInputStream = FileInputStream(file)
    val size = fileInputStream.available()
    val buffer = ByteArray(size)
    fileInputStream.read(buffer)
    fileContent = String(buffer, Charset.forName("UTF-8"))
    fileInputStream.close()
} catch (e: IOException) {
    e.printStackTrace()
}

В Android 11 возможно ли прочитать файл из этого каталога (/ sdcard / Documents /) и как это сделать?

Вариант использования: устройство и приложение не публикуются c и нет проблем с безопасностью пользователя. Владелец устройства и приложения хотел бы загрузить файл в этот каталог (/ sdcard / Documents /) на устройстве, и приложение будет считывать содержимое этого файла.

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