Папки /Android/data и /data/data: что это и почему доступ ограничен
Кратко: /Android/data — внешние данные приложений (кэш, OBB, файлы пользователя), /data/data — приватные внутренние данные (базы, настройки). С Android 11+ Google ввёл Scoped Storage — сторонние приложения не видят чужие папки без специальных прав или root, чтобы защитить приватность и безопасность.
Что хранится в /Android/data и /data/data
- /Android/data/
— кэш, сохранения игр, OBB и другие файлы, которые приложение может сохранять на внешнем хранилище (но под своим каталогом). - /data/data/
— приватные файлы приложения: SQLite, настройки, токены, приватные кэши; доступны только приложению и системному пользователю (или root). - Размеры могут быть большими: медиаклиенты и игры хранят гигабайты в /Android/data, мессенджеры — в /data/data.
Эта организация разделяет публичные (внешние) и приватные (внутренние) данные, снижая риск утечек.
Почему доступ ограничен (Scoped Storage) и что изменилось
Причины:
- Приватность: блокировка доступа к паролям, токенам, медицинским данным.
- Безопасность: ограничение возможности вредоносных приложений читать чужие кэши.
- Регуляции: соответствие GDPR/CCPA и требованиям безопасности.
Как это работает:
- Android 10 — введены предупреждения и опции для разработчиков.
- Android 11 — Scoped Storage обязателен для новых приложений: приложение видит в основном только свои файлы.
- Android 11–12 — частичные исключения через MANAGE_EXTERNAL_STORAGE; Android 13+ — ужесточение, исключения минимальны.
Как действовать пользователю и разработчику
Для обычного пользователя:
- Очистка кэша: Настройки → Приложения → Выберите приложение → Хранение → Очистить кэш. Это безопасно и освобождает место.
Если нужно освободить много места, сначала проверьте встроенные инструменты приложения (экспорт чатов, очистка медиакэша).
- Если файловому менеджеру нужен доступ ко всем файлам, вы можете включить "Доступ ко всем файлам" (MANAGE_EXTERNAL_STORAGE) в специальных правах, но это должно быть сделано осознанно.
Для продвинутых:
- ADB: adb shell pm grant
android.permission.MANAGE_EXTERNAL_STORAGE — временное решение для отладки. - Root: открывает полный доступ, но повышает риск безопасности и может нарушить работу банковских/защищённых приложений.
Для разработчиков:
- Используйте Storage Access Framework, MediaStore и getExternalFilesDir() для доступа к файлам без обходов.
- requestLegacyExternalStorage устарел и не действует на новых версиях Android.
Частая ошибка: установка сомнительных APK с «всеми правами» не обходит Scoped Storage и часто является вектором malware.
Частые ошибки
- Ожидание, что файловый менеджер покажет /Android/data чужого приложения — теперь недоступно.
- Попытки полагаться на requestLegacyExternalStorage для новых версий.
- Использование root без резервной копии и понимания последствий (потеря гарантии, риски безопасности).
FAQ
- Можно ли копировать OBB и сохранить резервную копию игр?
Часто нет без root. Некоторые игры позволяют экспорт/импорт внутри самого приложения; в других случаях нужен root или специальные инструменты с поддержкой MANAGE_EXTERNAL_STORAGE. - Поможет ли удаление приложения освободить место?
Да — удаление приложения обычно удаляет его /data/data и /Android/data, освобождая место. - Что безопаснее: давать MANAGE_EXTERNAL_STORAGE или делать root?
MANAGE_EXTERNAL_STORAGE безопаснее, чем root: он даёт доступ конкретному приложению, тогда как root открывает весь девайс и повышает риски.
В итоге Scoped Storage — сознательное ограничение ради приватности и безопасности. Если вы не занимаетесь моддингом или глубокими бэкапами, привычные функции останутся доступными через настройки приложений и официальные механизмы экспорта/резервного копирования.