Android 5.0 ("Lollipop") и Nexus 4/5/7/10
Как известно, Google выпустили новую версию Android - 5.0 "Lollipop", и она начинает распространяться по OTA (Over-the-Air), и через несколько недель сделает эту статью бесполезной :-) Но если вы нетерпеливы (как я, например), ваш Nexus 4/5/7/10 можно обновить, используя "заводские образы" уже сейчас.
Минус такого способа обновления - потеряются данные приложений, и некоторые настройки - чего можно практически полностью избежать, если проследовать простому способу, который я собираюсь тут описать.
Нам потребуются следующее:
- установленный Android SDK - из него нам нужны только platform-tools
- устройство (я тестировал всё на телефоне Nexus 4, но думаю, что с планшетами всё пройдёт так же гладко) и кабель к нему
- разблокированное меню разработчика (многократный тап по версии сборки в окне информации о телефоне открывает это меню) и включенный там режим отладки по USB
- место на диске под резервную копию
- хорошая компьютерная грамотность
Этапы процедуры следующие:
- сделать резервную копию содержимого карты памяти - любым удобным вам способом, например просто скопировав.
- сделать резервную копию всех приложений - только данные
- разблокировать загрузчик на телефоне
- прошить прошивку с Android 5.0
- восстановить данные на карту памяти
- подключить заново свой аккаунт Google
- восстановить резервную копию данных приложений.
Теперь в подробностях:
Бэкапим данные приложений
Резервную копию всех приложений можно сделать через утилиту adb
, входящую в platform-tools Adnroid SDK. У утилиты много параметров, которые
можно посмотреть через adb --help
, нас интересуют всего несколько:
adb backup -noapk -nosystem -noshared -all -f FILENAME # резервная копия данных всех пользовательских приложений в FILENAME
Возможно полезные варианты так же:
adb backup -apk -nosystem -noshared -all -f FILENAME # резервная копия данных всех пользовательских приложений вместе с
приложениями.
Так же, если вам важны данные только в некоторых приложениях - вы можете сделать резервные копии отдельно по приложениям:
adb backup -noapk APPNAME -f FILENAME-APPNAME
Список имён приложений можно получить через adb shell 'pm list packages'
При каждом процессе бекапирования телефон будет спрашивать у вас подтверждение.
Разблокировка и прошивка
С устройствами Nexus процедура разблокировки загрузчика - это всего одна комманда, "легальная", в отличие от многих других аппаратов, где для этого нужно искать различные способы "взлома" защиты. Процедура полностью описана на странице скачивания образов, так же как и процедура прошивки.
Разворачивание резервных копий данных приложений
Здесь важно выдержать последовательность действий:
- вернуть данные на карту памяти (те, которые вам нужны, конечно. Не переписывайте обратно папку Android и т.п., если вы точно не знаете, нужны ли она - перепишите только ваши личные данные)
- Вернуть установленные предложения и их данные ОДНИМ ИЗ способов:
- либо подключить аккаунт Google, для того чтобы устройство установило заново все приложения, и затем развернуть бэкап, сделанные с опцией
-noapk
- либо восстановить бэкап, сделанный с опцией
-apk
, и подключить аккаунт Google, отказавшись от установки приложений.
- либо подключить аккаунт Google, для того чтобы устройство установило заново все приложения, и затем развернуть бэкап, сделанные с опцией
- наслаждаться тем, что все настройки приложений вернулись в прежднее состояние, а Android уже 5.0 :-)
ВАЖНО!!
- Данные SMS при таком способе потеряются! SMS - это системное приложение, и его резервную копию можно снять - но восстанавливать системное приложение от предыдущей версии ОС - не очень хорошая идея. Поэтому ПЕРЕД тем как что-либо делать - сделайте резервную копию ваших SMS любой сторонней программой, чтобы восстановить ей же в последствии. Делайте это ДО того, как переписывать данные с карты памяти, если выбранное вами ПО сохраняет данные локально на устройстве . Я использовал Go Backup, но альтернатив много, root-прав для этого не нужно.
- Skype у меня работать не захотел после такого восстановления, пока я не вышел из аккаунта Skype и не зашел в него заново.
- Настройки VPN-подключений и аккаунтов встроенного клиента SIP-телефонии потеряются. "Мне жаль. Мне очень жаль", как говорил Доктор Кто. Позаботьтесь об этом заранее.
- Массивные приложения, которые хранят часть данных на карте памяти - игры, некоторые GPS-навигаторы с offline-картами - поведут себя так, как заложили в них их разработчики. Может быть подключат все данные с карты. А может быть не подключат - всё зависит от конкретного приложения.
- Возможны какие-то другие проблемы, которые мне не встречались.
С другими приложениями из тех, которыми пользуюсь я - проблем не возникло. Желаю удачи в прошивке!
UPD:
Благодаря Алексею Ким узнал, что есть алтернативный путь, более простой - использование adb
sideload
(данная опция появилась начиная с Jelly Bean)
Процедура по факту выглядит как установка тех же ОТА обновлений, но не по расписанию Google, а вручную, едва эти обновления вышли.
- в сети находится ресурс, где кто-нибудь выложил ссылку на имеющуюся ОТА-прошивку (это ссылка на сервера Google, но она не публикуется нигде, а используется устройствами для получения обновлений "по воздуху")
- эта прошивка зашивается через Recovery Mode (режим внутри Bootloader, нужно знать комбинацию клавиш для входа, иначе будет просто андроид с красным значком на пузе гореть), через функцию "update from ADB"
Результат такой же, как при обновлении по воздуху - всё остаётся нетронутым.