Апгрейд андроида что это

Как обновить Андроид до последней версии

Android – это операционная система, которая постоянно развивается, следовательно, её разработчики регулярно выпускают новые версии. Некоторые девайсы способны самостоятельно обнаружить недавно вышедшее обновление системы и установить его с разрешением пользователя. Но что делать, если оповещения об обновлениях не приходят? Можно ли обновить Android на телефоне или планшете самостоятельно?

Как обновить Андроид до последней версии

СодержаниеКак обновить Андроид до последней версии

Обновление Android на мобильных устройствах

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

Перед установкой новой версии Android лучше сделать резервное копирование все важных пользовательских данных — бэкап. Благодаря этому, если что-то пойдёт не так, то вы сможете вернуть сохранённые данные.

Способ 1: Стандартное обновление

Этот способ является самым безопасным, так как обновления в таком случае будут установлены на 100% корректно, но есть некоторые ограничения. Например, вы можете поставить исключительно официально вышедшее обновление и только в том случае, если оно выло именно для вашего устройства. В противном случае девайс просто не сможет обнаружить обновления.

Инструкция к этому способу выглядит следующим образом:

1. Перейдите в «Настройки».

2. Найдите пункт «О телефоне». Зайдите в него.

3. Здесь должен быть пункт «Обновление системы»/«Обновление ПО». Если его нет, то нажмите на «Версия Android».

4. После этого начнётся проверка системой устройства на возможность обновлений и наличие доступных апдейтов.

5. Если обновлений для вашего устройства нет, то на дисплее отобразится надпись «Используется система последней версии». Если же доступные обновления были обнаружены, вы увидите предложение установить их. Нажмите на него.

6. Теперь нужно, чтобы телефон/планшет были подключены к Wi-Fi и имели полный заряд батареи (или хотя бы не меньше половины). Здесь вас могут попросить прочесть лицензионное соглашение и поставить галочку, что вы согласны.

7. После начнётся обновление системы. Во время него устройство может пару раз перезагрузиться, либо «намертво» зависнуть. Не стоит ничего делать, система самостоятельно проведёт все обновления, после чего девайс загрузится в обычном режиме.

Способ 2: Установка локальной прошивки

По умолчанию во многие смартфоны на Android загружена резервная копия действующей прошивки с обновлениями. Этот способ тоже можно отнести к стандартным, так как осуществляется он исключительно при помощи возможностей смартфона. Инструкция к нему выглядит следующим образом:

1. Перейдите в «Настройки».

2. Затем совершите переход в пункт «О телефоне». Обычно он расположен в самом низу доступного списка с параметрами.

3. Откройте пункт «Обновление системы».

4. Нажмите на иконку троеточия в верхней правой части. Если её не будет, то этот способ вам не подойдёт.

5. Из выпавшего списка выберите пункт «Установить локальную прошивку» или «Выбрать файл прошивки».

6. Подтвердите установку и дождитесь её завершения.

Таким способом можно установить только ту прошивку, которая уже записана в памяти устройства. Однако вы можете загрузить в его память прошивку, скачанную из других источников, воспользовавшись специальными программами и наличием root-прав на устройстве.

Способ 3: ROM Manager

Этот способ актуален в тех случаях, когда устройство не нашло официальных обновлений и не может их установить. При помощи этой программы вы можете поставить не только какие-то официальные обновления, но кастомные, то есть разработанные независимыми создателями. Однако для нормальной работы программы придётся получить права root-пользователя.

Чтобы обновиться таким способом, вам потребуется скачать нужную прошивку и перенести её либо во внутреннюю память устройства, либо на SD-карту. Файл с обновлениями должен быть архивом с форматом ZIP. При переносе его устройства разместите архив в корневом каталоге SD-карты, либо внутренней памяти устройства. А также для удобства поисков переименуйте архив.

Когда подготовка будет завершена, можно приступить непосредственно к обновлению Android:

1. Скачайте и установите на устройство ROM Manager .

2. В главном окне найдите пункт «Установить ROM с SD-карты». Даже если файл с обновлениями находится во внутренней памяти устройства, всё равно выберите этот параметр.

3. Под заголовком «Current directory» укажите путь до ZIP-архива с обновлениями. Для этого просто нажмите на строку, а в открывшемся «Проводнике» выберите нужный файл. Он может быть расположен как на SD-карте, так во внешней памяти устройства.

Читайте также:  Manager apk android что это такое

4. Пролистайте немного ниже. Здесь вы столкнётесь с пунктом «Сохранить текущий ROM». Здесь рекомендуется поставить значение «Да», так как в случае неудачной установки вы сможете быстро вернуться к старой версии Android.

5. Дальше нажмите по пункту «Перезагрузка и установка».

6. Устройство будет перезагружено. После этого начнётся установка обновлений. Девайс опять же может начать зависать либо вести себя неадекватно. Не трогайте его до тех пор, пока он не завершит обновление.

При загрузке прошивок от сторонних разработчиков обязательно прочтите отзывы о прошивке. Если разработчик приводит перечень устройств, характеристик девайсов и версий Android, с которыми данная прошивка будет совместима, то обязательно изучите её. При условии, что ваше устройство не подходит хотя бы по одному из параметров рисковать не нужно.

Способ 4: ClockWorkMod Recovery

ClockWorkMod Recovery — более мощный инструмент для работы с установкой обновлений и других прошивок. Однако его установка значительно сложнее, чем ROM Manager. По факту это надстройка к обычному Recovery (аналог BIOS на ПК) Android-устройств. С его помощью вы сможете установить больший перечень обновлений и прошивок для вашего устройства, а сам процесс установки будет происходить более гладко.

Использование данного способа подразумевает сброс настроек вашего девайса до заводского состояния. Заранее рекомендуется перекинуть все важные файлы с телефона/планшета на другой носитель.

Но установка CWM Recovery отличается определённой сложностью, а найти его в Плей Маркет невозможно. Следовательно, вам придётся скачивать образ на компьютер и устанавливать его на Android при помощи какой-нибудь сторонней программы. Инструкция по установке ClockWorkMod Recovery при помощи ROM Manager выглядит следующим образом:

1. Перебросьте архив с CWM на SD-карту, либо внутреннюю память устройства. Для установки вам понадобятся права root-пользователя.

2. В блоке «Recovery» выберите «Flash ClockWorkMod Recovery» или «Recovery Setup».

3. Под «Current directory» тапните по пустой строке. Откроется «Проводник», где вам нужно указать путь до установочного файла.

4. Теперь выберите «Перезагрузка и установка». Дождитесь завершения процесса установки.

Итак, теперь в вашем устройстве есть надстройка по ClockWorkMod Recovery, которая представляет собой усовершенствованную версию обычного рекавери. Отсюда вы можете ставить обновления:

1. Загрузите на SD-карту, либо внутреннюю память устройства ZIP-архив с обновлениями.

2. Отключите смартфон.

3. Выполните вход в Recovery, зажав одновременно кнопку включения и одну из клавиш регулировки громкости. Какую именно из клавиш нужно зажать зависит от модели вашего девайса. Обычно все комбинации клавиш написаны в документации к устройству либо на сайте производителя.

4. Когда загрузится меню рекавери, выберите пункт «Wipe data/factory reset». Здесь управление происходит при помощи клавиш регулировки громкости (перемещение по пунктам меню) и клавиши включения (выбор пункта).

5. В нём выберите пункт «Yes – delete all user data».

6. Теперь перейдите в «Install ZIP from SD-card».

7. Здесь нужно выбрать ZIP-архив с обновлениями.

8. Подтвердите выбор нажав на пункт «Yes – install /sdcard/update.zip».

9. Дождитесь завершения обновлений.

Обновить устройство на операционной системе Android можно несколькими способами. Для неопытных пользователей рекомендуется использовать только первый способ, так как таким образом вы вряд ли сможете причинить серьёзный вред прошивке девайса.

Источник

Модификация стоковых прошивок для Android. Часть 1

Несколько лет назад, когда я впервые познакомился с Android, я услышал от своего коллеги по работе, что Android предусматривает возможность установки модифицированных или самодельных прошивок. Признаться, тогда я был далек от этого. И даже пол года назад меня едва интересовали подобные вещи. Глубоко в душе, я был уверен: то, что делает производитель, уже предназначено для нормального использования.

Каково же было мое разочарование, когда я приобрел телефон из поднебесной, где заводскими настройками было запрещено использование Google, Skype, Facebook и других приложений. В принципе, на некоторые вещи можно было закрыть глаза, но когда мой телефон не подразумевал использование учетной записи Google — я взял с себя обещания обязательно разобраться во что бы мне это не стало.

Прошло пол года и мои кастомные прошивки с успехом используются по всему миру.

В данной серии статей пойдет речь о том, как делать reverse программирование для Android, реализовывать патчи, твики и моды.

Преамбула

И так! Давайте сперва определимся с понятиями, которые будут использоваться в данной статье. Ваше привычное понимание, при этом, может сильно отличаться.

Читайте также:  Внешний накопитель памяти для андроида

Патч — изменение или замена существующего программного кода с целью модификации алгоритма программы.
Мод — как правило, добавление дополнительного функционала в существующий программный код без изменения алгоритма.
Твик — усовершенствование функционала программы с целью облегчения доступа к параметрам системы.

Также хочу заметить, что все примеры будет взяты для телефона HTC, но это не значит, что данная информация не может быть использована на других телефонах.

Обращаю ваше внимание, что я, как автор, не несу ответственности за возможную потерю данных на вашем телефоне в результате использования информации ниже.

Подготовка среды

Обойдусь без подробных инструкций как пользоваться тем или иным программным обеспечением. Если вам интересна данная статья и вы дочитали до этих строк, то я надеюсь, что вы уже опытный пользователь и имеете опыт использования, ну или хотя бы экспериментирования в данной области. Инструкций, статей и результатов тестирования полно в открытом доступе, впрочем, как и на Хабре. Также обойдусь без описания некоторых терминов, иначе статья получится очень большой и нудной. Будем писать только по делу. Уверен, что среда у вас уже давно стоит. Если нет, то предлагаю скачать и установить.

1. Android SDK. Это среда разработки приложений для Андроид. Для того чтобы делать модификации, нам обязательно придется проверять наш программный код. Среда разработки самое лучшее, что мы можем использовать.
2. Android Kitchen. Данная утилита позволит вам работать с образами системных партиций официальной ну или неофициальной прошивки.
3. JD-GUI. Декомпилятор программного кода языка Java. Сразу отмечу, что это самый лучший декомпилятор в плане удобства использования.
4. DJ Java Decompiler. Еще один декомпилятор, или дизассемблер, как некоторые любят называть, программного кода языка Java. Не удобен в плане использования, но разбирает код, который иногда не понимает JD-GUI.
5. smali. Еще один дизассемблер, но уже dalvik кода. smali нужен для дизассемблирования, а backsmali ассемблирования кода.
6. dex2jar. Утилита для конвертации исполняемых файлов Dalvik кода.

Преобразование прошивки

Разумеется, прошивка, которая стоит у вас на телефон от производителя оптимизирована с целью сокращения энергопотребления. Для того чтобы прошивку можно было изменять, ее необходимо преобразовать в формат, позволяющий изменять код. Для этого используется Android Kitchen. Можно конечно и руками, как я и делал раньше, пока не нашел эту самую «кухню». Как вытаскивать системную область из телефона, устанавливать среду, делать DEODEX прошивки, вы можете прочитать в интернете. Если вам уже ничего не понятно, я думаю стоит повременить со статьей, пока вы не наберете достаточно опыта.

После того, как прошивка из оптимизированного вида (ODEX — оптимизированный dalvik исполняемый код, если мне не изменяет память) стала DEODEX (то бишь НЕ оптимизированной), все исполняемые файлы готовы к модификации.

Непосредственно модификации

Создание патчей

Как я уже и рассказывал, мой телефон изначально имел запрет на использование Google. Ну хоть ты тресни, на Playstore не зайти, учетную запись не настроить, телефонная книга толком не синхронизируется. Зачем нужен такой Android? Долго копаясь в логах (logcat) самого устройства, я нашел записи, которые говорили о том, что использование Google запрещено. Самое не удобное в Android, вы видите лог, но не знаете какое системное приложение его производит. Чтобы отыскать от куда ноги растут, мне пришлось распотрошить все системные приложения до дизассемблированного Java кода. Это заняло достаточно времени, но я до сих пор пользуюсь проделанной работой при анализе и поиске нужного кода. Этапы получения подобного инструментария следующие:
1. Сделать DEODEX всей прошивки
2. Вашу новую DEODEX прошивку надо будет собрать и прошить на телефон. Как это делается — тема другой статьи.
3. Из каждого файла, находящегося в /system/framework вытащить файл classes.dex и переконвертировать в JAR посредством dex2jar.
4. Каждый полученный JAR открыть в JD-GUI и пере-сохранить в исходный код
5. Распаковать исходный код из архива.

В итоге у меня получилось столько папок, сколько было JAR файлов в /system/framework, и каждая папка имела структуру исходных кодов Java.
Путем несложных манипуляций, я быстро отыскал то место, которое генерировало записи в logcat.

Не будем рассматривать всю логику запрета, так как для каждого случая это отдельная история. Мне пришлось потратить пару часов, прежде чем я нашел где производятся проверки, построить в голове блок схему алгоритма и понять куда надо лезть, чтобы алгоритм чуть чуть «попортить».

Оказалось все просто. Есть подпрограмма, которая на основе заранее установленных констант, при обращении отвечала, относится ли телефон к Китаю или же нет.

Код находился в файле HTCExtension.jar, а класс, который содержал данную подпрограмму находился в \com\htc\util\contacts\BuildUtils$Customization.java

Распаковка и анализ оригинального файла

1. Сперва нам надо взять оригинальный DEODEX JAR файл, который отвечает за нужную нам часть кода. В нашем случае HTCExtension.jar.
2. Открыть любым архиватором и вытащить от туда classes.dex
3. С помощью конвертера dex2jar преобразовать его в JAR файл. Команда: dex2jar.bat classes.dex
4. Открыть полученный classes_dex2jar.jar файл в JD-GUI.
5. Да, чаще всего JD-GUI декомпилирует код не так как он выглядит в оригинале, оно и понятно, но читать вполне можно. В исходнике мы видим, что подпрограмма проверяет параметры проекта и языковой флаг прошивки. В нашем прискорбном случае возвращается значение TRUE.

Читайте также:  Улучшаем рабочий стол андроид

6. Чтобы сделать патч, нам надо дизассемблировать сам Dalvik код. Для этого используем baksmali. Удобнее всего создать отдельную папку и положить туда три файла вместе: HTCExtension.jar, smali.jar и baksmali.jar. Даем команду java -Xmx512m -jar baksmali.jar -a -d -o HTCExtension -x HTCExtension.jar

— это API вашей версии Android. Для JB — это 16
— папка, где находятся все фреймворки прошивки.

В моем случае это была команда
java -Xmx512m -jar baksmali.jar -a 16 -d S:\dev\Android\Android-Kitchen\WORKING_JB_15\system\framework -o HTCExtension -x HTCExtension.jar
7. В нашей вновь созданной папке появилась папка HTCExtension, а в ней наши файлы с Dalvik кодом.
8. Отыскиваем файл по пути \com\htc\util\contacts\BuildUtils$Customization.java и смотрим код:

9. Страшно, не правда ли? Ничего же не понятно. Но, это дело поправимое. Создав несколько своих патчей и набив тем самым руку, вы легко сможете модифицировать код без сторонних средств. В нашем случае, в этом коде
происходит присваивание переменной v0 значение 1, то есть TRUE. Далее идут всякие проверки, и если телефон не китайский, то значение переменной изменяется:

10. Самый простой способ спасти отца русской демократии, это изменить код на следующий:
, то есть поменять значение переменной с 1 на 0. То есть что бы ни было, всегда бы возвращалось значение FALSE и в JD-GUI код выглядел бы как
11. Да, метод ,будет работать. Но мы же не ищем легких путей — это раз. Во-вторых не совсем красиво. Хочется кода что-то вроде

12. А как нам получить Dalvik код данного исходного кода? Для новичков мы сделаем небольшой трюк.

Создание Dalvik кода

1. Открываем Android SDK.
2. Создаем новый проект, и в наш единственный тестовый класс пишем следующий код

3. Компилируем наш проект и затем берем собранное приложение из рабочей области.
4. Кладем собранное приложение в папку, где мы с вами потрошили JAR файл.
5. Даем команду
8. Все, код для патчинга готов.

Накатывание патча

1. Dalvik код замусорен маркерами, указывающими строку кода в оригинальном исходном файле. Это нужно при выводе ошибок, если таковые имеются в вашей программе. Без указаний строк код также прекрасно работает.
2. Удаляем строки с нумерацией строк, копируем и заменяем метод (подпрограмму) в нашем \com\htc\util\contacts\BuildUtils$Customization.java файле.

3. Сохраняем файл. Да, забыл сказать, редактор нужен нормальный, например Notepad++ или EditPlus. Кому какой нравится.

Компиляция и сборка патченного JAR файла

1. С помощью backsmali мы распотрошили наш JAR файл, а теперь его надо собрать обратно.
2. Даем команду java -Xmx512m -jar smali.jar -a 16 HTCExtension -o classes.dex
3. В нашей папочке появляется файлик classes.dex
4. Снова открываем HTCExtension.jar файл архиватором и заменяем в нем существующий classes.dex на наш только что созданный.
5. Все, наш HTCExtension.jar содержит модифицированный программный код.

Замена оригинального файла на патченный

Обычно, для рядовых пользователей создаются специальные скрипты, которые через recovery заменяются. Но нам такое не интересно. Во-первых долго и нудно, во-вторых мы же опытные пользователи и можем себе позволить некоторые тонкости.

1. Заменить текущий рабочий файл можно следующими командами, если у вас уже стоит DEODEX прошивка и имеется root доступ:

1-ая команда закидывает патченный файл на флешку
2-ая команда открывает shell
3-ая команда дает root доступ
4-ая команда монтирует систему в режим чтения/записи
5-ая команда делает резервную копию файла
6-ая команда перезаписывает существующий файл новым патченным.
7-ая команда настраивает разрешения
8-ая команда удаляет кэш
9-ая команда делает перезагрузку устройства.

2. Спасибо что дочитали до этого пункта, осталось немного.
3. После перезагрузки ваш новый патченный код вступит в силу.
4. Если код не работает или выскакивает ошибка, то путем не хитрых комбинаций можно вернуть назад резервную копию.

Эпилог

Да, кому-то показалось данная статья слишком специфичной, кому-то мало-понятной, а кому-то бесполезной. Я специально обошелся без углубленной детализации и иллюстраций как это все выглядит в живую и на практике. Во-первых, данный труд будет неблагодарный и только породить еще больше вопросов. Во-вторых, не хочу видеть армию пользователей на форумах, которые жалуются, что убили свой телефон.

К следующей статье я расскажу как делать Твики. Будет пример использования автоматической записи телефонных звонков родными средствами телефона. Спасибо за ваше внимание.

Источник

Оцените статью