Как распаковать файл прошивки?

Загрузка исходных кодов

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

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

Исходные коды прошивки займут около 20-30 Гб на вашем жестком диске, поэтому в первую очередь следует убедиться в наличии достаточного свободного дискового пространства для их размещения! (Да, отнеситесь к этому серьезно!)

Исходные коды представлены в форме файлов с кодом в основном на языках C и C++, на основе которых впоследствии будут сформированы бинарные файлы, составляющие прошивку. Вам придется загрузить огромное количество таких файлов, причем после их компиляции вы получите файл прошивки объемом в 1 Гб, пригодный для записи на флеш-накопитель вашего устройства. Компиляция может занять очень много времени, но в случае ее успешного завершения вы, в любом случае, получите пригодную к использованию собственную Android-прошивку.

Если вы усвоили всю приведенную выше информацию, можете приступать к загрузке исходных кодов прошивки!

Сначала откройте ваш терминал и используйте команду cd для перехода в предназначенную для сборки прошивки директорию (я буду считать, что в вашем случае эта директория носит имя «android»).

Команда для инициализации репозитория:

repo init -u git://github.com/CyanogenMod/android.git -b cm-14.0

(Параметр -b позволяет выбрать ветвь, доступную в указанном репозитории; в данном случае выбрана ветвь cm-14.0).

Команда для загрузки исходных кодов:

repo sync -j#

(Вместо символа # должно использоваться числовое значение, соответствующее количеству одновременно активных потоков загрузки, которое следует выбирать в зависимости от качества сетевого соединения).

Теперь нужно набраться терпения и заняться каким-либо другим делом, ведь загрузка может занять очень много времени.

В данном случае я собирал прошивку CyanogenMod, но вы можете использовать репозиторий вашей любимой Android-прошивки.

Ссылки на репозитории наиболее известных Android-прошивок (на ресурсе GitHub):

  • CyanogenMod
  • VanirAOSP
  • LiquidSmooth
  • SlimRom
  • LineageOS

Данные прошивки отличаются:

  • Дизайном
  • Возможностями
  • Производительностью
  • Временем работы устройства от батареи
  • Ошибками (да, не стоит забывать о том, что это проекты от энтузиастов)

Инструменты

CyanogenMod исходный код содержит ClockworkMod Recovery , «в  изображение восстановления  » поддерживается Коуш (Koushik Dutta), который используется при установке CyanogenMod или другие операционные системы обновления . Восстановления изображения является специальным загрузочным режимом , который используется для восстановления устройства, отформатировать его или установить новую операционную систему , как CyanogenMod. ClockworkMod Recovery можно установить автоматически на корневые устройства, поддерживаемые CyanogenMod, с помощью таких приложений, как «ROM Manager», доступных в Google Play , или установить непосредственно с режимами загрузки для конкретных устройств. В большинстве случаев это режим Fastboot (Nexus, LG, HTC, Sony и т. Д.) Или Odin (Samsung), сопровождаемый разблокированным загрузчиком .

Преимущества CyanogenMod

«Циан» — это лучшая альтернатива для владельцев устаревших гаджетов. То есть тех гаджетов, которые уже нельзя обновить до актуальной версии Андроид. Владельцы таких девайсов, при перепрошивке своего устройства смогут ощутить все прелести последних версий Android. И это лишь одно из преимуществ установки CyanogenMod на свой смартфон или планшет.

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

Стильный интерфейс

Кроме Apollo в прошивку CyanogenMod входит очень удобный эквалайзер. С его помощью можно настроить воспроизведение музыки через наушники, внешние колонки или динамики устройства.

Плейер Apollo

Стандартная оболочка «Циан» постоянно дорабатывается и обновляется. Она имеет приятный внешний вид и большое количество функций. Но, ее главная задача — это возможность настройки лаунчера под себя. С чем она отлично справляется.

Раздел настроек

Стандартные приложения CyanogenMod:

  • Камера. Не самое функциональное стандартное приложение этой прошивки. Но, это и не требуется. Ведь для того, чтобы сделать красивый снимок достаточно всего одной кнопки.
  • Список контактов. Достаточно удобное приложение, которое мало отличается от штатного «Списка контактов» Андроид. Работает также без нареканий, плавно перелистывая записную книгу.
  • СМС-клиент. Входящие смс сортируются по контактам. Присутствует черный список для входящих СМС от нежелательных контактов.
  • Аудиоклиент. Встроенный проигрыватель Apollo не только имеет простое управление, стильный дизайн и адекватный эквалайзер, но и поддерживает практически все возможные аудиофайлы.
  • Файловый менеджер. Также достаточно удобное штатное приложение, с помощью которого можно получить доступ к содержимому корневых папок.
  • Калькулятор. В стандартный набор приложений этой кастомной прошивки входит очень современный калькулятор, который по функционалу обходит стандартное решение Android.

Возможности настроек CyanogenMod:

  • Перемещение часов в центр статус бара
  • Изменение способа отображения заряда батареи
  • Легкость редактирования иконок быстрого доступа
  • Улучшенный по сравнению со стандартным менеджер тем
  • Экономия заряда батареи за счет ограничения выхода смартфона в сеть
  • Ограничение доступа к персональным данным для некоторых приложений
  • Блокировку экрана можно осуществить с помощью графического ключа
  • Регулировка яркости экрана с помощью свайпа по строке состояния

Настройки графического ключа блокировки

С помощью CyanogenMod можно даже изменить частоту процессора устройства. Причем не только в момент изменения настроек, но и задав схему таких изменений на будущее. Для этого существует несколько схем такой смены:

  • Interactive. Частота процессора меняется при выходе смартфона из режима ожидания (включении экрана)
  • Ondemand. Возможность включения более энергоэффективного, но менее производительного режима работы процессора
  • Userspace. Позволяет пользователю задать частоту работы процессора для любой запущенной от рута программы
  • Powersave. Процессор работает на минимальной частоте. При этом существенно экономиться заряд батареи устройства
  • Perfomance. Процессор работает на максимальной частоте. Производительность устройства возрастает, но также возрастает и расход энергии

Выбор частоты процессора

Инструменты Android-разработчика

Началом массовой разработки под Android считается 2008 год. Тогда появился магазин приложений Android Market (в 2012 его переименовали в Google Play). Здесь разработчики выставляют свои приложения.

Сперва их создавали в среде Eclipse с установленным плагином ADT (Android Development Tools). Этот плагин страдал от брешей в безопасности. С конца 2016 года он больше не поддерживается.

Сегодня официальная среда разработки для Android — это Android Studio. Она появилась в 2013 году и здорово ускорила создание приложений.

Среда Android Studio

Это основной инструмент андроид-разработчика, бесплатный и совместимый со всеми операционными системами. Скачать Android Studio можно с официального сайта.

Среда позволяет разрабатывать приложения на любых компьютерах. Этим Google Android отличается от iOS (Apple хочет, чтобы разработчики покупали маки и кодили только на них).

C Android Studio разработчику даже не нужны собственные гаджеты на Android, ведь там есть быстрый многофункциональный эмулятор и шаблоны для многих устройств (смартфоны, планшеты, часы, смарт-приставки, телевизоры и так далее).

Полный список возможностей Android Studio с описанием каждой смотрите в официальном гайде.

Языки разработки

Под Android можно писать приложения почти на любом языке программирования: C/C++, Assembler, Fortran, Python, JavaScript. Однако есть языки, которые позволяют использовать все возможности мобильной операционной системы и получать моментальный доступ к новым функциям.

Это официально поддерживаемые языки. Для Android таковыми являются Java и Kotlin:

Java — традиционный язык разработки. На нём написано большинство Android-приложений, в том числе онлайн-банки. Это хорошо развитый язык с множеством библиотек, модулей и готовых решений.Кроме того, за языком стоит большое международное сообщество, и если у программиста возникает вопрос по Java, ему легче найти ответ.

Kotlin — молодой язык программирования, который разработала питерская компания JetBrains.Он полностью совместим с Java (джавишный код можно вызвать из Kotlin естественным способом, а котлиновский — использовать в Java без особых сложностей).При этом код на Kotlin крайне лаконичен:


Один и тот же код на Java и Kotlin

В 2019 Google объявила Kotlin приоритетным в андроид-разработке. Похоже, что произошло это из-за долгой судебной тяжбы с компанией Oracle — создателем Java. Oracle уже 10 лет пытается получить с Google несколько миллиардов за нарушение авторских прав. Суды ещё идут, но Google от греха подальше решила перейти на другой язык.

Kotlin удобнее пользоваться, он решает ряд проблем Java, и изучить его можно намного быстрее. А ещё он сразу входит в Android Studio. Так зачем нам учить Java, если уже есть Kotlin?!

Не всё так однозначно (пока что)

Начинающему разработчику важно изучать оба языка, но упор делать всё-таки на Java. Почему?

  1. Сегодня Kotlin ещё недостаёт готовых решений. Документация языка неполная, поэтому поиск конкретного ответа иногда занимает кучу времени. Чтобы быстрее решить возникшую проблему или даже просто вникнуть во все нюансы документации, нужно знать Java.
  2. Kotlin активно развивается, разработчики исправляют его недостатки, аудитория языка неуклонно растёт. Новые приложения, особенно небольшие, пишутся на Kotlin. Однако большинство прежних написаны на Java. Их нужно кому-то поддерживать. К тому же многие компании отдают предпочтение Java как языку более развитому и предсказуемому.
  3. На мобильной разработке свет клином не сошёлся. Такие языки программирования, как Java, C/C++, Swift, очень похожи между собой — и изучение Java позволит быстрее разобраться в других, а вот Kotlin — нет.

Деловая реакция

Долгое время производители смартфонов и планшетов очень отрицательно относились к разработке операционных систем третьими сторонами. Производители говорят о некорректной работе устройств, работающих под управлением неофициальной ОС, что приводит к аннулированию гарантии на пораженное устройство. Операторы также относятся к этому негативно, CyanogenMod иногда предлагает функции, доступные только в качестве опции для операторов (например, модем ). Таким образом, производители и операторы создают препятствия на пути пользователей, блокируя загрузчик и ограничивая доступ к полномочиям root на большинстве устройств.

Однако сообщество вокруг программного обеспечения росло и становилось все более и более популярным, что привело к созданию заявления Библиотеки Конгресса Соединенных Штатов Америки, разрешающего использование root на мобильных устройствах. поэтому производители и операторы изменили свою позицию в отношении CyanogenMod и других дистрибутивов, таких как HTC , Motorola , Samsung и Sony Ericsson, которые теперь занимаются разработкой операционных систем, таких как CyanogenMod.

В 2011 году многие пользователи устройств старого поколения обратились к CyanogenMod, чтобы обновить свои телефоны. Действительно, производители (например, HTC ), прекратив активно поддерживать свои старые линейки, выпустили загрузчики, позволяющие устанавливать альтернативные ОС . Samsung даже пожертвовал Galaxy S II команде CyanogenMod с просьбой установить CyanogenMod на их устройства.

Где скачать и как установить CyanogenMod

Проект CyanogenMod закрыт и развивается под новым названием LineageOS. Официальные сборки, располагаются на сайте проекта. Прошивки для CyanogenMod придется искать на файловых хранилищах в профильных темах ресурса XDA.

Установка прошивок выполняется через кастомные recovery – CWM или TWRP. Алгоритм действий смотрите в этой статье.

Перед установкой обратите внимание на вид прошивки:

  1. Stable – стабильная и наиболее отлаженная версия прошивки. Рекомендуется для ежедневного использования.
  2. Release candidate – предрелизная версия, кандидат в категорию стабильных прошивок. Оптимальный вариант, если нет стабильной сборки.
  3. Snapshot – средняя по стабильности сборка. Прошивка работает нормально, но имеются недоработки.
  4. Milestone – недоработанная прошивка. Сборка не желательна для регулярного использования.
  5. Nightly – ночные сборки. Регулярно обновляются ночью. Сборка с массой недоработок, некоторые функции не работают. Пользоваться можно, если стабильность не в приоритете.
  6. Expiriments – экспериментальные и не стабильные сборки. Для ежедневного использования не годятся.

Меняем анимацию загрузки

Анимация хранится в виде PNG-картинок, упакованных в архив /system/media/bootanimation.zip без сжатия. Внутри архива находятся:

  • desc.txt — файл, описывающий анимацию;
  • part0 — папка с файлами анимаций, которые воспроизводятся первыми;
  • part1 — папка с файлами анимаций, которые воспроизводятся вторыми;
  • .
  • part? — крайняя папка, изображения с которой воспроизводятся в конце.

Файл desc.txt может содержать нечто вроде

Назначение этих строк интуитивно понятно: 1920 × 1080 — разрешение картинки, 60 — число кадров в секунду. Part0 и part1 указывают на папки, из которых будет воспроизводиться анимация, и последовательность воспроизведения. Вообще, может быть как одна часть, так и несколько (три и больше).

Изображения, находящиеся в папках part, пронумерованы пятью цифрами в порядке воспроизведения: 00000.png , 00001.png , 00002.png . Эти изображения можно поменять на свои, тем самым создав оригинальную анимацию. А можно просто удалить файл bootanimation.zip . Тогда девайс будет показывать анимацию из стандартного Android. Или воспользоваться уже готовой коллекцией анимаций на 4PDA.

Четыре части в bootanimation.zip для LineageOS

Как всё это изучают

Кто-то изучает сам. Есть много книг, мануалов, видеоуроков, форумов, лучшие из которых, вроде введения в Android, как раз на английском языке.

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

Ценители более системного подхода предпочитают онлайн-курсы (например, на edx.org, Coursera.org, Udacity.org). Но и здесь те же проблемы: выбрать подходящий непросто, качество материала и его полнота очень разнятся, гарантий и обратной связи нет, курсов на русском совсем мало. Да и с бесплатностью всё не так однозначно — эти платформы постепенно превращаются в коммерческие, отступая от первоначальной идеи.

Конечно, есть и исключения — образцы доступного качества вроде легендарного MIT. Но к сожалению, у него нет курса для Android-разработчиков.

Такой курс есть у Skillbox. Стартовать с опытными наставниками и постоянной обратной связью гораздо выгоднее. Наши студенты изучают всё на практике, общаются с менторами, создают полноценный проект для портфолио и быстро входят в профессию.

Карьерный рост и перспективы профессии

В Android-разработке, как и везде в IT, новичок начинает с позиции Junior, затем прокачивает скиллы и становится Middle. Через несколько лет может претендовать на позицию Senior, а наиболее успешные дорастают до тимлидов.

С 2016 года в СМИ ходили слухи, что Google скоро заменит Android новой операционной системой Fuchsia — и Android-разработчики останутся не у дел. Всё прояснилось в 2019 году на конференции Google I/O: руководитель направления Android Хироши Локхаймер заверил, что компания не собирается отказываться от Android для смартфонов. Fuchsia будут применять в умных домах, носимой электронике и устройствах дополненной реальности.

История версий

CyanogenMod основная версия Версия Android Последний или основной выпуск Рекомендуемая дата выпуска сборки Заметные изменения
3 Android 1.5 (кекс) 3.6.8.1 1 июля 2009 г. 3.6.8 и новее на базе Android 1.5r3
3.9.3 22 июля 2009 г. 3.9.3 и более поздних версий поддерживает
FLAC
4 Android 1.5 / 1.6 (кекс / пончик) 4.1.4 30 августа 2009 г. 4.1.4 и новее на базе Android 1.6 (Donut); QuickOffice удален из 4.1.4 и новее; Проприетарное программное обеспечение Google выделено из-за прекращения использования и прекращения использования начиная с 4.1.99
4.2.15.1 24 октября 2009 г. Начиная с версии 4.2.3 имеется поддержка USB- модема; 4.2.6 и новее на базе Android 1.6r2; 4.2.11 и далее добавила щепотку зум для браузера, щепотка зума и салфеток для галереи.
5 Android 2.0 / 2.1 (Эклер) 5.0.8 19 июля 2010 г. Добавлен ADW.Launcher в качестве средства запуска по умолчанию.
6 Android 2.2 (Froyo) 6.0.0 28 августа 2010 г. Введена двойная камера и специальная поддержка Wi-Fi , а также JIT- компилятор для повышения производительности.
6.1.3 6 декабря 2010 г. 6.1.0 и более поздних версий на базе Android 2.2.1.
7 Android 2.3 (имбирный пряник) 7.0.3 10 апреля 2011 г. 7.0.0 и новее на базе Android 2.3.3
7.1.0 10 октября 2011 г. На базе Android 2.3.7
7.2.0 16 июня 2012 г. Новые устройства, обновленные переводы, интеллектуальный телефонный номеронабиратель, возможность контролировать тактильную обратную связь в тихие часы, обновления экрана блокировки, резервное копирование анимации ICS, возможность настройки значка в строке состояния батареи, множество исправлений ошибок
8 Android 3.x (сотовый) N / A N / A CyanogenMod 8 так и не был выпущен из-за того, что Google не выпустил исходный код для Android 3.0 Honeycomb.
9 Android 4.0 (сэндвич с мороженым) 9.1 29 августа 2012 г. Повышенная безопасность: по умолчанию отключено использование root. Добавлена ​​поддержка SimplyTapp. Представлен собственный лаунчер Cyanogen, Trebuchet .
10 Android 4.1 (Jelly Bean) 10.0.0 13 ноября 2012 г. Расширяемый режим рабочего стола. Встроенный файловый менеджер с поддержкой root.
Android 4.2 (Jelly Bean) 10.1.3 24 июня 2013 г.
Android 4.3 (Jelly Bean) 10.2.1 31 января 2014 г. Телефон: Черный список -Функция добавлена.
11 Android 4.4 (KitKat) 11.0 XNG3C 31 августа 2015 г. WhisperPush : интеграция протокола сквозного шифрования TextSecure (теперь Signal ) в качестве дополнительной функции. Включена отправка зашифрованных мгновенных сообщений другим пользователям CM и Signal. Эта функция была прекращена в феврале 2016 года.

CyanogenMod ThemeEngine : новый мощный движок тем, который позволяет пользователю применять и смешивать пользовательские темы, которые могут редактировать файл ресурсов.

12 Android 5.0 (леденец) 12.0 YNG4N 1 сентября 2015 г. LiveDisplay : расширенный инструмент управления дисплеем с такими функциями, как цвет, гамма, насыщенность и калибровка температуры

Обновления движка тем : теперь позволяет разделять темы для пакетов (используется в CyanogenMod для NavigationBar и StatusBar, в CyanogenOS для AppThemer, что позволяет применять разные темы для каждого приложения)
Обновление пользовательского интерфейса : все приложения были обновлены до темы материала
AudioFX и Eleven : два новых приложения, связанных со звуком (AudioFX заменяет DSPManager, и Eleven заменяет Music)

Android 5.1 (леденец) 12.1 YOG7DAO 27 января 2016 г. CyanogenPlatform SDK : позволяет сторонним разработчикам добавлять пользовательские API для интеграции своего приложения с CyanogenMod.
13 Android 6.0 (Зефир) 13,0 ЗНХ5ЯО 20 декабря 2016 г. Wi-Fi-модем, профили, режим « Не беспокоить » / приоритетный режим, защита конфиденциальности / использование данных приложений, поддержка батареи устройств Bluetooth, повторное использование средства выбора обоев на экране блокировки, погоды на заблокированном экране и поддержки нового плагина погоды, поддержка размытия экрана блокировки и возможность отключения эффект, поддержка Live Lockscreen, новые аппаратные улучшения и API LiveDisplay, Snap Camera, браузер Gello, улучшенные переводы, поддержка Cyanogen Apps, дополнительные API CM SDK, исправления безопасности
14 Android 7.0 (Nougat) N / A Пропущено, так как Google вскоре выпустил 7.1 до того, как была завершена разработка CM 14.0.
Android 7.1 (Nougat) 14.1 9 ноября 2016 г. CM14.1 считался «незавершенным» и в нем отсутствовали некоторые характерные особенности CyanogenMod. Журнал изменений неизвестен. Так и не получил стабильной сборки. После того, как CyanogenMod был позже прекращен, в декабре 2016 года его сменила LineageOS .

Файлы контейнеры (матрёшки)

Многие файлы представляют собой объединения нескольких файлов. К примеру, файлы офисных документов .docx и .odt. Вы можете заменить расширение таких файлов на .zip, открыть любым архиватором и убедиться, что на самом деле это просто контейнеры, содержащие в себе множество файлов. Например, если вы вставили картинку в документ Word, то чтобы извлечь эту картинку, необязательно открывать файл в офисном редакторе — можно поменять расширение, распаковать архив и из него забрать свою картинку обратно. Практически все прошивки (для роутеров, IP камер, телефонов) это контейнеры. ISO образы и образы файловых систем тоже контейнеры. Архивы, как можно догадаться, также содержат в себе сразу несколько файлов.

Cyanogen OS

Коммерческие операционные системы Cyanogen, которые были предустановлены на некоторых устройствах ( OnePlus One , YU Yureka, YU Yuphoria, Andromax Q, BQ Aquaris X5, Lenovo ZUK Z1 , Wileyfox Swift, Wileyfox Storm, Alcatel ONETOUCH POP Mirage ) на основе исходного кода CyanogenMod. код.

Cyanogen OS часто распространяется с дополнительными проприетарными приложениями, такими как экосистема Google Play, и набором программного обеспечения, уникального для Cyanogen OS, известного как C-Apps. CyanogenMod не включает ни того, ни другого по умолчанию, но при желании пользователи могут получить их отдельно.

Первоначально отличавшаяся суффиксом -S (CyanogenMod 11S) , в версии 12 Cyanogen переименовала пользовательское предложение в Cyanogen OS . Cyanogen начала продвигать Cyanogen OS 13 на базе Android 6.0.1 на телефонах OnePlus One OTA 9 апреля 2016 года, поэтапно под кодовым названием ZNH0EAS26M. CyanogenMod можно установить на устройства Cyanogen OS.

Различия между CyanogenMod и Cyanogen OS

Имя Стоковая или подменная прошивка? По материалам: Требуется предустановленная или ручная установка? Рут-доступ (суперпользователь)? Разработчики:
Cyanogen OS На некоторых смартфонах предустановлена ​​стоковая прошивка. Проект с открытым исходным кодом Android. Поставляется предустановленной на некоторых устройствах. Нет Циан
CyanogenMod Замена прошивки для устройств с предустановленным Android. Требуется ручная установка да Cyanogen и сообщество CyanogenMod

Собственный набор ПО

Каталог /system/app содержит все предустановленное в прошивку ПО. Удаляя и добавляя пакеты в этот каталог, мы можем изменить набор приложений, доступных «из коробки». Например, ни для кого не секрет, что стандартный ланчер Android (да и ADWLauncher в CyanogenMod) тормозит и имеет многочисленные недостатки. ОK, заменим его на LauncherPro:

И это все. Не надо ничего устанавливать, не надо нигде ковыряться, просто закидываем нужное приложение в каталог — и готово. Даже имя не имеет значения, Android сам найдет нужное приложение и установит его в качестве домашнего экрана. Таким же образом можно поместить в прошивку любую другую программу или удалить ее оттуда.

Полезно поместить в прошивку одно из приложений для поиска утерянного смартфона (например, prey), тогда даже в случае сброса до заводских настроек оно останется в ОС и будет работать. Также можно заменить некоторое системное ПО, например добавить Dialer One вместо стандартного Phone.apk или Go SMS вместо sms.apk.

Как насчет системных Linux-приложений, например ssh-сервера или mc? Здесь тоже все просто. Собрать софтину для Android и процессора ARM можно с помощью комплекта NDK от Google, но большинство нужных приложений уже собрано до нас. Например, мы хотим предустановить mc в свою прошивку. Идем на xda-developers и выполняем поиск по запросу Midnight Commander. На первой же странице находим apk-пакет с установщиком и распаковываем его с помощью все того же unzip:

Видим в списке распакованных файлов assets/kits/mc-4.7.5.4-arm.tar.jet. Это архив tar.gz, который распаковывается в корень системы после установки apk-пакета (а точнее, после установки apk, запуска приложения и нажатия кнопки Install). Мы можем сразу распаковать его в нашу прошивку и получить предустановленный mc:

Теперь для запуска файлового менеджера на устройстве достаточно открыть терминал и набрать mc. Другие приложения могут распространяться в zip-архивах для прошивки с помощью ClockworkMod Recovery. Поместить их в свой мод еще проще, для этого достаточно перейти в корень прошивки (в данном случае ~/rom) и распаковать архив с помощью unzip.

Стандартный build.prop для Motorola Defy

Помимо всего этого, многие пользователи также рекомендуют применять следующие комбинации флагов:

  1. Уменьшение времени отклика сенсорного экрана:

  2. Увеличение времени жизни батареи:

  3. Твики 3G-модуля:

  4. Улучшение производительности сети:

Все эти строки необходимо просто поместить в файл system/build.prop и сохранить.

Как легко распаковать и перепаковать файлы boot и ramdisk

Учитывая, что модификация прошивки такая же старая, как и сама ОС Android, попасть в игру для новичков может быть довольно сложно. Например, для прошивки определенных пользовательских ПЗУ требуется несколько шагов, таких как извлечение официального загрузочного образа и его прошивка на устройстве перед окончательным завершением процесса и прошивка файлов пользовательских ПЗУ вместе с ним.

Хотя в некоторые руководства вы найдете в Интернете включенные файлы boot.img, в других случаях вам может потребоваться самостоятельно изменить загрузочный образ, а затем переупаковать его. Поскольку операционная система Android для мобильных телефонов является производной от Linux, единственный способ сделать это — использовать платформу на основе Linux или эмулировать ее на вашем ПК с Windows.

Скрипты для распаковки и перепаковки файла boot.img

Пользователь XDA CNexus просеянных через Интернет, чтобы найти и составить список инструментов для распаковки и переупаковки файла образа загрузки, все из которых можно загрузить, используя ссылку, приведенную ниже.

Команды, которые вы должны знать

  1. boot_info Файл, включенный в пакет, позволяет вам получить базовый адрес и адрес виртуального диска файла boot.img, который вам позже понадобится для повторной упаковки.
  2. split_boot (split_bootimg.pl) помогает извлечь ramdisk и zImage из файла boot.img в отдельную папку.
  3. unpack_ramdisk позволяет распаковать файл ramdisk с помощью следующей команды:Использование: unpack_ramdisk
  4. repack_ramdisk функция позволит вам перепаковать файл ramdisk из заданного каталога, используя следующую команду:Использование: repack_ramdisk
  5. mkbootimg Команда поможет вам создать новый файл boot.img из имеющихся у вас файлов ramdisk и zImage (полезно для создания измененных файлов boot.img).
  6. umkbootimg делает прямо противоположное и разделяет ядро ​​и загрузочный образ.
  7. распаковать просто распакует файл boot.img в один каталог, а виртуальный диск в отдельный каталог для удобства.

Совместимость с Windows: что нужно знать

  1. Если у вас нет запущенной операционной системы Linux, вы можете эмулировать ее на своем ПК с Windows, используя это официальное руководство.
  2. Инструмент был протестирован для работы с Debian, но не подтвержден для работы с Cygwin.
  3. Все сценарии в файле .ZIP должны быть сохранены в папке на пути к системе Linux, в которой вы работаете, чтобы они могли быть обнаружены (пример:

Удаляем и добавляем приложения

Все предустановленные программы можно найти в двух папках:

Друг от друга они отличаются привилегиями доступа. Если программы из app имеют такие же полномочия, как сторонние программы (например, установленные из Play Store), то приложения из priv-app могут использовать привилегированные API (права privileged). Подробнее об этом можно узнать из нашей статьи.

Для предустановки приложения в прошивку просто кинь ее APK-файл в /system/app/ . Можно, конечно, создать отдельную папку, но в нашем случае в этом нет смысла, потому что папка служит для хранения библиотек и odex-файлов, которых у нас попросту нет. Для удаления просто удали папку с ним.

Можно пойти дальше и поменять стоковые приложения на аналоги. К примеру, для замены календаря удаляем папку Calendar и копируем в /system/app наш любимый com.rpagyc.simplecalendar.apk . А можно и не копировать. Тогда прошивка будет без календаря.

Главное, помни: стоковые программы могут быть связаны между собой. Поэтому удаление одной проги вполне может привести к полной неработоспособности другой (к примеру, CalendarProvider и Calendar: удалив первый, ты сделаешь неработоспособным не только стоковый, но и любой другой календарь). К счастью, в чистых AOSP-прошивках взаимосвязей не так много.

Основные правила работы.

2.1.Для начала работы необходимо запустить файл menu.bat, при этом запустится меню средства.

2.2.Образы, предназначенные для распаковки, необходимо положить в папку _In средства. Имена входных файлов ОБЯЗАТЕЛЬНО должны содержать ключевые слова и могут иметь названия следующего вида:

  •  *boot*.img;
  • *recovery*.img;
  •   *kernel*.img;
  •   *system*.img.

2.3.При первом запуске выполните инициализацию средства. При инициализации средства ВСЕ файлы, расположенные в папке _In, будут скопированы в рабочую входную папку Unpack/Firmware/Image. Это сделано для того, чтобы сохранить исходные файлы.

2.4.После разборки образа его содержимое будет помещено в папку Unpack, в которой будет создана следующая структура папок:

В папке cfg/ будут находиться настройки образа, в папке kernel Вы найдете ядро, т.е. бинарный файл zImage, а в папке ramdisk будет все остальное. Для выполнения сборки образа его составные части, т.е. ramdisk, ядро, а, возможно и настройки, поместите в соответствующие папки в Unpack. Созданный образ будет находиться в выходной папке Pack.

Как открыть файл с расширением BIN

Формат файлов BIN – особенный. В отличие от других, он способен содержать в себе самые разнообразные данные. Давайте разберемся, что может находиться в БИН-файлах, и рассмотрим способы их открытия.

  1. Что представляет собой формат BIN
  2. Программы для открытия BIN файлов
  3. UltraISO
  4. Daemon Tools Lite
  5. Power ISO
  6. Другие виды бинарных файлов
  7. Исполняемый двоичный файл
  8. Исполняемый файл Unix
  9. Файл прошивки маршрутизатора
  10. Архив Macbinary II
  11. Файл обновления конфигураций устройств BlackBerry
  12. Файл игр приставки Nintendo DS
  13. Файл игры Atari
  14. Файл данных Nintendo Wii
  15. Образ игры Sega Genesis
  16. BIOSPlayStation
  17. Бинарный видео- или аудиофайл

Выводы

Android — гибкая платформа, и в этой статье описаны далеко не все возможности по ее модификации. Более глубокая модификация может включать в себя замещение ядра, изменение экрана блокировки и стандартных приложений, активацию таких возможностей, как автоматическая установка приложений на карту памяти, внедрение механизма загрузочных скриптов (/etc/init.d), и многое другое. Обо всем этом мы поговорим в следующих статьях.

  • https://pikabu.ru/story/portirovanie_miui_proshivok_na_mtk_smartfonyi_na_primere_mt6582_5141484
  • https://trashbox.ru/topics/36871/portirovanie-proshivok-s-utrojstva-na-ustrojstvo-s-processorom-mt657x
  • https://protabletpc.ru/advice/kak-portirovat-proshivki-na-android.html
  • http://v-androide.com/instruktsii/obsluzhivanie/portirovat-proshivku.html
  • https://xakep.ru/2012/10/07/hand-maid-android/
Рейтинг
( Пока оценок нет )
Понравилась статья? Поделиться с друзьями:
Все про сервера
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: