Защо ОТА актуализации не играят добре с корени телефони
Android се базира на Linux, така че устройствата с Android идват с "корен" потребител, който функционира като потребителския акаунт на Administrator в Windows. По подразбиране Android не ви дава достъп до основния профил. Вкореняване е процесът на активиране на достъпа до основната сметка, като се инсталира su binary. Приложенията могат да се обаждат на су, за да получат повишени привилегии, така че да могат да се освободят от sandbox за сигурност на Android и да направят по-мощни неща. Android не дойде в основата си поради проблемите, свързани със сигурността, които биха могли да доведат до това, особено за по-малко технически наклонени потребители.
Коренният процес също така инсталира приложение като SuperSU, което контролира достъпа до SU, за да изберете кои приложения да имат достъп до root.
Обикновено ще загубите коренния си достъп, когато инсталирате актуализация на операционната система. В Lollipop и по-ранните версии на Android, актуализацията "over-the-air" (OTA) задава вашия дял на системната система Android обратно до фабричното си състояние, като премахва су Бинтер. На по-новите устройства с корен без систем, той презаписва изображението на багажника. И ако имате персонализирано възстановяване, обновяването на OTA може да не е възможно да се инсталира изобщо.
Някога, SuperSU имаше "Survival Mode", който би ви позволил да флаш актуализации, но това вече не е наоколо. Влезте в FlashFire.
Какво е FlashFire?
FlashFire е мощен инструмент от Chainfire, създателят на SuperSU, който позволява на вкоренените потребители да извършват различни действия, като мигащи OTA актуализации и пълни zip файлове, създаване и възстановяване на архиви, изтриване на данни и много други неща. Това ефективно премахва необходимостта от използване на възстановяване за ръчно архивиране или възстановяване, и автоматично се справя с премахване на вкореняването и повторно вкореняване при мигане на актуализираните файлове.
Теоретично, тя трябва да работи върху много, ако не и най-много Android 4.2+ мобилни устройства. Съществуват обаче опасения.
На много устройства, като root, ще предотврати изтеглянето и мигането на OTA. На някои устройства тя действително ще се изтегли, но ще ви е необходим инструмент като FlashFire, за да го успеете да го включите. На други устройства това няма да се изтегли, така че ще трябва да получите файла OTA по друг начин (те често се публикуват на сайтове като XDA Developers), а след това може би можете да го включите с инструмент като FlashFire. Ако не можете да получите OTA файла, може да нямате късмет.
Освен това, ако използвате вкоренено устройство, което получава пълна актуализация - от Lollipop до Marshmallow например - нещата стават по-мрачни. Тъй като няма начин да коренувате Marshmallow без отключен буутлоудър, ще загубите напълно коренния достъп, ако буутлоудъра на устройството ви е заключен. Това е неизбежно. Ако обаче сте отключили буутлоудъра, FlashFire трябва да може да запази (или поне да възстанови) коренния достъп, след като приключи актуализацията.
Така че, докато FlashFire не е гарантирано да работи на всяко устройство, ако сте преминали "официалния" маршрут, за да коренувате телефона си, вероятно той ще работи.
Ако искате да научите повече, насърчавам всеки, който има интерес да провери тази тема на XDA преди да започнете. Когато сте готови, можете да инсталирате FlashFire от Google Play Магазин.
Как да използвате FlashFire за Flash OTA Актуализиране без загуба на корен
Когато получите известие, че има налична актуализация за устройството ви, първото нещо, което ще искате да направите, е да продължите и да го изтеглите - но не го инсталирайте. Ако кажете на актуализацията да продължи и да се инсталира, вероятно ще се провали, тъй като работите с вкоренено устройство.
Ако имате персонализирано възстановяване като TWRP инсталирано, FlashFire ще го архивира, преди да започне процеса, и ще го възстанови след това.
Какво да направите, ако мигането на ОТА не работи
Ако сте променили устройството си по начин, който предотвратява прилагането на FlashFire от актуализацията - може би работите с персонализирано ядро, или / системния дял е бил променен от Xposed Framework, например - тогава актуализацията ще се провали. "Понастоящем няма известяване, че актуализацията не е била приложена, така че ще трябва да преминете към менюто Настройки> Всичко за телефона и да видите дали номерът за създаване е променен. Ако не, тогава знаете, че актуализацията не е приложена (също има добър шанс Android да ви уведоми, че актуализацията все още трябва да бъде инсталирана).
Когато това се случи, най-доброто нещо, което трябва да направите, е да изтеглите фабричното изображение на устройството си, ако е налице. В този пример ще проблясвам най-новата актуализация (пачове за сигурност от април 2016 г.) в моя Nexus 7.
След като изтеглите, копирайте файла.tgz на фабричното изображение във вътрешното хранилище или SD картата на телефона.
Отворете FlashFire и докоснете плаващия бутон за действие (червения бутон с плюс) в долния десен ъгъл. Изберете "флаш флаш пакет".
Щом сте готови да мигате, просто докоснете отметката в горния десен ъгъл. Отново ще ви бъде представен списък с действия, преди да продължи, така че ако искате или трябва да промените нещо, сега е времето.
Това е само надраскване на повърхността на това, което FlashFire може да направи понастоящем, и това става без да се споменава какво ще бъде в състояние в бъдеще. Без съмнение ще имаме още неща, които да кажем, след като прекараме повече време с предстоящите актуализации на приложението.