Как работает update.zip?

14

update.zip - это пакеты, содержащие замены для частей системы Android. Пакеты содержат все файлы, которые обновление должно заменить, и скрипт, который выполнит замену при запуске.

Update.zips могут поступать из OTA-обновлений, но в некоторых случаях необходимо вручную загрузить и поместить update.zip в какую-то специальную папку. Однако файл update.zip по-прежнему обнаруживается и применяется таким же образом.

Какая часть Android обнаруживает и обрабатывает update.zips?

enthdegree
источник

Ответы:

18

update.zip Android никогда не трогает.

Внутри этого архива находится скрипт, который анализируется и интерпретируется средой выполнения Recovery.

При запуске Recovery открывает архив, распаковывая его во временный каталог, считывает сценарий с удачным именем update-script, анализирует его и, основываясь на синтаксисе, выполняет функцию, известную Recovery, эта функция может выполнять следующие действия, называя только несколько:

  • mount /systemи другие файловые системы, а также выполнять операции чтения / записи файлов, включая копирование ядра, или apk, или даже форматирование раздела и т. д.
  • проверьте build.propналичие определенных свойств, таких как устройство, производитель и т. д.
  • выводить на экран информацию о ходе выполнения и т. д.

Это в значительной степени де-факто стандарт, встроенный в Android Open Source Project (AOSP)

ClockworkMod, TWRP являются производными от базовой версии, которая находится в AOSP с дополнительными улучшениями, такими как ввод с сенсорного экрана.

t0mm13b
источник
+1 очень интересно. Таким образом, восстановление не является частью самого Android? Что это подпадает под? Часть Linux, отдельная сущность?
RossC
2
@RossC Надлежащая среда восстановления находится в отдельном /recoveryразделе (некоторые производители не делают этого по неизвестной причине, псевдо-восстановление). Баскетбольная платформа ограничена для Android, в зависимости от того, используется ли стандартное восстановление, ограниченная оболочка по сравнению с CWM / TWRP, которая, помимо корневых привилегий, содержит больше прав. , Восхищение настоящего моддера - это устройство с отдельным разделом для восстановления.
t0mm13b
1
/recoveryне похож на раздел. В Linux это просто каталог. Это может быть смонтированный раздел, но все равно это просто каталог. Я говорю это, потому что это распространенное заблуждение, которое я заметил у пользователей Android.
Jcora
@yannbane - попробуйте это cat /proc/mtdили посмотрите /proc/partitions, как работает загрузчик, если нажата vol dwn, загрузчик считывает ядро /recoveryи загружает его по цепочке, вызывая либо фондовое, либо пользовательское восстановление. Это не linux ....
t0mm13b