Всем привет! Сегодня я расскажу о кастомной прошивке 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 обязательно поправят, я точно знаю… Вот только когда?

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