Всем привет! Сегодня я расскажу о кастомной прошивке CyanogenMod 12 и ее особенностях на нынешнем этапе развития. В материале будет много авторской субъективщины и скриншотов (около 70-ти). Для начала – исходные данные.

Прошивка (ROM): CyanogenMod 12

Статус: nightly-сборка

Надежность: нестабильна

Базируется на: Android 5.0.2

Устройство: Sony Xperia Z1 Compact

Кодовое название устройства: amami

Блоки обзора: 

  1. Установка и запуск
  2. Внешний вид
  3. Стандартные приложения
  4. Меню настроек
  5. Секреты новой файловой системы
  6. Выводы

Установка и запуск

На лирический вопрос – “А нафига вообще эти все перепрошивки?” – могу предложить целых 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

Выводы

cyanogenmod_banner_054

В последнее время часто слышу фразы:

“После того, как я попробовал Android L, – теперь не могу смотреть на предыдущие версии системы без отвращения” 

Мое мнение по этому поводу очень двояко. С одной стороны, новые дизайн и возможности системы, в особенности приправленной модификациями CyanogenMod 12 действительно впечатляют, особенно по части единого, приятного глазу дизайна. Но вот с другой стороны, меня не покидает ощущение, что ребята из Google в очередной раз подсунули пользователям сырой продукт, что выражается как в слабом usability некоторых функций новой системы – так и ничтожном контроле над разработчиками, публикующих свои поделки в Google Play. Вот установил я свежий Android L, уже начал просто обтекать от гармонии приложений, выполненных в едином стиле (Material design), а тут бац, и какая-нибудь уродская софтина с интерфейсом прошлого десятилетия (могу привести десятки примеров) портит все удовольствие. Нехорошо, товарищи.

А вот CyanogenMod 12 действительно хорош. Даже находясь в статусе ранних ночных сборок прошивка демонстрирует отличную стабильность, постепенно получая свежие наработки и порты старых. Правда батарею на моем зверьке жрет – просто жуть. Но это дело ребята из Cyanogen обязательно поправят, я точно знаю… Вот только когда?

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


  • Богдан Тряпіцин

    Вам стоит поставить себе SetCPU. Батарейку жрет из-за усердной работы процесора – всегда на максимуме. Баг на CM12) После отрегулировки роботы процесора энергопотребление восстановится, а по теме то обзор хороший)

    • Leontjevski A.Roman

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

      • Спит средне. Интернет-обжор можно усмирить при помощи Greenify, например. С процессором пока воюем. Пытался понизить частоты при помощи No Frills Cpu Control, но он не очень хорошо работает с многоядерными процессорами. Буду искать более специализированный софт.

        • Leontjevski A.Roman

          вейклок да, помогает.
          частота отлично управляется Trickstermod-ом

        • О, точно, благодарю. Пользовался этой штукой еще на Xperia S, когда экспериментировал с отключением ядер. Но все не мог вспомнить названия.

  • Tuchbora

    классная статья. по делу, еще и живо написана

  • kkruglov

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

    а за статью спасибо, есть интересные моменты.

    • Мейнтейнеры наши настолько суровы, что предпочтут изобрести собственный велосипед, который потом “случайно” накрое теще пару важных функций системы, но исправит быструю разрядку :)
      А вообще, Sony – задницы, давно уже пора бы выпустить официальную лолипопку.

  • Sergei

    Не понял как удалить стандартные приложения CM12 типа браузера и.т.д

    • Ну во-первых Вы его можете просто отключить через Настройки/приложения. Этого достаточно, чтобы приложение перестало светиться в меню и не запускалось в фоне. Если Вы все-же хотите его именно удалить с концами, берете любой файловый менеджер с рут-доступом, идете в system/apps и удаляете файл приложения. Но, будьте осторожны. Лучше просто переместить файл из этой папки в другое место. Или переименовать в browser.apk.bak. Если что-то пойдет не так – сможете восстановить.

  • Юрий Опарин

    i9300 на описанной сборке полет нормальный, батарею кстати есть намного меньше чем 4.4.

  • Игорь

    gt-n7100. Прошил вчера. Радуюсь как слон. Производительность и стабильность на высоте. Benchmark выдал мне рейтинг производительности 29267 вместо 23667 которые были ранее… Даже не знаю что сказать.

    • посмотрим, как вы будете радоваться через месяц-два использования ;)

  • Андрей

    В CM 11 в меню Батарея была кнопка сброс, что бы сбросить статистику прожорства приложений. В CM 12 такой кнопки не вижу. Кто подскажет как обнулить всю статистику, хочу проверить как держит батарея после полной зарядки

    • Вообще-то статистика автоматически сбрасывается каждый раз после полной зарядки. Зачем Вам ручной сброс?

  • Dainis Idzāns

    Хрень полная, готов телефон в окно выкинуть (SIII mini). Производительность на высоте, Antutu 11902, как для меня все просто летает, ДАЖЕ ВЫЛЕТАЕТ. В самые неподходящие моменты может просто перезагрузится. Часто вылетают гооогл карты, калькулятор и камера. Видеокамера не работает, снимает зеленым, единственное можно скачать CAMU, там камера работает в замедленном режиме. При звонке иногда я плохо слышу, а иногда меня плохо слышно. GPS часто просто не работает. Игры и музыка просто супер. И батарейка радует, 2 дня без проблем, рекорд 4 дня. Как только ставлю андройд 4 версии, сразу включаются google services и жрут батарею, на пол дня хватает.

  • Автор пишет что не может смотреть на предыдущие версии андроида. А меня подбешивает одна особенность лоллипопки… Это запрет доступа к SD карте. Я вообще не понимаю почему кто-то за меня решает, как мне пользоваться собственной SD картой? Ри этого CM я ожидал, что хотя бы тут исправят, но чот не похоже. Та же хрень…

  • Artush Aleqsanyan

    да хорошая очен,но системной памяти очен мало осталос почему?

  • Сергей Братковский

    приветстую, афтор!!!! аще, циан, канешна харош всей сваей лёгкостью

  • Сергей Братковский

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