Всем привет! Сегодня я расскажу о кастомной прошивке CyanogenMod 12 и ее особенностях на нынешнем этапе развития. В материале будет много авторской субъективщины и скриншотов (около 70-ти). Для начала – исходные данные.
Прошивка (ROM): CyanogenMod 12
Статус: nightly-сборка
Надежность: нестабильна
Базируется на: Android 5.0.2
Устройство: Sony Xperia Z1 Compact
Кодовое название устройства: amami
Блоки обзора:
- Установка и запуск
- Внешний вид
- Стандартные приложения
- Меню настроек
- Секреты новой файловой системы
- Выводы
Содержание
Установка и запуск
На лирический вопрос – «А нафига вообще эти все перепрошивки?” – могу предложить целых 3 обоснованных варианта ответа.
1) У %username огромное шило в заднице и ему больше нечего делать кроме как прошивать свой телефон (поверьте моему опыту, это интересно и надоедает только спустя несколько лет, а то и никогда).
2) Производитель вашего смартфона – ленивый мудак, который с большой горы ложил на то, что выпущенная им стоковая прошивка безбожно тормозит и имеет кучу багов. А вы ведь не хотите с этим мириться, не так ли?
3) Новая жизнь старому смартфону. Львиную долю древних и малополезных устройств можно оживить при помощи современной версии ОС. HTC Leo, HTC HD2 и даже Nexus первого поколения – яркие тому доказательства. Сообщества разработчиков и энтузиастов оперативно пилят для них свеженькие неофициальные сборки.
Процедура установки проста как 2 пальца и состоит из следующих шагов:
- Разблокировать загрузчик (для устройств HTC, Sony и серии Nexus)
- Любым способом установить recovery по вкусу (CWM, TWRP)
- Скачать непосредственно прошивку под вашего зверька и пакет приложений от Google, сбросить это добро в память телефона
- В рекавери сделать необходимые wipe data/factory reset; wipe dalvik cache;
- Прошить оба скачанных архива и тыкнуть кнопку «Reboot”.
На этом ваши потуги окончены, на экране весело подмигивает довольная морда логотипа Cyanogenmod.
Для тех, кто хочет попробовать прошивку на своем смартфоне впервые, дополнительно рекомендуем прочитать статью на эту тему: Установка и обновление CyanogenMod.
Заранее предупреждаю, скриншоты будут на английском языке, так как автор уже успел кое-что поломать в прошивке, а восстанавливать угробленный сектор было лень.
Внешний вид
Первые впечатления о прошивке создают экран блокировки и лаунчер. Первый – довольно скудный по функциональным возможностям. Умеет показывать уведомления в виде прямоугольников с текстом, запускать звонилку и камеру, сообщать сколько осталось времени до окончания процесса зарядки. Последнее преподносили как невероятную инновацию, но как по мне – каждый из вас и так примерно представляет, сколько нужно времени вашему корыту для полной зарядки.
Лаунчер Trebuchet – фирменная наработка Cyanogen, имеет открытый исходный код (если мне не изменяет память) и постоянно совершенствуется разработчиками. Выглядит свежо и приятно, функционально многократно превосходит лысую поделку от Google, но целиком и полностью сливает лидерам – Nova Launcher и Apex`у. Можно настроить сетку иконок от 4х4 до 7х7, убрать полоску поиска и порадовать глаза красивыми анимациями перелистывания. Из полезного – возможность сделать иконки огромного размера, что пригодится людям с плохим зрением.
Панель уведомлений по-старинке разделена на несколько блоков и теперь стала прозрачной. Если вытащить ее слева – получим перечень текущих уведомлений. Если потревожить панель с правого края – в качестве бонуса получим слайдер управления яркостью и иконки быстрого доступа к необходимым функциям. Все настраиваемо и легкодоступно. В наличии также волшебная кнопка: «убрать нафик все уведомления одним махом” и переключатель активного пользователя.
Статусбар особых изменений не перетерпел, просто стал полупрозрачным и получил адаптивную. цветовую гамму под каждое приложение, что уже сто лет как было сделано в семействе прошивок Paranoid Android. Высокомерные черти из Google решили убрать человеческие режимы «Без звука”, «Вибро” и «Обычный” из Power menu (это то, которое появляется если зажать кнопку питания/блокировки). Теперь для управления звуком нужно нажать одну из кнопок громкости и выбрать один из трех вариантов:
- полностью без звука и вибрации
- звук активен для избранных абонентов
- обычный звук+вибро
ИМХО, но за такое нужно отрывать конечности. Спасает только тот факт, что активируя режим «без звука” мы можем задать время, через которое он будет автоматически отключен.
Меню многозадачности, по воле Google, превратилось в более приятное глазу, но абсолютно непрактичное скопление плиточек. Мудрецы из команды Cyanogen также не забыли о приятном дополнении – кнопке «закрыть все активные приложения”. Ибо смахивать все открытые программы по одной – то еще удовольствие.
Стандартные приложения
Лолипопке освежили дизайн, и это заметно абсолютно везде. Светлая цветовая гамма, плавные анимации, адаптивные виртуальные кнопки и статусбар создают ощущение единого целого. До тех пор, пока не наставишь сторонних приложений в которых ленивые разработчики еще не успели подстроится под свежие гайдлайны корпорации добра. Но мы ведь о предустановленных поговорить хотели, не так ли?
Звонилка немного преобразилась внешне, не более. Из функциональных отличий – интеграция голосового набора, которая работает не просто плохо – а откровенно паршиво. Контакты нормально не ищет, а надиктованный номер распознает настолько долго, что можно успеть заварить себе чашечку чая. С другой стороны, обычный поиск по контактам при помощи виртуальной клавиатуры работает превосходно и нареканий не вызывает.
Приложение Messaging, оно же СМС, получило тонну дополнительных настроек, черный список(!) и встроенный поиск по автору входящих сообщений.
Камера по количеству настроек сравнима с количеством слов в книге «О чем думают мужчины кроме секса». Даже в Google камере их набралось бы больше. Зато все каноны минимализма соблюдены.
CyanogenMod 12 радостно предлагает нам опробовать новую наработку – музыкальный плеер Eleven в паре с новеньким эквалайзером. Сам плеер, как и упомянутое выше приложение камеры, настроек практически не имеет, но функционально неплох и может порадовать красивыми виджетами разных размеров.
А вот эквалайзер вышел вкусным. В отличии от убожества, которое мы видели в MusicFX.apk вплоть до версии Android 4.4.4, новый звуконастройщик может предложить массу предустановленных профилей, усилитель басов, настройку окружения и реверберации. Не Viper конечно, но уже прогресс, причем заметный.
Файловый менеджер в CyanogenMod 12 практически не изменился со времен Android 4.3. Главной его особенностью можно считать возможность root-доступа в корневые папки смартфона.
Диктофон также получил новый дизайн, сделанный в подвале на колене, функционально оставаясь примерно в 2005-ом году.
Встроенный браузер, как и Google-клавиатура были неплохими, но я их вынес в первые же минуты, заменив более продвинутыми аналогами, а часы и калькулятор думаю вы и сами видели, посему в обзоре стандартных приложений позвольте откланяться.
Меню настроек
Среди настроек CyanogenMod 12 нас ожидает пополнение относительно голого Android Lollipop, но некоторые фишки, которые были доступны в предыдущих версиях ОС, все еще на стадии портирования. В меню беспроводных сетей теперь можно выбрать рабочий диапазон WiFi-сети, что будет полезно тем, у кого роутер работает на частоте 5 ГГц.
Секция Personalisation – фирменные радости гика, предоставленные командой Cyanogenmod. В статусбаре можно переместить часики в центр, что довольно удобно, и выбрать стиль отображения заряда батарейки.
Для панели уведомления можно кастомизировать отображаемые иконки быстрых настроек.
А вот самый сок кроется в менеджере тем CyanogenMod 12. Он позволяет применять готовые темы, скачанные из PlayMarket или найденные на просторах сети. Элементы тем можно комбинировать, придавая индивидуальность вашему смартфону.
Пунктик звуков и уведомлений позволит настроить вашу мигалку сведотиод уведомлений для разных событий.
В пункте «Батарея” за тремя точечками спряталась утилита «Battery Saver”, которая так и не захотела у меня включится. Данный софт призван подарить вам больше автономности за счет ограничения активности сетевых соединений.
Пунктик «Приватность” пополнился более адекватным черным списком для игнорирования нежелательных звонков и сообщений. Также в наличии Privacy Guard – утилитка, которая ограничивает приложениям доступ к вашим персональным данным.
Фирменный пунктик «Производительность” (Perfomance) в CyanogenMod 12 пока очень скуден и предлагает домохозяйкам всего три режима работы процессора. Очень надеюсь, что это недоразумение скоро заменят более функциональным аналогом.
Ответ на частый вопрос: «Как получить ROOT-права на CyanogenMod 12?”
- Идем в «Настройки (Settings)”-«Об устройстве (About phone)” – Находим пункт «Номер сборки (Build Number) и тапаем по нему 10 раз.
- Меню настроек пополнится пунктом «Настройки разработчика (Developer Options)”
- В этом меню будет пункт «Root access” – кликаем по нему и выбираем «Только для приложений (Apps only”)
- Победа! (Profit!)
Секреты новой файловой системы
Файловая система в Android постепенно видоизменялась, и в CyanogenMod 12 можно проследить новый этап эволюции. Я недавно писал об этом в своем twitter`е, но если вы это упустили – даю шанс наверстать упущенное. Знаете как хранились в памяти устройств приложения раньше?
Android 2.3 – Android 4.3:
Пользовательские приложения: /data/app/
Системные приложения: /system/app/
Библиотеки: общая свалка в /lib
Android 4.4:
Пользовательские приложения: /data/app/
Системные приложения: /system/app/ + изолированный блок в /system/priv-app
Библиотеки: общая свалка в /lib
Android 5:
Пользовательские приложения: /data/app/индивидуальная папка
Системные приложения: /system/app/индивидуальная папка + изолированный блок в /system/priv-app/индивидуальная папка
Библиотеки: корневые системные в /lib, необходимые для конкретного приложения – в папке с .apk файлом.
Что дает нововведение на практике? Теперь каждое приложение имеет отдельную папку в соответствующем разделе, в которой хранятся «личные” библиотеки (lib`ы), необходимые для его корректной работы.
Удаляете приложение – заодно удаляются его библиотеки. Иначе, они бы лежали в общем скопе, захламляя место. Также, в теории, это должно ускорить процесс обращения конкретной программы к ее личным данным.
Также не стоит забывать, что теперь все устройства под управлением Android 5, а значит и те, на которые установлен Cyanogenmod 12, используют виртуальную машину ART вместо Dalvik, что позволяет получить внушительный прирост производительности, но выливается косяком в виде увеличенного пространства, занимаемого приложениями.
Для тех, кто в танке:
Сейчас (Android версий до 4.4 включительно) Android-код выполняется в Java-машине Dalvik, созданной Google специально для мобильных устройств, при этом он «на ходу» преобразуется в аппаратный (Just-In-Time Compilation). Такой механизм позволяет разработчику приложения практически не привязываться к конкретной архитектуре или «железу», но наносит серьезный урон производительности, нагружая процессор во время компиляции. Конечно, после первого самого «тормозного» запуска программы часть полученного «нативного» кода сохраняется в кеше, однако полностью проблему лагов это не решает.
ART же представляет из себя AOT-компилятор (Ahead-Of-Time), который преобразует Java-код в «нативный» в процессе установки приложения. То есть пользователь запускает программу уже скомпилированной, что существенно ускоряет ее открытие и выполнение.
(с) источник habrahabr
Выводы
В последнее время часто слышу фразы:
«После того, как я попробовал Android L, – теперь не могу смотреть на предыдущие версии системы без отвращения”
Мое мнение по этому поводу очень двояко. С одной стороны, новые дизайн и возможности системы, в особенности приправленной модификациями CyanogenMod 12 действительно впечатляют, особенно по части единого, приятного глазу дизайна. Но вот с другой стороны, меня не покидает ощущение, что ребята из Google в очередной раз подсунули пользователям сырой продукт, что выражается как в слабом usability некоторых функций новой системы – так и ничтожном контроле над разработчиками, публикующих свои поделки в Google Play. Вот установил я свежий Android L, уже начал просто обтекать от гармонии приложений, выполненных в едином стиле (Material design), а тут бац, и какая-нибудь уродская софтина с интерфейсом прошлого десятилетия (могу привести десятки примеров) портит все удовольствие. Нехорошо, товарищи.
А вот CyanogenMod 12 действительно хорош. Даже находясь в статусе ранних ночных сборок прошивка демонстрирует отличную стабильность, постепенно получая свежие наработки и порты старых. Правда батарею на моем зверьке жрет – просто жуть. Но это дело ребята из Cyanogen обязательно поправят, я точно знаю… Вот только когда?
Когда Сеть наполняется новостями, сгенерированными желтой прессой и просто технически неграмотными писаками, это всегда плохо. А когда речь заходит о чем-то связанном с Android — плохо вдвойне. Вот и в этот раз 24 декабря интернет наводнился слухами о кончине самой известной, популярной и вообще замечательной прошивки CyanogenMod. И как ни странно, это оказалось правдой, только правдой в том же смысле, в каком человек — это просто система переработки пищи.
Чтобы объяснить тезис, почему CyanogenMod одновременно и жив и мертв, начну немножко издалека и приведу три простых факта, которые придется переварить, несмотря на технические подробности.
Раз. CyanogenMod — это прошивка с открытым исходным кодом, распространяемым по лицензии Apache. Что это значит? Это значит, что можно взять исходники прошивки и создать на их основе новый продукт, никому ни за что не платя и ни перед кем не отчитываясь. Собственно, сам CyanogenMod так и был создан: ребята взяли исходные коды Android и сделали на их основе свой проект. А потом пришли другие ребята и на основе уже этих исходников стали создавать другие продукты (Resurrection Remix, AOKP, MIUI, тысячи их).
Это называется «форк», и относительно ситуации «смерти» CyanogenMod он играет очень важную роль. Исходный код не может умереть, могут просто исчезнуть те, кто его развивает, то есть разработчики прошивки.
Исходные коды последних версий Android всегда доступны на сайте source.android.com Другие статьи в выпуске:
Xakep #216. Копаем BitLocker
- Подписка на «Хакер»
Два. Последние четыре года из своих восьми прошивка развивалась под крылом компании Cyanogen Inc., созданной специально для этого. Модель заработка у Cyanogen Inc. была банальной: развиваем свободный проект и одновременно впариваем производителям смартфонов его расширенную закрытую версию с техподдержкой и другими вкусными плюшками. А деньги получаем за счет встраивания в прошивку разного рода bloatware: Cortana, Skype, Boxer и другое. Свободным (открытым) в данном случае был CyanogenMod, закрытой — Cyanogen OS.
Первые годы схема работала и даже казалась перспективной. Cyanogen Inc. стабильно получала инвестиции, компания открывала новые офисы, Стив Кондик пил пиво на рабочем месте, осознавая, что жизнь удалась (c). Но в какой-то момент все начало разваливаться. Абсолютно технически неграмотный генеральный директор Cyanogen Inc. раз за разом уводил компанию не в ту сторону, нес на публике несуразицу в стиле «Мы заберем Android у Google», заключал сомнительные контракты (на предустановку приложений Microsoft, например) и прошляпил действительно перспективную сделку: контракт на предустановку Cyanogen OS на невероятно популярные сегодня смартфоны OnePlus.
Убедить других крупных производителей смартфонов использовать Cyanogen OS не удалось, и в конце концов Cyanogen Inc. дала течь. Поговаривают, что и сама Google приложила руку к образованию этой течи, но дело не в этом, а в том, что компания шла ко дну и, пытаясь хоть как-то спасти свой бизнес, ее руководство решило полностью отказаться от развития прошивки и сосредоточиться на разработке приложений.
Три. То, что желтые СМИ назвали смертью CyanogenMod, на самом деле было совсем другим явлением. А именно: а) у CyanogenMod отобрали имя, так как оно находилось в собственности компании Cyanogen Inc.; б) у CyanogenMod отобрали инфраструктуру, то есть сервер, где находился веб-сайт прошивки, серверы хранения сборок и, собственно, самое важное — сервер сборки прошивки, который занимался формированием ночных и стабильных сборок. И это самая весомая потеря, так как собрать такой огромный проект для более чем 300 устройств — задача трудоемкая, требующая просто огромных вычислительных мощностей.
А теперь самое важное: еще месяц назад, когда создатель CyanogenMod Стив Кондик только собирался покинуть Cyanogen Inc., он в довольно прямолинейной форме заявил, что текущим разработчикам прошивки хорошо бы задуматься о создании форка CyanogenMod и развивать его независимо от каких-либо компаний.
И такой форк действительно возник. 24 декабря в теперь уже закрытом блоге CyanogenMod появилась запись (ссылка на архив) о том, что Cyanogen Inc. сворачивает всю инфраструктуру CyanogenMod, так что, ребятки, надо что-то делать, поэтому мы забираем исходные тексты CyanogenMod и заливаем их на GitHub под именем LineageOS.
Чуть позже появляется веб-сайт lineageos.org, ничем не наполненный, однако с его скудных страниц становится ясно, что основная задача на данный момент — это поднять те самые серверы сборки, которые позволят начать формирование ночных и стабильных сборок нового CyanogenMod, а именно его форка, над которым и пойдет дальнейшая работа.
Так выглядел lineageos.org 29 декабря
Проблема здесь только в том, что не совсем понятно, сколько разработчиков оригинальной прошивки действительно захотят заниматься прошивкой новой. С одной стороны, вроде бы никаких проблем. Но из-за всех этих перипетий, связанных с ее коммерциализацией, она уже потеряла множество талантливых разработчиков. И непонятно, в какую сторону разработчики двинутся завтра.
Они могут просто не «подхватить» LineageOS, и здесь мы получим очень неприятную для всех историю. С одной стороны, красота открытого исходного кода в том, что несколько проектов могут развиваться параллельно. По сути, неважно, куда уйдут разработчики, — ну, будут они развивать другую прошивку, их код можно взять и внедрить в LineageOS, а они, в свою очередь, возьмут наработки LineageOS и внедрят в свою. Всем всё, никому ничего.
LineageOS на OnePlus One
С другой стороны, CyanogenMod всегда отличалась двумя очень важными с точки зрения кастомной прошивки качествами:
- ее развитие было четко скоординировано, разработчики не тащили в прошивку все, а планомерно развивали определенный набор весьма консервативной функциональности. Ты получал один и тот же арсенал функций независимо от версии самой прошивки (стабильность!);
- CyanogenMod — это самая портируемая прошивка в мире. Покупая смартфон, ты мог надеяться, что уж если твоей любимой прошивки для него нет, то CyanogenMod-то точно будет, хотя бы в форме неофициального порта.
В общем, золотой стандарт. Такой же золотой стандарт, как Ubuntu в мире Linux или Microsoft Word в мире текстовых процессоров. И получить вместо стандарта разброд и шатание — не очень приятная перспектива.
В любом случае CyanogenMod хоть и мертв, но жив. Да и это всего лишь код, а за кого действительно обидно в этой ситуации, так это за Стива Кондика и других активных разработчиков, вступивших в ряды Cyanogen Inc. Наблюдать, как твоя мечта умирает, всегда больно.
- Вступление
- История
- Актуальность
- Установка CyanogenMod
- Обзор CyanogenMod 13
- Интерфейс
- Приложения
- Внутренние функции
- Проблемы, ошибки и недоработки
- Заключение
Вступление
Уже ни для кого не секрет, что OC Android – это система с открытым исходным кодом, которая основана на ядре Linux. Отсюда вытекают все ее недостатки и преимущества, такие как фрагментация, оптимизация и открытость.
реклама

В прошлый раз мы изучили процесс выбора кастомных прошивок, выяснили, где искать образы и как устанавливать на примере CyanogenMod 13. Теперь пора подробнее рассмотреть эту популярную прошивку для android-устройств.
Среди ее особенностей можно отметить поддержку большого количества мобильных решений, достаточно стабильную работу и огромное количество настроек. А в довесок к этому идет поддержка кодека FLAC, сжатого кэша и планировщик BFS.
В качестве тестового оборудования применялся планшет Samsung Galaxy Tab 2 7.0 (процессор TI Omap 4430, 2 x 1000 МГц, видеосопроцессор PowerVR 540 384 МГц, 1 Гбайт ОЗУ).
анонсы и реклама
История

Неофициальная прошивка CyanogenMod появилась в далеком августе 2010 года, спустя два года после выхода первой версии OC Android. CyanogenMod 6, а именно так называлась выпущенная версия системы, была построена на базе OC Android 2.2 Froyo и отличалась рядом особенностей
В нее была встроена графическая оболочка ADWLauncher, в настройках появился раздел CyanogenMod Setting, а среди установленных приложений можно было найти CPU Control или что-то подобное для разгона процессора. Но главной отличительной чертой устройства с данной прошивкой были интересные обои и экран загрузки с «зеленым роботом» на скейтборде. Естественно, все первые прошивки были изрядно косячными. Это мне известно не понаслышке, а благодаря опыту использования такой системы на android-смартфоне LG Optimus GT540.
Но спустя время и версии прошивка CyanogenMod заметно преобразилась. Так, CyanogenMod 9 и последующие стали очень активно развиваться, получили поддержку флагманских и достаточно утилитарных устройств, таких как Samsung Galaxy Ace, Sony Xperia S и других.
Актуальность

По состоянию на 2014 год прошивка CyanogenMod была установлена более чем на 12 миллионах устройств. К сожалению, более свежих данных обнародовано не было. Но если немного проанализировать IT рынок, то, по моим предположениям, сейчас эта система установлена на 17-20 миллионах гаджетов. Почему?
Относительно небольшой рост обусловлен снижением актуальности кастомных прошивок в целом, поскольку уже сейчас устройства «из коробки» умеют все, что нужно и даже больше. С другой стороны, стоит отметить появление смартфонов с официальными прошивками CyanogenMod, в числе которых и рассмотренные в лаборатории OnePlus One, Oppo Find 7, Oppo N1 и прочие.
Установка CyanogenMod

Установить прошивку CyanogenMod можно не только с помощью одноименного приложения для ПК – CyanogenMod Installer, но и через Recovery, что и было проделано в соответствующем обзоре. Оба способа максимально просты и утилитарны, но внезапно возникающие ошибки и неправильно растущие руки еще никто не отменял.
Обзор CyanogenMod 13
Интерфейс
Начнем рассмотрение CyanogenMod 13 с того, что видим сразу после включения устройства – интерфейса. И поскольку в нашем случае используется планшет, могут быть небольшие нюансы, затрагивающие элементы и их расположение.

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

Для разблокировки экрана необходимо потянуть «замок» вверх, а для перехода к звонкам (у нас планшет без SIM-модуля) или камере за соответствующий значок, естественно, тоже вверх.
Затем мы оказываемся на рабочем столе, как бы странно это не звучало. Оболочка CyanogenMod 13 достаточно схожа с классическим интерфейсом в Android L, но получила ряд отличий.
Вкратце по порядку. Изменено меню, отступы от краев экрана и элементы скомпонованы иначе. Многие объекты, поведение и действия системы оснащены другой анимацией. Не могу сказать, что все это кардинально меняет ощущения от использования системы, но некоторый «экспириенс» в этом все-таки есть.
В настройках можно включить строку поиска, установить прокрутку обоев, выбрать цвет меню и многое другое. Но удивить меня сложно – все это есть в том же APEX и Nova Launcher.
Зато из наглядного мы сразу можем отметить десяток фоновых обоев (к сожалению, куда-то пропали неплохие заставки из CM) и многофункциональный виджет cLock.
Естественно, на рабочих столах можно располагать виджеты, ярлыки и компоновать папки. На открытие любой папки и приложения внутри нее можно установить графический ключ, который обеспечит сохранность ваших данных.
Центр уведомлений немного изменили. Теперь на него можно вынести практически все существующие параметры устройства. Причем переключение между экранами осуществляется с довольно красивой анимацией.
Кстати, в CyanogenMod можно регулировать яркость экрана, не открывая шторку с уведомлениями. Для этого нужно провести по закрытой шторке влево или вправо.
В «статус-баре» можно изменить положение значков, например, установить часы в центре экрана, как на iPhone. Индикатор батареи можно сменить со стандартной вертикальной или горизонтальной пиктограммы на круговую диаграмму или процентное содержание заряда. А особые личности могут и вовсе убрать индикацию заряда, создав иллюзию свободы от розетки и беззаботности.