Пишу простую программу для шифрования данных в Android. Столкнулся с такой проблемой, что нет доступа на запись к exSDcard устройств. После долгих поисков в интернете узнал, что с Android 4.4.2 введен запрет на запись на внешние носители. Собственно, вопрос заключается в том, что можно ли без получения root прав записать файл в exSDcard директорию и каким способом?
P.S. В Manifest.xml premissions прописаны
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
Тема уже мусолилась мильон тыщ раз - тем не менее повторюсь:
можно ли без получения root прав записать файл в exSDcard директорию и каким способом?
Да, можно. Как пишет документация:
Starting in Android 4.4, the owner, group and modes of files on external storage devices are now synthesized based on directory structure. This enables apps to manage their package-specific directories on external storage without requiring they hold the broad WRITE_EXTERNAL_STORAGE permission. For example, the app with package name com.example.foo can now freely access Android/data/com.example.foo/ on external storage devices with no permissions.
Если вкратце, то приложение может создать свой приватный каталог на карте памяти и писать туда, но писать на карту памяти куда угодно запрещено (читать кстати, можно).
Методы обхода сего несколько раз появлялись в сети, но Google патчами закрывал эти дырки. На некоторых моделях разных устройств, тем не менее, разрешения даются и давались, например Samsung при запросе WRITE_EXTERNAL_STORAGE автоматически дает разрешение WRITE_MEDIA_STORAGE и если медиа сторидж на карте, то можно писать в каталог медиа. В прошивках Cyanogen также есть разрешение на запись на карту.
Впрочем в версии Android 5.0 появилась официальная дырка в заборе, а именно в каталог получаемый с помощью метода getExternalMediaDirs() - можно и писать и читать безо всяких пермишенов.
Как развивать веб-проекты в 2026 году: технологии, контент E-E-A-T и факторы доверия
Современные инструменты для криптотрейдинга: как технологии помогают принимать решения
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники