Android 13 - Проблема с доступом к файлам /Android/data/your.app.name/folders
Я нигде не нашёл ответа на мой вопрос. Я много часов гуглил, но так и не нашёл ответа. Имеется смартфон, с 13 андроидом. Оболочка MIUI. И у него НЕ отображаются файлы и папки вложенные в папку приложения. И размер показывает "0 байт", но на самом деле там есть эти файлы, само приложение их читает. К примеру, android/data/your.app/files/logcat.txt - доступ есть, файл отображается, его можно спокойно прочитать, в то время как android/data/your.app/files/folder/test.txt файлов в папке "folder" попросту нет, но они есть! (Я не знаю как это ещё объяснить :) Создать файлы там тоже нельзя..
Перепробовал кучу проводников, файловых менеджеров, безрезультатно. На старом смартфоне (тоже MIUI) на android 12 все папки читает и показывает содержимое. И есть один странный нюанс, есть приложения, где все папки и их содержимое видимо. Может это мое приложение ограничило доступ к вложенным папкам? Может косяк в оболочке? Я не знаю!
Ответы (1 шт):
на устройствах Android. Этот каталог предназначен для хранения данных вашего приложения, и доступ к нему контролируется системой Android из соображений безопасности.
Для доступа к этим файлам вам нужно запросить соответствующие разрешения в манифесте вашего приложения. Убедитесь, что вы запросили разрешения WRITE_EXTERNAL_STORAGE (если вы пишете данные) и READ_EXTERNAL_STORAGE (если вы читаете данные) в манифесте приложения и получили соответствующие разрешения от пользователя.
Вот пример того, как это может выглядеть в манифесте Android:
<manifest ...>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
...
</manifest>
Также, начиная с Android 10 (API уровень 29), Google ввела новые ограничения доступа к файловой системе из соображений безопасности. Теперь, для доступа к внешнему хранилищу, вам нужно использовать стандарты Scoped Storage, чтобы получить доступ к общим областям файловой системы.
Если ваше приложение работает с Android 10 и выше, вам следует использовать методы API, предоставленные Android для работы с файлами в области Scoped Storage.

