Как стать автором
Обновить
2065.85
Timeweb Cloud
Облако для бизнеса

«Прокачиваем» кнопочный Android смартфон за 13$. Как довести до ума телефон без официальной поддержки?

Уровень сложностиСредний
Время на прочтение8 мин
Количество просмотров18K
image

Не всегда производители различной техники выпускают действительно удобные и юзабельные гаджеты на рынок. Иногда на полки магазинов попадают довольно сырые устройства, а в случае бюджетных моделей — про них забывают сразу после выхода с конвейера. Другое дело, когда девайс оказывается непаханым полем в плане моддинга и всем свои видом намекает «давай, начни во мне копаться!», как и сегодняшний герой — Android-кнопочник Nobby 230! Сегодня мы с вами: напишем свой лаунчер, переработав UI телефона, портируем кастомное рекавери, добавим поддержку ROOT-доступа, вычистим хлам от производителя, предустановим необходимые приложения и оформим это всё в виде готового образа, который сможет поставить себе каждый владелец подобного телефона! Интересно?

Предисловие


Честно сказать, я не ожидал такой обширной реакции на статью об этом кнопочнике. Многие читатели выражали неподдельный интерес к подобному классу устройств и хотели бы получить смартфон в формате классического кнопочника. И в целом вариантов не так уж и мало, на любой вкус, бери — да выбирай! Тут и QWERTY смартфоны, которыми можно управлять почти полностью с клавиатуры, такие как BlackBerry KeyOne и его формальный наследник — UniHertz Titan:

image


image

Два красавца!

Так и модели 2010-2011 годов, когда был настоящий бум на QWERTY клавиатур и почти каждый известный бренд выпускал модели в подобном форм-факторе, например, Acer BeTouch E130 или Galaxy Y Pro. Самое приятное в подобных девайсах — найти подобные смартфоны вы можете и сейчас по 500-1.500 рублей на барахолках, если вы вдруг не сильно привередливы к функционалу устройства.

image

BeTouch 130 с трекболлом

image

Galaxy Y Pro с очень точным оптическим трекпадом!

Но всё же некоторым людям нужен обычный «тапок» в исполнении «моноблок». И вот тут всё гораздо сложнее: производители не хотят выпускать что-то серьёзное на этот рынок из-за рисков понести серьёзные убытки, ведь большинству людей кнопки не нужны вовсе. Однако, определенные шажки в эту сторону делаются. В первую очередь компанией Xiaomi, которая в 2018 выпустила Qin1s, оказавшийся весьма удачным, породив кучу (не смейтесь) реплик! Xiaomi оценили успех своего первенца и теперь время от времени развивает линейку Qin, выпуская кнопочные смартфоны на очень неплохом железе, которое тянет даже PUBG и Genshin Impact (!)

image
Qin 1S

image
Да, это выглядит странно :)

Оригинальный Qin 1s был построен на слабом и дешевом железе от UniSOC — SC9820E, который при ближайшем рассмотрении оказывается унаследованным от давнего знакомого бюджетников из 2014 — SC7715. Российские ритейлеры смекнули — если себестоимость подобных телефонов копеечная, то нужно дать потребителю кнопочный смартфон с максимальной ценой до 2.000 рублей. И таки сделали — Nobby 230, BQ 2400G/2800, SenseIT L250. Мобилки неплохо продавались, даже на 4pda появлялись темы про них, но особого развития в моддинг-сообществе они не получили. И это надо исправлять.

Что мы будем делать?


Свой «нобби» я сейчас использую в качестве резервного смартфона, из которого можно выйти в ВК и настрочить сообщение. Но у него есть объективные косяки, которые мне очень не нравятся:

  1. Дико неудобное меню (лаунчер). Оно не анимировано, слишком красочное и заставляет идти в подменю для просмотра всех приложений.
  2. Отсутствие ROOT-доступа. Я люблю моддить и копошиться в своих девайсах и точно знаю, что я такой далеко не один! Плюс наличие root-прав позволит нам на лету менять говерноры и ограничивать тактовую частоту чипсета, позволяя серьёзно экономить аккумулятор.
  3. Ненужные и не удаляемые приложения — например Facebook Lite и WhatsApp, который не обновить штатными средствами.

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

Recovery


Как я уже сказал, подобные устройства работают на базе очень старого чипсета SC7715, поэтому с портированием recovery проблем никаких не будет — уже есть готовые версии TWRP и CWM с других смартфонов, которые нужно будет пропатчить. Суть вот в чём: в этих смартфонах используется не eMMC, а дешевая NAND память малой емкости, для работы с которой используется механизм называемый UBI. UBI — это стандарт, состоящий из механизма описания разделов (как GPT/MBR) и UBIFS — специальной файловой системы, оптимизированной для работы на флэш-накопителях. Просто так его распаковать и работать с ним не выйдет — нужна машина с Linux на борту и пакетами для работы с UBI, а поскольку мы хотим моддить из под Windows — придётся немного мудрить.

TWRP и CWM из коробки умеют монтировать раздел /system/ и предоставлять полный R/W доступ через adb. Так почему бы не использовать эту особенность для дальнейшей работы? Для портирования рекавери нам понадобится т. н. «кухня» для работы с образами — MTK Img Tools (после распаковки архива с софтом создаем папки Pack/Image и Unpack/Image), фирменная программа для прошивки ResearchDownload, родная прошивка и какой-нибудь TWRP с другого телефона на SC7715. Я брал от ZTE A9.

В SP Flash Tool открываем PAC со скачанной прошивкой и видим в директории программы папку ImageFiles. Заходим в неё, копируем оттуда recovery.img в папку Unpack/Image нашей «кухни» и туда же копируем .img образ рекавери, которое мы портируем.

image

Распаковываем оба рекавери с помощью Unpack -> Recovery/Boot, идём в Unpack/Image/recovery/kernel/ (подразумевается родной recovery) и копируем ядро kernel из стока в папку kernel/ портируемого рекавери. Если его сейчас собрать и прошить — то рекавери запустится, но раздел system не увидит — из-за ubi, который нужно проинициализировать в init'е. Заходим в файл ramdisk/init.rc донорского рекавери и в on boot добавляем это:

ubiattach 0 ubipac
mount_all /fstab.scx15
mount -t ubifs /dev/ubi0_system /system/


Сохраняем, запаковываем наш модифицированный рекавери(Pack -> Recovery/Boot) и прошиваем его. А как же его прошить без ROOT прав, спросите вы? И тут нам поможет тот самый ResearchDownload! Нажимаем на шестеренки, жмем на строку recovery и выбираем выхлоп, который появился в Pack/Image MTKImgTool. В моем случае — recoverytwrp.img.
Все остальные галки снимаем — нам необходимо прошить только один раздел, закрываем диалог и жмем «старт». Подключаем смартфон выключенным с зажатой кнопкой 5 и ждём, когда девайс прошьется! После прошивки передергиваем батарею.

image

Зайти в рекавери легко: включаем отладку по USB, открываем командную строку и пишем adb reboot bootloader (если у вас конечно уже есть пакет adb). Устройство перезагрузится и если все сделано правильно — вы увидите рекавери, а ПК определит устройство как adb в режиме recovery с root доступом.

ROOT доступ


Тут варианта два: прошить готовый архив SuperSU или ручками положить бинарник su в /system/sbin и прописать ему необходимые права, а затем установить само приложение SuperSU. Я выбрал второй вариант для наглядности процесса — помещаем su в /system/xbin, назначая ему права 06755, а SuperSU.apk — в /system/app. Всё — у нас появились ROOT права! Кроме того, отсюда можно прошить MicroG или даже полноценные гаппсы. Но как они будут работать на этом устройстве… я не знаю. :)

Вычищаем хлам и заменяем приложения


Поразительно! В прошивке не оказалось хлама, вообще. Тут нет никаких левых пакетов, ничего подозрительного. Но в вашем телефоне может быть по другому: см. папки /system/app и /system/priv-app. Я лично удалил WhatsApp.apk, Facebook.apk и заменил стандартный лаунчер с клавиатурой: оба от Xiaomi (сюда ссылку на архив), а также добавил Opera Mini для более комфортного серфинга в сети.

image

Если у вас плохое зрение или вы модифицируете телефон для пожилого человека, вы можете увеличить размер элементов на дисплее, поменяв его dpi. Заходим в build.prop и меняем параметр «ro.sf.lcd_density» в большую сторону (125-130).
А ещё можно поменять анимацию загрузки или убрать противный громкий звук. Ну если уж пустились в пляски, то почему бы не поставить яблочко на загрузку? :) Идём в /system/media/ и заменяем bootanimation.zip на скачанный из интернета (гугл 240x320 boot animations).

image

Кроме того, если у вас вдруг есть еще кнопки (качелька громкости например), вы можете ее назначить на какое-нибудь полезное действие — например, многозадачность или открытие шторки уведомлений. Для этого заходим в /system/usr/keylayout/gpio-keys.kl (ваш может называться по другому, ищите файл без копирайтов Android), смотрим где действие VOLUME_DOWN/VOLUME_UP и меняем на желаемое действие (можно посмотреть здесь)

Из коробки на стоковой прошивке приложения устанавливать нельзя — так решил производитель, видимо, чтобы не ломать пользователю экспиренс несовместимыми приложениями. Однако это легко поправить — достаем build.prop:

adb pull /system/build.prop

Меняем в нем парааметр persist.sys.disable.app=true на false, и закидываем обратно:

adb push build.prop /system/

Кастомизировал прошивку под себя — что дальше?


Теперь нам нужно сделать т. н. «вайпы» — стереть раздел с данными приложений, иначе Android может начать конфликтовать с ними и упасть в «бутлуп». Если примонтированы /data/ и /cache/, то достаточно прописать в adb recovery --wipe_data --wipe_cache. Перезагружаемся — работает? Загрузились? Первая загрузка может занимать пару минут, но если уж смартфон запустился и все работает как нужно — то значит вы всё сделали правильно!

Как теперь поделится ей с сообществом? Вариантов три: использовать встроенный механизм бэкапов CWM (работает при условии, что вы починили все точки монтирования), запаковать весь образ /system/ в .tar архив, чтобы потом его распаковать одной командой, либо подготовить update архив (требует написания скрипта обновления, который сохранит все разрешения файлов). Плюс этого способа заключается в частичной автоматизации процесса установки прошивки. Делается это так:

tar -cvf /sdcard/system.tar /system/

На флэшке должен появится system.tar, который уже хранит в себе все разрешения файлов и симлинки.

Как потом кому-то установить вашу кастомную прошивку? Например вот так:

tar -xvf /sdcard/system.tar -C /

Не забываем вайпы! Вроде бы все довольно легко и просто, да? Ну это пока мы не касались темы модификации SystemUI или даже android.jar напрямую… Но в любом случае, информация в статье может оказаться полезной не только обладателям подобных кнопочников, но и обычных смартфонов, которые не знают с чего начать. На 4pda информация есть, но она недостаточно централизована, поэтому надеюсь, что эта статья будет полезной.

Пишем свой лаунчер


Надоел стандартный интерфейс системы? Напиши его сам! В процессе написания статьи меня очень сильно начал раздражать стандартный лаунчер. Он тормозной, у него нет плавности и он банально неудобен. Ну а лаунчеров под подобные версии системы практически нет…

image

И я решил запилить свой домашний экран, с виджетами и плавной анимацией! Сказано — сделано, лаунчер писался в попыхах, с учетом слабых мест UI-фреймворка Android. Минимум аллокаций, вся навигация в приложении через смену contentView (любой вызов startActivity занимал минимум одну секунду), плавные анимации через animate, перерисовка только по необходимости и конечно же хоткеи!

image

Лаунчер не имеет никаких внешних зависимостей кроме android.jar, в том числе и от мною нелюбимого AppCompat. Благодаря этому, конечный размер приложения составил всего 27кб, а потребление ОЗУ ~11мб. А ещё он добавляет удобные хоткеи: кнопка вверх откроет шторку уведомлений, влево откроет браузер, вправо — whatsapp, а вниз — музыкальный плеер!
Заценить костыли лаунчер, написанный за один день, можно на моем GitHub!

Теперь то он хоть юзабелен?

image

Вот теперь девайсом можно действительно пользоваться с некоторым комфортом! К сожалению, конкретно у моего экземпляра есть дефект с двойным нажатием кнопок — и дело не в мембранах, а самой пластиковой клавиатуре. Китайцы и тут решили сэкономить :(


Но в остальном — смартфон работает вполне ничего. У нас появился относительно адекватный домашний экран, возможность накатить патчи интерфейса с помощью Magisk и без проблем обновлять WhatsApp (в одной из официальных прошивок был баг, который не позволял обновлять системные приложения).

image

Как я уже говорил — на смартфоне без проблем работают WhatsApp и ВК, можно посерфить некоторые страницы или поиграть в несложные игрушки. Ребята с 4pda пишут, что берут его в армию, а кто-то на режимные объекты! И всё таки идея офигенная: теперь я точно уверен, что концепция смартфонов-кнопочников имеет право на жизнь и в первую очередь, если у них появится такое же моддинг-коммьюнити, как и в своё время у первых Android смартфонов!

Этот телефон мне очень напоминает жигули. Жигуль — неплохая машина за свою скромную цену, но как по мне — АвтоВАЗ сделал лишь минимум, чтобы машина могла привезти из точки А в точку Б (в случае нобби — позвонить и написать сообщение), открывая своей простотой кладезь возможностей различного тюнинга и доработок. Тоже самое и с нобби — ты покупаешь просто телефон. Но в отличии от большинства «тапков» — ты его ещё можешь довести под себя — а это самое ценное для техногика и любителя покопаться в различных девайсах!

image

А вы как думаете? :) Жду ваше мнение в комментариях.

Только зарегистрированные пользователи могут участвовать в опросе. Войдите, пожалуйста.
Полезно?
75.46% Да, интересно почитать, нашел кое-что полезное для себя!163
3.7% Нет8
20.83% Извращенец45
Проголосовали 216 пользователей. Воздержались 19 пользователей.
Только зарегистрированные пользователи могут участвовать в опросе. Войдите, пожалуйста.
Наш девиз:
29.58% «Я лучше куплю айфон и буду ходить как нормальный человек»42
45.77% «Куплю китайский девайс и буду больше красноглазить, чем пользоваться»65
24.65% Оба варианта верны, у меня джейлбрейк35
Проголосовали 142 пользователя. Воздержались 47 пользователей.
Теги:
Хабы:
Если эта публикация вас вдохновила и вы хотите поддержать автора — не стесняйтесь нажать на кнопку
Всего голосов 47: ↑43 и ↓4+39
Комментарии28

Публикации

Информация

Сайт
timeweb.cloud
Дата регистрации
Дата основания
Численность
201–500 человек
Местоположение
Россия
Представитель
Timeweb Cloud