В чем разница удаления приложений в разных операционных системах
Что проверяют
Понимаете ли вы, что остаётся в системе после удаления и как это влияет на повторную установку. Следом обычно просят набросать тест-кейсы на удаление и переустановку мобильного приложения.
Как отвечать
Разберите системы по тому, где приложение хранит данные:
- Windows: удаление через «Параметры» или «Программы и компоненты» запускает деинсталлятор, который написал сам разработчик. Что он почистит, решает он: часто остаются папки в
%AppData%,%LocalAppData%,ProgramData, ключи реестра, службы, задачи планировщика. Пакеты MSIX удаляются чище; - macOS: приложение переносят из
/Applicationsв корзину, но настройки и кэши остаются в~/Library/Application Support,~/Library/Preferences,~/Library/Caches, фоновые агенты вLaunchAgents; - Android: система удаляет внутреннее хранилище приложения и его папку
Android/data. Файлы в общих папках (загрузки, фото) остаются. Бэкап Google может вернуть данные при переустановке, если в манифесте не выключенandroid:allowBackup.adb uninstall -kудаляет приложение, сохранив данные. Часть предустановленных приложений можно только отключить; - iOS: удаляется вся песочница, но записи Keychain обычно переживают удаление, а данные в iCloud остаются. Есть ещё «Сгрузить приложение»: бинарник удаляется, документы и данные сохраняются.
Отсюда проверки: переустановка после удаления (не залогинен ли пользователь по токену из Keychain, показывается ли онбординг), удаление при активной подписке (подписка не отменяется), удаление во время загрузки, обновление поверх старой версии против чистой установки.
Где спотыкаются
Говорят, что на iOS удаление полное. Keychain и iCloud дают баги, которые воспроизводятся только после переустановки.
Путают удаление с очисткой данных в настройках Android. Это разные сценарии, проверять нужно оба.
Перечисляют пункты меню вместо того, что остаётся на диске. Интервьюеру важны последствия для приложения и пользователя, а не путь по настройкам.