+7 (911) 199-29-48

Разработка мобильных и веб-приложений
 Более 50 проектов в 10 странах, 8 лет на рынке
  Под ключ: бизнес-анализ, дизайн, продвижение
   Наши клиенты - и стартапы, и корпорации
    Воплощать ваши идеи в жизнь - наша работа!

Кастомная прошивка Android

создание кастомной прошивки Android

Операционная система Android разрабатывалась своими создателями, а впоследствии компанией Google, как система с открытым кодом. Основой ОС Android является Linux, а исходные коды самой операционной системы находятся на веб-сайте Android Open Source Project (AOSP). Поэтому теоретически, скачав код операционной системы Android с этого сайта и скомпилировав его, любой человек может получить кастомную прошивку Android.

Зачем это нужно?

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

Попробуйте попросить разработчиков Android приложений

  • установить свою анимацию на загрузку телефона;
  • запустить Android в "однозадачном" режиме с запретом выхода в операционную систему;
  • сделать красивый переключатель между английским и русским языком;
  • добавить функцию автоматического обновления приложения в фоновом режиме;
  • отключить ненужные системные приложения;
  • ограничить возможность установки новых приложений на телефон;
  • запретить удалять приложения, необходимые для работы;
  • изменить поведение устройства при подключении питания (запуск при подключении питания, как в iOS);
  • разграничить права пользования телефоном (пользователь, администратор);
  • установить пароль на доступ к телефону;
  • ограничить функции звонков (в том числе разрешение звонков только внутри страны или на определенные номера);
  • ограничить выход в интернет;
  • ограничить отправку сообщений (в том числе на короткие номера);
  • блокировать доступ к дисковому накопителю (либо обеспечить доступ только по паролю).

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

Как все начиналось

На ранних стадиях своего развития, операционная система Android была далека от совершенства, и это стимулировало отдельных энтузиастов создавать свои версии операционной системы. Целью являлась установка новой, официально еще не принятой, версии ОС Android на свой телефон, а также оптимизация или исправление существующих проблем в операционной системе. С течением времени, Android совершенствовался, а наиболее удачные сборки кастомных прошивок развились в отдельные большие проекты. Прежде всего, это проект Lineage OS (ранее широко известный как Cyanogenmod).

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

Кастомная прошивка сейчас

Начиная с Android 4, подпись системными ключами стала необязательным условием выдачи приложению системных прав. В то же время, количество моделей Android-устройств в мире настолько возросло, что производители кастомных прошивок перестали успевать включать поддержку новых моделей устройств, что сделало сборки типа Cyanogenmod малопригодными в реальной жизни. Таким образом, в наши дни, для обхода ограничений операционной системы, достаточно разработать приложение, выполняющее требуемые задачи, и включить его в список "привилегированных приложений" (установка с помощью утилиты прошивки в специализированный раздел памяти Android).

Выбор решения - кастомная прошивка или лаунчер

Лаунчер или кастомная прошивка

ОС Android предоставляет возможность замены штатной оболочки (лаунчера) пользовательским приложением. Разработка Android лаунчера позволяет решить такие задачи, как запуск Android в однозадачном режиме (режиме киоска), а также ограничить число приложений, запускаемых пользователем ("детский режим"). Ограничение прав пользователя на установку и запуск приложений – частое требование при подготовке устройств, предназначенных для корпоративного использования. Лаунчер может помочь решить также такие актуальные задачи, как разграничение прав пользования устройством (администратор, обычный пользователь, иные роли), и защита паролем.

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

Процесс создания кастомной прошивки Android

Процесс разработки обновления прошивки

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

  • подбор утилит для прошивки и создания резервных копий (Samsung ODIN, MTK SP Flash Tool, и др.)
  • установка root и custom recovery на устройство;
  • получение образа системы и схемы разделов (partition table);
  • собственно модификация или разработка приложений, обладающих системными привилегиями, и удовлетворяющих требованиям заказчика;
  • тестирование приложений с помощью записи их в системную область Android;
  • подготовка кастомного обновления прошивки (OTA Update);
  • подготовка руководства по установке обновления на устройства заказчика.

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

Примеры задач, решенных с помощью создания кастомной прошивки

Корпоративное устройство – мобильный офис

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

Экран мониторинга аккуратного вождения

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

Киоск с кастомной прошивкой для тренажера

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

Мобильный аудиогид CitySurf

На основе мобильных телефонов LG Optimus One и LG Optimus Sol были созданы специализированные устройства, определяющие местоположение и рассказывающие пользователю о близлежащих достопримечательностях. В телефонах были модифицированы загрузочный логотип и анимация, отключены функции мобильной связи, изменен интерфейс взаимодействия с компьютером через USB, ускорена загрузка и выключение. Кастомная прошивка была подготовлена путем доработки сборки Android с открытым кодом "Cyanogenmod".

Инспекции предприятий компании Lafarge

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

Имиджевый смартфон для конференции

Мобильный телефон может быть превращен в имиджевое устройство для конференции, в котором после загрузки и показа логотипа конференции запускается специализированное приложение, а также ограничена мобильная связь (только звонки внутри страны) и доступ через USB-интерфейс.

Нашим решениям доверяют

Новости

10.04.2017

Предлагаем консультации и разработку ПО для стартапов в сфере Интернета вещей.

17.03.2017

При заказе Персонального СМС Сервера - бесплатное подключение к базе данных, сайту или Excel-таблице! 

02.03.2017

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

27.01.2017

В числе наших сервисов - разработка мобильных приложений под iOS: расчет цены и сроков, дизайн пользовательского интерфейса, кодирование, тестирование, техническая поддержка и продвижение. 

23.09.2016

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