AOKP
AOKP (аббревиатура от англ. Android Open Kang Project) — прекращённая[2] свободная прошивка-замена для смартфонов и планшетных компьютеров, основанная на мобильной операционной системе Android. Проект был начат как открытое программное обеспечение Романом Биргом на основе официальных выпусков AOSP от Google, с добавлением оригинального и стороннего кода, функций и различных средств управления[3][4][5]. Несмотря на то, что только часть пользователей AOKP сообщают о своём использовании прошивки, по данным на сентябрь 2013 года, она работала более чем на 3,5 миллионах устройств по всему миру[6][7].
Общие сведения
| AOKP | |
|---|---|
| Разработчик | Team Kang |
| Семейство ОС | Встраиваемая операционная система (Linux/Android) |
| Исходный код | свободный |
| Первый выпуск | Ice Cream Sandwich 4.0 (Maguro) |
| Последняя версия | |
| Менеджеры пакетов | Google Play, APK |
| Поддерживаемые языки | английский, каталонский, традиционный китайский, упрощённый китайский, нидерландский, финский, французский, немецкий, итальянский, японский, корейский, польский, португальский, русский, испанский, шведский, турецкий |
| Поддерживаемые платформы | ARM |
| Тип ядра | изменённое ядро Linux (монолитное) |
| Интерфейс | стандартный интерфейс Android |
| Лицензия | Apache License 2 (интерфейс Android), GPLv2 (ядро Linux) |
История названия
Возможности
AOKP позволяет пользователю изменять многие аспекты системы, в том числе внешнее оформление и функции, предлагая возможности, которые обычно недоступны в стандартной прошивке[9]:
- Управление LED: настраиваемый цвет и мигание светодиода уведомлений для различных приложений.
- Навигационное кольцо: назначение действий для кольца навигации для быстрого доступа к приложениям.
- Ribbon: использование жестов свайпов и создание настраиваемых ярлыков приложений и системных действий.
- Vibration patterns: создание индивидуальных вибро-шаблонов для уведомлений отдельных приложений или контактов.
- Встроенная поддержка тем: применение тем из Google Play или других источников для изменения внешнего вида интерфейса (также доступна поддержка Substratum).
- Кастомизация аппаратных и программных кнопок, включая управление треками/фонариком при выключенном экране, управление PIE и собственную навигацию Fling.
- Настройка элементов интерфейса, включая цвета и фон.
- Настройка панели состояния, включая оформление иконки батареи и индикатор активности сети.
- Кастомизация меню питания.
- Конфигурация уведомлений и быстрых настроек, например, контроль количества переключателей в заголовке быстрых настроек.
История версий
Сборки и релизы AOKP производились по принципу milestone (вехи) и ночные сборки:[10]
Milestone: наиболее стабильные билды, обычно публиковались раз в месяц. Однако последние годы milestone-релизы не выходят, команда AOKP перешла к выпуску исключительно ночных сборок для Nougat.
Nightly: автоматизированные сборки каждые 3 дня, включающие актуальный код проекта, но возможны ошибки.
Для уведомлений о новых выпусках доступно приложение AOKPush[11], использующее службу Google Cloud Messaging (GCM) для оперативной доставки уведомлений о выходе новых сборок, а также о тестовых выпусках и сообщениях от разработчиков. Благодаря интеграции с фреймворком Android, приложение не разряжает аккумулятор и не пробуждает устройство для опроса новых данных. Кроме того, некоторые устройства получали последние обновления Android именно благодаря прошивке AOKP[12].
| Год | Версия (Android) |
|---|---|
| 2011 | Ice Cream Sandwich (4.0.X) |
| 2012 | Jelly Bean (4.1.X) |
| 2013 | Jelly Bean MR1 (4.2.X) |
| 2013 | Jelly Bean (4.3.X) |
| 2014 | KitKat (4.4.X) |
| 2014 | Lollipop (5.0.X) |
| 2015 | Marshmallow (6.0.1) |
| 2016 | Nougat (7.0) |
| 2016 | Nougat (7.1.X) |
| 2017 | Oreo (8.0) |
| 2017 | Oreo (8.1) |
| 2020 | Pie (9.0) |
История и развитие прошивки
Вскоре после появления телефона HTC Dream («T-Mobile G1» в США) в сентябре 2008 года был найден способ получения привилегированного (root) доступа в системной среде Android на базе Linux[13]. Получение root-доступа вместе с открытым кодом Android позволило модифицировать и переустанавливать фирменную прошивку телефона.
В последующие годы Android-энтузиасты выпустили и распространили ряд модифицированных фирмварей для мобильных устройств. Среди них версию, поддерживаемую Романом Биргом (AOKP), быстро выбрали множество владельцев топовых Android-устройств. Проект стартовал в ноябре 2011 года и вскоре вокруг него сформировалось небольшое объединение разработчиков — Team Kang[14]. За несколько месяцев количество поддерживаемых устройств и реализованных функций быстро росло, что позволило AOKP стать одной из двух самых популярных пользовательских прошивок на Android (первой являлся CyanogenMod)[15].
Разработка AOKP ведётся с помощью распределённой системы контроля версий с официальными репозиториями на GitHub[16], как и у многих других проектов с открытым исходным кодом. Новые функции или исправления вносятся через систему ревью кода Google — Gerrit[17]. Изменения проходят тестирование сообществом, а окончательное решение о включении принимает команда разработчиков AOKP.
В начале 2020 года разработчики AOKP опубликовали блог-пост о синхронизации с репозиторием LineageOS: «Поддержка устройств теперь будет устроена иначе. Мы можем поддерживать любое устройство, которое получает сборки Lineage 16.0. Нужно только наличие сопровождающего, тестирующего сборки и поддерживающего ветку на форуме.»[18]
Поддерживаемые устройства
- Nexus 7 (2013) (WiFi)
- Nexus 7 (GSM)
- Nexus 7 (WiFi)
- Asus ZenFone 2 (ZE551ML)
- BQ
- Aquaris E5 4G
- Elephone
- P9000
- One (международный / AT&T / T-Mobile) — устаревшие сборки
- One (GSM / Sprint / Verizon)
- One XL (AT&T)
- Huawei Ascend Mate 2 4G
- Nexus 6P
- Vibe K5 (A6020)
- LG
- G PAD 8.3
- LG G2 (GSM — LTE / AT&T / Sprint / T-Mobile / Verizon)
- Nexus 4
- Nexus 5
- Nitro HD (AT&T)
- LG Optimus (LTE)
- Spectrum (LTE)
- Droid 3 (XT862)
- Droid 4 (XT894)
- Droid Bionic (XT875)
- Droid Razr (GSM / XT910 • VZW / XT912)
- Moto X (T-Mobile / Verizon Dev Version)
- Moto G4 Plus
- Find 5
- Oppo N1
- Galaxy Nexus (GSM / Sprint / Verizon)
- Galaxy Note 2 (GSM — LTE / AT&T / Sprint / T-Mobile / Verizon)
- Galaxy Note 3 LTE (Unified)
- Galaxy S2 (международный Exynos, международный Omap / T-Mobile)
- Galaxy S3 (международный / AT&T / T-Mobile / US Cellular / Verizon)
- Galaxy S3 LTE (Unified)
- Galaxy S4 (C Spire / Cricket / C Sprint / T-Mobile / US Cell / Verizon)
- Galaxy S4 LTE (Unified)
- Galaxy S4 Mini (GT-I9190 (3G) / GT-I9192 (DS) / GT-I9195 (LTE))
- Samsung Galaxy S5 (GSM / Sprint / US Cell / Vodafone)[19]
- Nexus 10
- Vibrant (T-Mobile)
- Xperia SP
- Xperia T
- Xperia Tablet Z (LTE / WiFi)
- Xperia V
- Xperia Z
- Xperia Z Ultra
- Xperia Z1
- Xperia Z1 Compact
- Xperia Z2
- Xperia ZL
- Xperia ZR
- OnePlus One
- OnePlus 2
- OnePlus 3
- OnePlus X
- YU
- Yuphoria
- Yureka / Yureka Plus
- Xiaomi Mi 3
- Xiaomi Mi 4
- Xiaomi Mi Note 2
- Redmi 1S
- Xiaomi Redmi Note 3
- Xiaomi Redmi Note 4
- Xiaomi Redmi 5 Plus