Повітряні оновлення вже давно стали предметом багатьох корінних користувачів Android. Це нескінченна битва: встановлення оновлення руйнує корінь або взагалі не спалахне, але кожен хоче останню версію своєї мобільної ОС. Завдяки новому інструменту під назвою FlashFire боротьба може закінчитися.
Чому оновлення OTA не грають добре з кореневими телефонами
ПОВ'ЯЗАНІ: Яка різниця між джейлбрейком, вкоріненням та розблокуванням?
Android базується на Linux , тому пристрої Android мають «кореневого» користувача, який працює як обліковий запис адміністратора в Windows. За замовчуванням Android не надає вам доступу до кореневого облікового запису. Вкорінення - це процес надання доступу до кореневого облікового запису , встановивши двійковий файл su. Додатки можуть зателефонувати su, щоб отримати підвищені привілеї, тому вони можуть звільнитися від пісочниці безпеки Android і робити більш потужні речі. Android не має попередніх коренів через проблеми безпеки, до яких це може призвести , особливо для менш технічно схильних користувачів.
Кореневий процес також встановлює програму, подібну SuperSU , який контролює доступ до двійкового файлу su, тож ви можете вибрати, яким додаткам дозволено мати root-доступ.
Зазвичай ви втратите свій root-доступ, коли встановлюєте оновлення операційної системи. На льодянику та попередніх версіях Android оновлення OTA (англ. OTA) повертає системний розділ Android до заводського стану, видаляючи двійковий файл su. На новіших пристроях із безсистемним корінням він перезаписує завантажувальний образ. А якщо у вас є нестандартне відновлення , оновлення OTA може взагалі не вдатися встановити.
Колись у SuperSU був «Режим виживання», який дозволяв вам прошивати оновлення, але цього вже немає. Введіть FlashFire.
Що таке FlashFire?
FlashFire це потужний інструмент від Chainfire, виробника SuperSU, який дозволяє корінним користувачам виконувати різноманітні дії, такі як перепрошивка оновлень OTA та повних ZIP-файлів, створення та відновлення резервних копій, витирання даних та багато іншого. Це ефективно усуває необхідність використовувати відновлення для резервного копіювання чи відновлення вручну, а також автоматично обробляє скасування та повторне вкорінення під час прошивання файлів оновлення.
ПОВ'ЯЗАНІ: Як укорінити свій телефон Android за допомогою SuperSU та TWRP
Теоретично він повинен працювати на багатьох, якщо не на більшості, телефонах Android 4.2+. Однак є застереження.
На багатьох пристроях наявність root не дозволить OTA завантажуватися та перепрошиватися. На деяких пристроях він фактично завантажиться, але для успішного прошивання вам знадобиться такий інструмент, як FlashFire. На інших пристроях він фактично не завантажується, тому вам доведеться отримати файл OTA іншим способом (їх часто розміщують на таких сайтах, як Розробники XDA ), а потім, можливо, ви можете прошити його за допомогою такого інструменту, як FlashFire. Якщо ви не можете отримати файл OTA, можливо, вам не пощастило.
Крім того, якщо у вас запущений пристрій, який отримує повне оновлення - від Lollipop до Marshmallow, наприклад - все стає темнішим. Оскільки коріння Marshmallow без розблокованого завантажувача неможливий, ви повністю втратите root-доступ, якщо завантажувач вашого пристрою заблоковано. Цього не уникнути. Якщо ви розблокували завантажувач, FlashFire повинен мати можливість зберегти (або принаймні відновити) root-доступ після завершення оновлення.
Отже: хоча FlashFire гарантовано не працюватиме на кожному пристрої, якщо ви це зробили пішов “офіційним” маршрутом для вкорінення телефону , це, мабуть, спрацює.
Якщо ви хочете дізнатись більше, я закликаю всіх бажаючих перевірити цю тему на XDA перед початком роботи. Коли ви будете готові, можете встановіть FlashFire з магазину Play .
Як використовувати FlashFire для прошивки оновлення OTA, не втрачаючи кореня
Коли ви отримуєте сповіщення, що для вашого пристрою доступне оновлення, перше, що вам потрібно зробити, - це завантажити його… але не встановлюйте його. Якщо ви скажете оновлення продовжувати встановлення, воно, швидше за все, не вдасться, оскільки ви працюєте на кореневому пристрої.
Натомість запустіть FlashFire, як тільки OTA закінчить завантаження. Він повинен автоматично виявити файл оновлення та запитати, чи хочете ви генерувати дії для його прошивки. Вперед і натисніть "OK".
Це створить екран, який може здатися трохи приголомшливим для початківців користувачів, але це, по суті, лише розбивка того, що FlashFire має намір робити з файлом OTA. Кожен параметр налаштовується, якщо ви натискаєте на нього - наприклад, якщо ви не хочете стирати розділ кешу, просто зніміть цей параметр. Ви також можете додати різні дії, але я б не радив робити це зараз.
Якщо у вас є спеціальне відновлення, як встановлений TWRP , FlashFire зробить резервну копію перед початком процесу, а потім відновить.
Закінчивши набір інструкцій, натисніть кнопку "Flash". Це дасть попередження, що завантаження FlashFire може зайняти трохи часу, і може з’явитися пара чорних екранів. Вперед і ще раз натисніть «ОК».
Після цього FlashFire перезавантажиться, і ви побачите купу прокручуваного тексту на дисплеї. Залиште пристрій у спокої - це лише FlashFire, який запускає необхідні команди. По завершенні він перезавантажиться з оновленим оновленням та відновленням root. Бум. Так просто.
Що робити, якщо прошивка OTA не працює
Якщо ви змінили пристрій таким чином, що заважає FlashFire застосовувати оновлення - можливо, ви використовуєте власне ядро, або розділ / system був змінений Xposed Framework , наприклад - тоді оновлення буде «невдалим». На даний момент немає повідомлень про те, що оновлення не було застосовано, тому вам доведеться перейти в меню «Налаштування»> «Про телефон» і перевірити, чи не змінився номер збірки. Якщо ні, то ви знаєте, що оновлення не застосовувалося (також є велика ймовірність, що Android повідомить вас, що оновлення все-таки потрібно встановити).
Коли це трапляється, найкраще зробити завантаження заводський імідж для вашого пристрою, якщо він доступний. У цьому прикладі я перепрошу найновіше оновлення (виправлення безпеки у квітні 2016 року) на свій Nexus 7.
Після завантаження скопіюйте файл .tgz із заводського зображення у внутрішню пам’ять телефону або на SD-карту.
Відкрийте FlashFire і торкніться плаваючої кнопки дії (червона кнопка з плюсом) у нижньому правому куті. Виберіть “Пакет прошивки Flash”.
Це відкриє сортовий менеджер файлів, який за замовчуванням повинен бути кореневою внутрішньою папкою зберігання. Прокрутіть вниз, поки не знайдете файл, який ви щойно перенесли на пристрій.
Після того, як ви вибрали файл зображення, FlashFire відсканує архів, щоб перевірити його вміст, а потім представить список того, що може (і що буде) прошито. Ви можете вільно вибирати, що ви хочете тут - якщо у вас є спеціальне відновлення і ви хочете зберегти його таким, просто скасуйте, наприклад, опцію "відновлення".
Коли ви будете готові блимати, просто натисніть прапорець у верхньому правому куті. Вам знову буде представлено список дій, перш ніж він продовжиться, тому, якщо ви хочете чи хочете щось змінити, зараз час.
Після підтвердження всіх кроків натисніть кнопку «Flash». Ви побачите те саме попередження про те, що FlashFire вимагає деякого часу для завантаження, і що може з’явитися пара чорних екранів. Просто натисніть "OK".
FlashFire перезавантажиться і зробить свою справу. Оскільки це миготливий повний файл зображення, а не просто просте оновлення, це може зайняти трохи часу, поки воно закінчиться. Однак, як тільки це станеться, він перезавантажиться, і ви будете готові піти.
Це лише подряпини поверхні того, що зараз може зробити FlashFire, і без цього не згадується, на що він буде здатний у майбутньому. Без сумніву, ми будемо говорити про це більше, як тільки ми проведемо більше часу з майбутніми оновленнями програми.