В Android 10 для разработчиков приложений представлен флаг манифеста, который, если он включен, позволяет пользователю сохранять данные приложения при его удалении. Читайте дальше!
Андроид 10 это последнее обновление Android от Google, включающее несколько улучшений для зрелой ОС. Большинство изменений и новых функций в новейшем обновлении либо получают выделено самим Google во время ввода-вывода Google или найден в ближайшее время после выпуск общедоступного источника. Но некоторые заметные изменения, как правило, ускользают из поля зрения и всплывают спустя несколько месяцев, когда кто-то случайно на них натыкается. Именно это и происходит в данном случае, потому что, как выяснилось, Android 10 позволяет разработчикам спрашивать своих пользователей, хотят ли они сохранить данные приложения до его удаления.
Недавний отчет из AndroidПолиция выделил эту функцию. Приложения похожие на WhatsApp и Диктофон ASR начали предлагать пользователям Android 10 возможность сохранить данные приложения, которое скоро будет удалено.
Если установить флажок, показанный выше, данные приложения будут сохранены на телефоне, даже если приложение будет удалено. Когда вы переустановите приложение, вы вернетесь в то же состояние приложения, как если бы вы никогда его не удаляли.
Мишаал провел небольшое расследование того, что происходит за кулисами. Чтобы понять это, вам нужно сначала понять, как приложения на Android могут хранить файлы на вашем устройстве, и существует три основных места для хранения файлов:
- Каталог приложения во внутреннем (недоступном пользователю без root) хранилище: эти папки расположены по адресу /data/data и недоступны для других приложений или когда пользователь обычно подключает свой телефон к ПК. Приложениям не требуется разрешение на запись файлов в собственный каталог приложения в этом месте.
- Каталог приложения во внешнем (доступном для пользователя) хранилище. Эти папки расположены по адресу /data/media/{user}/Android/data и доступны другим приложениям с соответствующим разрешением, а также пользователю, когда он обычно подключает свой телефон к компьютеру. Приложениям не требуется разрешение на запись файлов в свой собственный каталог приложения в этом месте, но им необходимо разрешение на доступ к данным из других приложений, как упоминалось ранее.
- Любой каталог во внешнем (доступном пользователю) хранилище. Приложения могут запрашивать разрешение на доступ к внешнему хранилищу. позволяя приложению создавать любую папку на внешнем хранилище для хранения всего, что оно хочет сохранить здесь.
Расширяя пример WhatsApp, каталог приложения WhatsApp во внутренней памяти находится по адресу /data/data/com.whatsapp; каталог его приложения во внешнем хранилище находится по адресу /data/media/{user}/Android/data/com.whatsapp; и его пользовательский каталог во внешнем хранилище находится по адресу /data/media/{user}/WhatsApp.
До Android 10 и до того, как разработчики включат это для своих приложений, когда пользователь удаляет приложение, его каталоги, специфичные для приложения, как во внутренних (/data/data) и внешний (/data/media) хранилища удаляются по умолчанию. Лишние каталоги на внешнем хранилище не удаляются, и вам нужно избавиться от них вручную или использовать такое приложение, как СД горничная сделать это для тебя.
В Android 10 разработчики приложений могут добавить в свой манифест специальный флаг под названием «имеетFragileUserData«, что позволяет им спрашивать пользователя, хотят ли они сохранить данные приложения после его удаления, что вы видите выше на снимке экрана. Когда вы удаляете приложение с установленным флажком для сохранения данных приложения, Android сохранит, а не удалит каталоги приложения во внутреннем и внешнем хранилище. Мы подтвердили это, проверив каталоги на наличие приложений, которые не добавили флаг манифеста, и таких, как WhatsApp, которые добавили флаг манифеста.
На первый взгляд, наличие этой опции имеет смысл, поскольку пользователи могут временно удалять приложения и при этом возвращаться к своим. предыдущее состояние при переустановке, что должно избавить от некоторых проблем с резервным копированием и восстановлением приложения на том же компьютере. устройство. Но имейте в виду, что /data/data недоступен без root-доступа, поэтому вы, как пользователь, не можете использовать этот процесс для резервного копирования и восстановления без root-прав на разных устройствах. Пользователи также не могут удалить файлы, оставшиеся в /data/data без рута; поэтому, если вы захотите очистить файлы в будущем, вам придется переустановить приложение, а затем удалить его, не устанавливая флажок. Используйте эту опцию для слишком большого количества приложений, и вы, скорее всего, забудете, какие приложения вы выбрали как пользователь. Поскольку разработчики не могут включать это, а пользователи могут выбирать, мы считаем, что это общее положительное изменение, которое дает больше возможностей конечному пользователю.