Чи видалено стару програму при її оновленні?


11

я хочу знати, коли оновлення доступне для додатка, очевидно, що новий apk є. Так це старий apk видалено та встановлено новий apk?

Відповіді:


16

Не зовсім, ні. Коли ви видаляєте пакет, він також видаляє інші дані, пов’язані з цим пакетом: наприклад, власні приватні дані програми, його дані на SD-картці, ваші налаштування за замовчуванням для цього додатка. Він також повідомляє будь-яким іншим зацікавленим програмам, які ви видалили, за допомогою наміреної трансляції . Інші додатки, які отримують цей ефір, можуть вжити додаткових дій, виходячи з цього: наприклад, запуск (додаток на головний екран) видалить ярлики та віджети робочого столу з цього додатка, оскільки вони більше не працюватимуть.

Коли пакет оновлений (тобто замінюється новим файлом APK з тим же ім'ям пакета та пізнішим кодом версії), стара версія зупиняється, так що більше нічого з програми не працює. Старий файл APK видаляється, а новий замінює його, але інші дії з видалення не виконуються: дані приватного додатка та налаштування за замовчуванням зберігаються, а трансляція видалення не надсилається. Натомість транслюється інший намір повідомити будь-яким зацікавленим програмам про те, що пакет оновлений.

Тож коли видаляється старий файл APK, ефект оновлення є зовсім іншим, як видалити старий пакет, а потім встановити новий.

У Google Play ситуація може бути дещо іншою, якщо розробник увімкнув дельта-оновлення (звані смарт-оновленнями від Google).

Під час оновлення дельти завантажуються та застосовуються до існуючої APK лише зміни між двома версіями. Наприклад, якщо у вас є додаток розміром 15 Мб, і розробник вирішив змінити фонове зображення, вам не потрібно знову завантажувати всю програму, ви можете просто завантажити дельта (різницю), яка включає в себе новий зображення. Потім копіюється старий APK, новий вміст вводиться в копію старого APK, і якщо успіх, старий APK видаляється. Кінцевий результат - оновлений APK.


Це чітка відповідь! Скажіть, будь ласка, як видалити старі дані програми при встановленні нового оновлення?
lifeLongLearner

@lifeLongLearner Просто скористайтеся кнопкою "очистити дані" у Налаштуваннях так само, як і в інший час.
Дан Хулм
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.