Как переименовать название программы в android studio?
Как переименовать название программы в android studio? Есть готовый проект в android studio, но после разработки нужно изменить название и иконку. Иконку изменил в manifest, но с названием возникли проблемы.
Отслеживать
26.7k 7 7 золотых знаков 32 32 серебряных знака 49 49 бронзовых знаков
задан 1 фев 2020 в 11:35
21 1 1 серебряный знак 2 2 бронзовых знака
Где-то уже такой вопрос был с подробной инструкцией. Поищите на форуме, там очень четко все обьясняли.
1 фев 2020 в 13:29
Посмотрите в /res/values/strings.xml строку с id app_name
1 фев 2020 в 14:27
2 ответа 2
Сортировка: Сброс на вариант по умолчанию
В /res/values/strings есть app_name — его подтягивает манифест, этот app_name и отображается под иконкой приложения. Меняй его на что хочешь
Отслеживать
ответ дан 2 фев 2020 в 14:40
119 3 3 бронзовых знака
В папке /res/values/ Вашего Android-проекта имеется файл strings.xml , вот его содержимое, которое необходимо:
Имя Приложения
В данном случае, по ключу app_name хранится название Вашего приложения. После его изменения, имя поменяется как в лаунчере, под иконкой приложения, так и в тулбаре, при открытии приложения.
Как можно переименовать приложение на Андроид – 3 пошаговых способа
Довольно часто пользователи сталкиваются с необходимостью изменить название приложения на рабочем столе. Такая потребность может появиться по разным причинам. К ним относят совпадение названий программ, необходимость подчеркнуть функции софта именем или создать иконки для загрузки разных конфигураций одного ресурса. При этом далеко не каждый человек знает, как можно переименовать приложение на Андроид. Возможно ли переименование приложений на устройствах Android Сменить название приложение встроенным инструментарием большинства мобильных устройств невозможно. Однако добиться нужных результатов можно при помощи дополнительных опций. Все они имеют определенные отличия. Для изменения названия софта можно использовать такие ресурсы: Лаунчер. Иными словами, он представляет собой графический интерфейс системы, который имеет отличия от встроенного. Существует ряд альтернативных лаунчеров, которые умеют без труда менять названия софта. При этом важно учитывать, что поменяется не только сам ярлык, но и визуальные характеристики интерфейса. Приложения. Такие ресурсы помогают создать на рабочем столе новый ярлык и дать ему нужное название. При этом удастся скрыть старый софт и получить новый – с другим именем. Редактор приложений. С его помощью удается вносить правки в APK-файлы разными способами. Одной из наиболее простых опций считается смена имени при создании нового ресурса. Стоит учитывать, что первые два варианта позволяют сменить имя только на рабочем столе, а третий – делает это также в настройках. Методика переименования приложения на Android Смена названия приложения на устройствах с операционной системой Андроид считается несложной процедурой. Для этой цели допустимо применять самые разные ресурсы. Метод 1: Изменение названия ярлыка приложения Проще всего добиться цели при помощи смены названия ярлыка. В таком случае имя самого ресурса сохранится. При этом не придется вносить правки в APK-файл. На устройстве с ОС Андроид добиться нужных результатов удастся при помощи лаунчеров или специального софта, который позволяет создавать ярлыки. Вариант 1: Использование Launcher – пошагово Лаунчеры позволяют осуществлять индивидуальную настройку главного экрана и рабочего стола на девайсах с ОС Андроид. Это дает возможность частично обойти ограничения стандартного интерфейса. Одним из наиболее востребованных ресурсов считается Apex Launcher. Для его применения требуется совершить такие действия: Запустить программное обеспечение и выполнить его настройку. Если такая необходимость отсутствует, этим этапом можно пренебречь. Пропустить экран с предложением о приобретении подписки. Сменить название можно и в бесплатной версии. При выборе пробного варианта спустя 3 суток начнется автоматическое списание средств. Выбрать интерфейс программы. При этом нужно переключиться на Apex Launcher и выйти из раздела с настройками. Создать ярлык программы. Для этого ее нужно перетащить на рабочий стол, совершить долгое нажатие и вызвать контекстное меню. Тут требуется кликнуть на пункт «Изменить». Здесь нужно сменить имя и нажать на строку «Сохранить». Скрыть прикладную программу. При этом следует оставить только переименованный ярлык. Для этого рекомендуется открыть настройки программы и выбрать раздел «Скрытые приложения». На следующем экране кликнуть на пункт «Скрыть приложения» и выбрать в списке нужный вариант. После чего следует подтвердить действие. Чтобы сделать софт видимым, опять открыть «Скрытые приложения» и кликнуть на пункт «Восстановить». Для отключения лаунчера перейти в «Настройки» ОС Андроид и найти строку «Приложения по умолчанию» или «Стандартные приложения». Тут следует выбрать раздел «Главный экран» и переключиться на стандартный интерфейс. В таком случае все настройки, которые были установлены в программе, исчезнут. Однако при переходе обратно опять удастся скрыть прикладную программу и получить переименованный ярлык. Вариант 2: Переименование через Shortcut Maker – пошагово Это достаточно простой инструмент, который позволяет создавать ярлыки приложений. Также он дает возможность настраивать функции системы, чтобы получить к ним быстрый доступ. Чтобы добиться требуемых результатов, рекомендуется сделать следующее: Перед тем как создавать ярлык, добавить виджет программы на рабочий стол. В противном случае созданный ярлык будет содержать водяной знак Shortcut Maker. Чтобы открыть виджет, требуется выполнить долгое нажатие на свободное место рабочего стола. Там необходимо найти нужный вариант и перетащить его в любое место. После добавления виджета программа сразу же загрузится автоматически. Тут нужно открыть меню «Apps» и выбрать в списке требуемый софт. Для изменения названия кликнуть на текущее имя, изменить его и нажать на пункт «Done». Для смены иконки кликнуть на строку «Shortcut Icon». Выбрать источник изображения. Это может быть галерея смартфона. После чего необходимо подгрузить изображение. После выполнения необходимых действий кликнуть на пункт «Create shortcut» и ознакомиться с результатом. Стоит учитывать, что приложение Shortcut Maker не дает возможности скрыть само приложение. Конечно, для этого существует специальный софт. Однако в этом случае нельзя гарантировать, что приложение потом вообще запустится при помощи созданного ярлыка. Чтобы получить нужный результат, можно попытаться спрятать софт в каталог. Метод 2: Использование APK Editor – пошагово Этот инструмент считается более сложным. Он предназначен для просмотра APK-файлов и внесения в них правок. Тут доступны такие функции, как удаление рекламного контента, смена фона картинок, изменение разрешения и макета архитектуры. Для применения софта требуются определенные навыки. Однако переименовать приложение при помощи APK Editor сумеет любой человек. В настоящее время программное приложение удалено из Google Play, потому его требуется скачивать со сторонних ресурсов. Для применения APK Editor рекомендуется сделать следующее: Загрузить на смартфон установочный файл, запустить его и кликнуть на пункт «Установить». Опять нажать на строку «Установить». После окончания процесса кликнуть на пункт «Открыть». Это даст возможность запустить софт. Выдать программе доступ к мультимедийным файлам. Перейти в меню софта и кликнуть на пункт «Выберите установленный APK». Выбрать в списке прикладную программу, имя которой требуется изменить, и нажать на пункт «Общее редактирование». Ввести новое название софта и кликнуть на строку «Сохранить». После чего появится модифицированный APK-файл. Путь к нему появится в центральной части экрана. Объект требуется использовать для переустановки приложения. Благодаря этому изменения вступят в силу. Кликнуть на пункт «Установить» и подтвердить действие. После чего нужно дождаться завершения установки. По словам разработчиков, данные прикладной программы не потеряются. Если процесс установки поверх текущего софта не привел к результатам, удалить его. Найти в памяти устройства модифицированный APK-файл и выполнить его установку. Проверить результат. Приложение должно быть переименовано. Смена названия приложения на девайсах с Андроид может осуществляться разными способами. При этом встроенный функционал в системе отсутствует. Потому для получения нужных результатов следует пользоваться сторонними программами.
Как переименовать проект в Android Studio
![]()
Как изменить в Android Studio имя проекта и название андроид приложения, вы узнаете в этой небольшом видео из серии «Ошибки, часто задаваемые вопросы по разработке android приложений». Уроки по разработке android приложений в Android Studio: https://www.youtube.com/playlist?list=PLyfVjOYzujugap6Rf3ETNKkx4v9ePllNK Часто задаваемые вопросы и ошибки начинающих android разработчиков: https://www.youtube.com/playlist?list=PLyfVjOYzujugjnCvSOhMvbCuvWIyDAqei Разработка android приложений в Eclipse: https://www.youtube.com/playlist?list=PLyfVjOYzujuhLNi-AxZsW0idLj9ZChDf0 Группа взаимопомощи Вконтакте для начинающих ANDROID разработчиков и программистов: http://www.fandroid.info/gruppa-vzaimopomoshhi-dlya- nachinayushhih-android-razrabotchikov-i-programmistov-osvoim-android-vmeste/ Скачать видеоуроки: http://www.fandroid.info/skachat-video-uroki-po-android-programmirovaniyu-i-razrabotke-mobilnyh-prilozhenij-dlya- android-smartfonov-i-planshetov/ Поддержите наш проект: http://www.fandroid.info/spasibo-za-vashu-podderzhku/ #android #AndroidStudio #startandroid
Показать больше
Войдите , чтобы оставлять комментарии
Как назвать/изменить название приложения в Android Studio? Название приложения кириллицей/русскими буквами

В данном случае рассмотрим ответ на ряд вопросов, касаемо названия Андроид-приложения при его создании в Android Studio.
Как переименовать приложение в Андроид Студио?
Как заменить имя название приложение в Андроид Студио?
Как переименовать название приложения в Андроид Студио?
Как изменить название приложения Андроид Студио?
Как поменять название приложения Андроид Студио?
Изменение имени проекта в Андроид Студио.
Как указать название приложения на кириллице в Андроид Студио?
Название приложения русскими буквами в Андроид Студио.
Вот ответ на эти вопросы:
Открыв иерархию/каталог проекта, найдите путь: /res/values/
В папке values находится файл strings.xml, вот его содержимое, которое необходимо:
Ключ-параметр: app_name, хранит имя/название Вашего приложения.
После изменения этого параметра, название приложения поменяется под значком/иконкой приложения, в меню/лаунчере среди приложений.
Поменяется название приложения и в заголовке тулбара, при открытии приложения.
Например, приложение называлось: Delfiny

После того, как был изменен параметр app_name, с Delfiny на Дельфины, стало вот так:

В итоге, запустив приложение в встроенном эмуляторе Android Studio, можно увидеть, что новое название приложения Дельфины, появилось и под иконкой приложения в общем меню.

Новое название приложения Дельфины, можно заметить и в заголовке верхней панели(Тулбар) при запуске приложения.

pedddro 1 год назад
Это работает только при создании приложений в Android Studio или в данной программе можно изменить название любых имеющихся apk- приложений? Если да, то как они себя ведут впоследствии при обновлении (имя обновляемого файла изменено, имя «свежего» файла исходное), не конфликтуют, какое имя получается конечное?
раскрыть ветку (0)
Похожие посты
DEgITx 1 день назад
Не альтернатива пикабу или возвращение в 2007 (с минусами) — проект Talkvio. [Обновления]
![Не альтернатива пикабу или возвращение в 2007 (с минусами) - проект Talkvio. [Обновления] Разработка, Сайт, Интернет, Социальные сети, IT, Android, Приложение на Android, Приложение, Длиннопост](https://cs13.pikabu.ru/post_img/2024/04/28/7/1714299796117017077.jpg)
Обновление в новом проекте Talkvio построенном на базе форума с более 250 000 сообщений из далекого 2007 года и уже большим количеством новых с момента создания нового движка в 2023 году. Отличается наличием минусов, есть возможность указывать свое отношение к автору и менять свое отношение через системы кармы и очков (что выгодно отличается от обычного лайканья постов). Есть пометки моего (авторский контент), поиск, блочный редактор с черновиками, черновики для комментариев, оповещения, фильтры для тех кто интересуется топами комментариев или постов, многочисленные разделы со свежим/лучшим/комментируемым/авторским, реверсные и прямые отображения комментариев, подписки на теги и на пользователей, избранное, увеличение изображений, оформление своей страницы, публикацию по расписанию, подъемы постов, случайная лента / случайные посты, сайт доступен на 2 языках, имеет темную и светлую тему, подсказки для новичков, живая панель комментариев, управление клавиатурой, скрытие просмотренных постов, и многое другое. Так же уже есть приложение на андроид. Многие вещи внедряются и дорабатываются и открыты для предложений. Реклама отсутствует как таковая. В будущем ресурс будет уделять гораздо больше вниманию авторскому контенту. Ссылка на ресурс и приложение на android в комментарии.
Доработано упоминание людей, подсказки ников и само упоминание в тексте использует аватарки.
Исправлен баг на анроиде когда при попытки стереть упоминание могла закрываться клавиатура
![Не альтернатива пикабу или возвращение в 2007 (с минусами) - проект Talkvio. [Обновления] Разработка, Сайт, Интернет, Социальные сети, IT, Android, Приложение на Android, Приложение, Длиннопост](https://cs14.pikabu.ru/post_img/2024/04/28/7/1714299989118841976.jpg)
Исправлено заполнение тегов в темной теме
![Не альтернатива пикабу или возвращение в 2007 (с минусами) - проект Talkvio. [Обновления] Разработка, Сайт, Интернет, Социальные сети, IT, Android, Приложение на Android, Приложение, Длиннопост](https://cs13.pikabu.ru/post_img/2024/04/19/9/1713541365144575593.jpg)
![Не альтернатива пикабу или возвращение в 2007 (с минусами) - проект Talkvio. [Обновления] Разработка, Сайт, Интернет, Социальные сети, IT, Android, Приложение на Android, Приложение, Длиннопост](https://cs13.pikabu.ru/post_img/2024/03/03/8/1709473175110859245.jpg)
![Не альтернатива пикабу или возвращение в 2007 (с минусами) - проект Talkvio. [Обновления] Разработка, Сайт, Интернет, Социальные сети, IT, Android, Приложение на Android, Приложение, Длиннопост](https://cs13.pikabu.ru/post_img/2024/03/03/8/170947320517211652.jpg)
![Не альтернатива пикабу или возвращение в 2007 (с минусами) - проект Talkvio. [Обновления] Разработка, Сайт, Интернет, Социальные сети, IT, Android, Приложение на Android, Приложение, Длиннопост](https://cs13.pikabu.ru/post_img/2024/03/03/8/1709473217164442200.jpg)
![Не альтернатива пикабу или возвращение в 2007 (с минусами) - проект Talkvio. [Обновления] Разработка, Сайт, Интернет, Социальные сети, IT, Android, Приложение на Android, Приложение, Длиннопост](https://cs14.pikabu.ru/post_img/2024/03/03/8/1709473226196715349.jpg)
Показать полностью 6
vnm1 11 дней назад
Новая игрушка
Купил я недавно (в январе) телефон китайский. С тепловизором, качество съёмки, конечно, капец, но работает же)

Вот шашлыки на мангале.



проверка батареи на засранность

Трубы завода вдалеке


Как видно, он берет четкие контура с основной камеры, а пятна с тепловизора. Если же на улице темно и контуры объектов плохо видны, то видно только пятна. Прикольная штука, чтоб поиграться, да и в хозяйстве пригодится, например можно искать, где продувает стеклопакет, где греются контакты в щитках, батарею вот проверять на засоры. Ночью летом попробую в лесу птиц поискать.
Можно снимать видео.
Минусы этого тепловизора: врёт в пределах пяти градусов. Ниже -30 и выше +150 зашкаливает. Картинка так себе. В -15 когда снимал долго, заглючил и все стал серым с полосами показывать, пришлось отогревать и перезагружать. Дальше метров десяти видно только крупные объекты, например, воробья видно метров с пяти, а человека и на 50 метров добивает. По умолчанию стоит увеличение х2, поэтому снимать вблизи никак, изменить увеличение тоже нельзя.
В режиме видео каждые десять секунд он перекалибровывается автоматически, из-за чего происходит скачок и торможение изображения.
Несмотря ни на что, я доволен. Со времён первого «хищника» хотел такую штуку, теперь гештальт закрыт)
Показать полностью 7
Посты о ремонте и моддинге ретрогаджетов.

12 дней назад
Смартфон для джаваскриптера-олдфага: стоит ли гику брать дешманские девайсы на KaiOS? Смотрим на Nobby 240 LTE

Друзья! Много ли платформ вы знаете, где для написания пользовательских приложений используется стек… веб-технологий, причём это единственный нативный способ писать программы? Услышав о HTML5 + CSS + JS, на ум приходит разве что webOS — которая используется в современных телевизорах от LG (а ранее использовалась ещё и в Palm Pre — уникальный смартфон, единственный в своём роде), а олды вспомнят ещё и про FireFox OS, в которой вся оболочка (включая многозадачность, шторку уведомлений и все приложения) также была реализована на JS. Но ни webOS, ни FFOS в своё время не суждено было стать массовыми ОС на смартфонах: сказывались аппаратные ограничения устройств, да и проблемы с портированием уже существующих приложений с других платформ (например, игр). Однако несколько лет назад, проект FireFox OS был форкнут и на свет появилась новая система, предназначенная для… умных кнопочных телефонов с LTE! И имя ей — KaiOS. Вероятно, многие мои читатели слышали о ней и о новых умных кнопочниках от Nokia. Но что из себя представляет система под капотом и чем она может быть интересна гику? Читайте в новом материале!
❯ Предыстория
В наше время, стек веб-технологий стал чуть ли не вторым по важности для разработки клиентских приложений. С появлением PWA и модных MVC-фреймворков, а также таких проектов, как Electron, визуальная составляющая многих приложений радикально поменялась: стало возможным реализовывать кастомный, гибкий и адаптивный интерфейс с поддержкой тем и анимаций буквально в несколько строчек кода. Такой подход значительно упрощает и удешевляет разработку клиентских приложений для популярных сервисов: например, «набросать» своё приложение для MP3-плеера может даже зелёный джун, который только начал писать код.

Первой попыткой сделать PWA-приложения «нативными» был, как ни странно, первый iPhone. iOS 1.0, которая в те годы ещё называлась iPhone OS, не имела AppStore и поддержки нативных ipa-приложений и предлагала просто выносить значки нужных сайтов на рабочий стол. При этом возможность отображения полноценных десктопных сайтов была одна из самых сильных сторон iPhone в те годы! Как показала практика, Стив Джобс немного поспешил с интеграцией PWA на смартфонах и в iOS 2.0 уже был добавлен AppStore, куда разработчики могли публиковать нативные и быстрые приложения!

Alcatel OneTouch Fire E — один из двух смартфонов на FireFox OS в моей коллекции!
Но всё это итак знакомо многим моим читателям: подписчики часто жалуются на то, что современные приложения жиреют и лагают, а ещё тащат за собой целый CEF и миллион npm-пакетов из-за чего даже какие-то простые приложения начинают требовать слишком большие ресурсы. Но кто бы мог подумать, что веб-стек найдет своё место на… кнопочных мобильниках! Казалось бы, дешевые кнопочники не имеют ресурсов для запуска полноценного браузера, их главная задача — именно звонить. Но ведь на складах всё ещё лежат, полагаю, целые стеллажи бюджетных смартфонных процессоров 10-летней давности, которые вполне способы запустить Android… смекаете, к чему я? 🙂
KaiOS появилась как форк и концептуальное продолжение провалившейся FireFox OS: система от Mozilla предлагала множество интересных концепций и шустро работала даже на очень-очень бюджетных смартфонах, несмотря на веб-направленность. Минимальные требования системы были скромными: ОС шустро работала на бюджетном ZTE Open с 256Мб ОЗУ и чипсетом MSM7225A из 2012 года. FireFox OS работала на ядре Linux, основой был браузерный движок Gecko, а поскольку Mozilla, полагаю, не смогла заручиться поддержкой вендоров чипсетов и хотела, чтобы систему мог портировать на своё устройство любой желающий, для взаимодействия с железом устройства система использовала драйвера для… Android! Поскольку Gecko собирался с использованием стандартного libc, а драйверы использовали bionic, FireFox OS активно использовала библиотеку libHybris, что позволяло портировать систему на уже существующие смартфоны с любыми чипсетами.

LG fx0 — редчайший смартфон на FireFox OS. Правда на фото он на Android 🙂
Идея системы простая: формально, это один большой браузер (оболочка Gaia), который при запуске приложений создаёт ещё маленькие «браузеры» (элемент webview, это не iframe). Плюсы такого подхода очевидны: отказоустойчивость (потенциально, весь рестарт Gaia — это WebView.Refresh. В случае Android — это закрытие всех приложений и перезапуск app_process), безопасность (нельзя вызвать Private API), лёгкость отладки и малый вес конечных приложений (причём вес — основной критерий для публикации приложения в официальном магазине KaiOS, пакет до 20Мб). Стоит ли говорить о том, что приложение на такое устройство сможет написать даже ребенок, а игру в стиле «Змейки» можно реализовать за пару часов? Порог вхождения значительно ниже даже чем на Android!

В основном, KaiOS разрабатывалась как система, которая должна вывести кнопочные телефоны из разряда «просто-звонилок» и позволить использовать на привычных устройствах современные мессенджеры и различные сервисы (например, тот-же YouTube). Пожалуй, это отнюдь не «прокачанные бабушкофоны», как некоторые могут подумать, а перспективные девайсы с современным железом (поддержка дисплеев высокого разрешения, 3D GPU, LTE) и заделом на будущее, пусть пока и без крутых девайсов в стиле Nokia N-серии. Концепция умных кнопочников не ограничена KaiOS: выходят различные девайсы и на Android, об одном из таких смартфонов я даже писал две отдельные статьи с обзором и моддингом.

Сейчас на барахолках можно найти дешевые девайсы на KaiOS до 2х тысяч рублей, правда свежие Nokia ценятся обычно выше. Мне же достался в подарок Nobby 240 LTE от моего читателя jameskod007, за что ему большое спасибо! Чем такие девайсы могут быть интересны гику? Давайте посмотрим!

❯ Что «под капотом»?
Под капотом у устройств на KaiOS трудятся старые и такие знакомые многим читателям бюджетные чипсеты, как MediaTek MT6572 (использовался в смартфонах до 3-4х тысяч рублей в 2014-2015), SpreadTrum SC7731E (наследник SC7731 2014 года с другим GPU) и Qualcomm 205 (судя по всему, наследник Snapdragon 200 — популярного чипсета 2014-2015 года, который использовался, например, в Lumia 520). Само собой, это позитивно сказывается на цене устройства: зачем в девайс с дисплеем 240×320 ставить 800’ый Snapdragon? 🙂

Значительным плюсом подобных устройств является простота обслуживания. По правде сказать, здесь и ломаться то особо нечему: дисплей относительно надежно защищен от внешнего влияния с помощью воздушной прослойки и защитного стекла, а элементная база смартфона весьма маленькая и «не ломучая». Разбирается смартфон просто: достаточно лишь открутить несколько винтов с обратной стороны корпуса и расщелкнуть телефон пластиковой картой. Что забавно — такие формы корпусов будто «унифицированы» среди производителей дешевых телефонов, никто, почему-то, не экспериментирует с корпусами в стиле а-ля Nokia N-серий.

Перед нашим взором открывается плата. К сожалению, я пока не видел на кнопочных смартфонах UART в открытом виде, иначе давно бы реализовал что-то типа такого. На плате мы можем заметить, что LTE-версия Nobby 240 работает на достаточно свежем Spreadtrum SC9820E с двумя 64-битными ARMv8 ядрами Cortex-A53 на частоте 1.3ГГц и GPU Mali T820 MP1, а также с LTE модемом. Чип выполнен по техпроцессу 28Нм, максимальное разрешение дисплея — 480×854 (т. е. DSI матрицы всё таки поддерживаются, параллельно с DBI). Весьма шустрый чипсет для девайса такого класса, его едва ли можно назвать «бабушкофонским», подобные характеристики были флагманскими для смартфонов ~2012 года. Для сравнения — простые кнопочники все еще работают на ARMv5 ядрах на частоте около 200-300МГц.
Дисплей припаян и приклеен к плате, подключен к процессору при помощи 16-битного протокола 8080, а не MIPI DSI, как в современных смартфонах. Его разрешение — классические 240×320. Поиск его замены скорее всего не составит труда, хотя точная модель контроллера мне пока неизвестна (предполагаю, либо ILI9341/ILI9325, либо ST7731, либо так любимый китайцами GC9306).

А вот клавиатура — болячка таких девайсов. По каким-то причинам, пластиковые толкатели кнопок очень быстро изнашиваются и кнопки начинают дребезжать (нажиматься несколько раз одновременно), либо не прожиматься. Это очень обидно и неприятно, но быстрофикс есть — напечатать крохотные проставки на 3D-принтере.
В остальном, конструктивно девайс вполне хорош и надежен. Корпус почти не поддается трещинам и царапкам, при аппаратных болячек его относительно легко диагностировать. Ну не замечательно ли? Давайте глянем, чем интересен девайс с точки зрения веб-разработчика!
❯ Веб-разработка
Для разработки нам потребуется совсем немного: любой текстовый редактор (хоть блокнот), FireFox 59 и platform-tools с adb для Android.
В первую очередь, на смартфоне необходимо включить режим отладки, который активируется набором кода *#*#33284#*#* (DEBUG) в номеронабирателе. После этого, в шторке уведомлений появится значок «жука». На некоторых устройствах, режим отладки активируется прямо в настройках. После этого, смартфон будет виден через adb и мы сможем дебажить на нем свои приложения!

Теперь нам необходимо накатить «древний» FireFox 59, это последняя версия с поддержкой WebIDE и возможностью деплоя под FireFox OS от 2018 года. WebIDE — это дебаггер и менеджер приложений для экосистемы Mozilla, активируется с помощью хоткея Shift + F8. Не забудьте отключить авто-обновление в настройках браузера!

После этого, нам необходимо связать WebIDE с нашим смартфоном с помощью «Remote Runtime». Однако перед этим, нам необходимо форварднуть adb-сокет с помощью команды:
adb forward tcp:6000 localfilesystem:/data/local/debugger-socket
После этого, мы жмем «Remote Runtime» и «Runtime Info», дабы получить информацию о нашем девайсе и убедится что всё нормально:

Создаём новое приложение и вперед творить! По правде сказать, я практически не знаю, каких приложений особо не хватает на KaiOS. ВК частично есть, YouTube почти полноценный, WhatsApp тоже реализован… не хватает разве что Telegram? Но я лично не смог бы полноценно чатится с телефона такого типа (и дело не в форм-факторе), поэтому я решил запилить ради прикола приложение-виджет для просмотра погоды в моём городе 🙂

У каждого приложения есть манифест, который объявляет используемые разрешения, значки и различные данные, необходимые для публикации приложения в магазине приложений. Существует три типа приложений: «web» (Hosted web apps — или, фактически, PWA), «privileged», и «certified» (приложения с доступом к критичным функциям смартфона типа СМС. В привилегерованном режиме, приложения могут обращаться к службам KaiOS, таким, как например Bluetooth и настройках сети.
«name»: «WeatherApp»,
«description»: «Погода OpenWeatherMap»,
«launch_path»: «/index.html»,
«type»: «certified»,
«icons»: «16»: «/icons/icon16x16.png»,
«48»: «/icons/icon48x48.png»,
«60»: «/icons/icon60x60.png»,
«128»: «/icons/icon128x128.png»
>,
«developer»: «name»: «monobogdan»,
«url»: » http://example.com «
>
>
Сначала я сверстал простенький интерфейс для приложения. Логика простая: поскольку это приложение-виджет, при его запуске отображается прелоадер (анимация загрузки), а как только данные загружены — программа показывает блок content и скрывает анимацию загрузки. Никаких фреймворков типа React я тащить не стал, но для более сложных приложений придётся продумывать более сложную логику для реализации диалогов.
Не ругайте за ! Я не веб-разработчик, адаптивные верстки делать не умею :))
body>
src=»progress.gif» width=»32″ height=»32″ style=»margin-top: 50%;» />
—
style=»display: none;»>
src=»https://pikabu.ru/story/rainy.png» />
>Плейсхолдерh3>
style=»margin: 5px»>
>Температура: h3>
>Ветер: h3>
Фетчить данные мы будем с OpenWeatherMap, хотя можно попросить доступ к API и у Gismeteo. Формат запросов у API очень простой — фетчим данные о погоде в локации относительно координат широты/долготы, при этом встроенный API для геокодинга поможет найти координаты того или иного района в городе. Делаем вот такой GET-запрос:
queryWeather(onReady)
var req = new XMLHttpRequest();
req.onreadystatechange = () => if(req.readyState == XMLHttpRequest.DONE) var json = JSON.parse(req.responseText);
И получаем вот такой ответ:
«coord»: «lon»: 46.7129,
«lat»: 38.2741
>,
«weather»: [
«id»: 804,
«main»: «Clouds»,
«description»: «пасмурно»,
«icon»: «04n»
>
],
«base»: «stations»,
«main»: «temp»: 280.43,
«feels_like»: 277.88,
«temp_min»: 280.43,
«temp_max»: 280.43,
«pressure»: 1016,
«humidity»: 86,
«sea_level»: 1016,
«grnd_level»: 822
>,
«visibility»: 10000,
«wind»: «speed»: 3.87,
«deg»: 37,
«gust»: 6.15
>,
«clouds»: «all»: 100
>,
«dt»: 1713137075,
«sys»: «type»: 1,
«id»: 7509,
«country»: «IR»,
«sunrise»: 1713147419,
«sunset»: 1713194930
>,
«timezone»: 12600,
«id»: 142549,
«name»: «East Azerbaijan»,
«cod»: 200
>
Конечно, разобрать его очень и очень легко. Обновляем представление нашего приложения (я не юзал селекторы):
updateWeatherData()
this.api.queryWeather((response) => this.loader.style.display = «none»;
this.content.style.animation = «myAnim 2s ease 0s 1 normal forwards»;
this.content.style.display = «block»;
var weather = «sunny»;
if( response.weather [0].main.includes(«Rain»))
weather = «rainy»;
if( response.weather [0].main.includes(«Cloud»))
weather = «cloudy»;
this.weatherIcon.src = weather + «.png»;
var textDesc = response.weather [0].description;
textDesc = textDesc.charAt(0).toUpperCase() + textDesc.substring(1);
this.weatherText.innerHTML = textDesc;
this.temperatureText.innerHTML += response.main.temp + ‘℃’;
this.windText.innerHTML += response.wind.speed + «м/с»;
>);
>
И получаем следующий результат:

Вся логика программы уложилась в 85 строк кода. Преимущества веб-подхода и «жабоскрипта» при грамотном использовании очевидны, согласитесь? Опять-же повторюсь, я не веб-разработчик, мои познания в JS ограничиваются «олдовым» стилем уровня начала-середины 2010х годов, я, вон, даже jquery тащить не стал.
❯ Рут
Изначально материал должен был состоять из двух частей: обзор «клиентской» части девайса с приложениями на веб-стеке и выкидывание B2G, дабы реализовать нечто подобное одной из моих более ранних статей. Но вендор смартфона подложил «свинью»: у устройства залочен загрузчик и разблокировать его штатными средствами невозможно. Вообще, инфраструктура FireFox OS имеет много общего с Android изнутри, так что я попробовал с помощью патчера magisk’а пропатчить бут и залить в него su… но увы, девайс валился на верификации signed-образа и отказывался прошивать раздел! За это жирнющий минус вендору.
Если хотите взять подобный девайс для моддинга и экспериментов, присмотритесь к девайсам на Android, или KaiOS на базе MT6572/SC7731 — те обычно разблокированы с завода. Например, год назад я сделал первую кастомную прошивку для Android-кнопочника и написал для него кастомный лаунчер.

Я лично буду очень рад, если ЕС обяжет вендоров смартфонов давать возможность заводской разлочки загрузчиков, иначе это ущемление в правах тех людей, которые покупают смартфон с изначально открытой системой!
❯ Заключение
Вот такой материал про KaiOS у нас с вами получился. Теперь вы и сами знаете, что девайс может быть интересен не только как «бабушкофон» или продвинутая звонилка, но и как платформа для реализации каких-то собственных прикольных фишек 🙂
Какие применения могут быть у такого девайса? Да самые разные! Например:
- Маленький фронтэнд для данных с микроконтроллера: тут уже и дисплейчик небольшой есть, и кнопки, а также GPU, если нужно показывать какие-то данные в 3D. Почему-бы и нет?
- BT-плеер в машину: пилим фронтэнд к ВК Музыке/Спотику или еще какому-либо сервису, коннектим по BT и получаем миниатюрный автомобильный самодостаточный плеер, который еще и аккумулятор относительно долго держит 🙂
- Часы с погодой: частичную реализацию этого проекта я уже представил в статье. Собственно, а почему-бы и нет? Многие смартфоны от Motorola и Sony с док-станциями сейчас так и используют. Почему бы не заюзать для этого и девайс на KaiOS?
Надеюсь вам было интересно! Пишите своё мнение, есть ли перспективы у смартфонов на KaiOS? Также у меня есть свой Telegram-канал, куда я выкладываю бэкстейдж со статей, различные заметки о ремонте, моддинге и программировании под девайсы прошлых лет и вовремя публикую линки на новые статьи. Подписывайтесь!
Насчёт машины
Друзья! Те читатели, которые подписаны на меня наверняка знают о том, что я коплю на покупку ТАЗика, дабы реализовать интересный проект с разработкой самопального ГУ «из того что было» по самому дешману. Сейчас у меня есть чуть более 100.000 рублей, из которых 8.000 рублей — донаты читателей! В Ейске, на юге, за такие деньги купить относительно живой по мотору и, что немаловажно, с +- целым дном тазик сложновато. Я даже Волгу и Москвич рассматривал как вариант, но Волга ушла, а у Москвича мотор не родной. Если вам нравятся мои статьи и вы хотите помочь материально будущему проекту — с помощью формы ниже можно помочь проспонсировать проект!
Если вы вдруг живете в Ейске или в 50км от Ейска и вы или ваши знакомые продают относительно живой ТАЗик (кроме классики, критерии — на ходу, чистые документы и не совсем панорамное дно. Машинка может быть помята, с плохим ЛКП и конечно другими косяками, машина ведь не новая!) — пишите в ТГ @monobogdan!
Статья подготовлена при активной финансовой поддержке TimeWeb Cloud. Не стесняйтесь пользоваться их услугами, если вам нужен VDS, выделенный сервер или иные облачные услуги. Подписывайтесь на меня и @Timeweb.Cloud, дабы не пропускать интересные технические статьи каждую неделю!
Показать полностью 15
DEgITx 16 дней назад
Не альтернатива пикабу или возвращение в 2007 (с минусами) — проект Talkvio. [Обновления]
![Не альтернатива пикабу или возвращение в 2007 (с минусами) - проект Talkvio. [Обновления] Сайт, Социальные сети, Интернет, IT, Разработка, Android, Приложение на Android, Длиннопост](https://cs13.pikabu.ru/post_img/2024/03/22/9/1711119838176217958.jpg)
Обновление в новом проекте Talkvio построенном на базе форума с более 250 000 сообщений из далекого 2007 года и уже большим количеством новых с момента создания нового движка в 2023 году. Отличается наличием минусов, есть возможность указывать свое отношение к автору и менять свое отношение через системы кармы и очков (что выгодно отличается от обычного лайканья постов). Есть пометки моего (авторский контент), поиск, блочный редактор с черновиками, черновики для комментариев, оповещения, фильтры для тех кто интересуется топами комментариев или постов, многочисленные разделы со свежим/лучшим/комментируемым/авторским, реверсные и прямые отображения комментариев, подписки на теги и на пользователей, избранное, увеличение изображений, оформление своей страницы, публикацию по расписанию, подъемы постов, случайная лента / случайные посты, сайт доступен на 2 языках, имеет темную и светлую тему, подсказки для новичков, живая панель комментариев, управление клавиатурой, скрытие просмотренных постов, и многое другое. Так же уже есть приложение на андроид. Многие вещи внедряются и дорабатываются и открыты для предложений. Реклама отсутствует как таковая. В будущем ресурс будет уделять гораздо больше вниманию авторскому контенту. Ссылка на ресурс и приложение на android в комментарии.
Новые улучшения и изменения:
Ответы в линейном отображении постов теперь фиксируются чтобы тот кто их делает видел получит ли автор поста или комментария ответ или нет, через крестик это можно закрыть.
Появились счетчики минусов и плюсов в профиле. Как и ранее на пикабу счетчик плюсов минусов под постом доступен для всех (не только для авторов).
![Не альтернатива пикабу или возвращение в 2007 (с минусами) - проект Talkvio. [Обновления] Сайт, Социальные сети, Интернет, IT, Разработка, Android, Приложение на Android, Длиннопост](https://cs13.pikabu.ru/post_img/2024/04/13/10/1713024727112943710.jpg)
Редактирование постов теперь доступно с основной страницы, теперь для этого не обязательно заходить в пост.
![Не альтернатива пикабу или возвращение в 2007 (с минусами) - проект Talkvio. [Обновления] Сайт, Социальные сети, Интернет, IT, Разработка, Android, Приложение на Android, Длиннопост](https://cs13.pikabu.ru/post_img/2024/04/13/10/1713024786166758982.jpg)
Счетчики того сколько человек поставил плюсов и минусов теперь доступны в профилях.
![Не альтернатива пикабу или возвращение в 2007 (с минусами) - проект Talkvio. [Обновления] Сайт, Социальные сети, Интернет, IT, Разработка, Android, Приложение на Android, Длиннопост](https://cs13.pikabu.ru/post_img/2024/03/03/8/1709473175110859245.jpg)
![Не альтернатива пикабу или возвращение в 2007 (с минусами) - проект Talkvio. [Обновления] Сайт, Социальные сети, Интернет, IT, Разработка, Android, Приложение на Android, Длиннопост](https://cs13.pikabu.ru/post_img/2024/03/21/10/1711039245151542270.jpg)
![Не альтернатива пикабу или возвращение в 2007 (с минусами) - проект Talkvio. [Обновления] Сайт, Социальные сети, Интернет, IT, Разработка, Android, Приложение на Android, Длиннопост](https://cs13.pikabu.ru/post_img/2024/03/03/8/170947320517211652.jpg)
![Не альтернатива пикабу или возвращение в 2007 (с минусами) - проект Talkvio. [Обновления] Сайт, Социальные сети, Интернет, IT, Разработка, Android, Приложение на Android, Длиннопост](https://cs13.pikabu.ru/post_img/2024/03/03/8/1709473217164442200.jpg)
![Не альтернатива пикабу или возвращение в 2007 (с минусами) - проект Talkvio. [Обновления] Сайт, Социальные сети, Интернет, IT, Разработка, Android, Приложение на Android, Длиннопост](https://cs14.pikabu.ru/post_img/2024/03/03/8/1709473226196715349.jpg)
Показать полностью 7
Посты о ремонте и моддинге ретрогаджетов.

18 дней назад
Жизнь после отвала eMMC. Часть 2: даём новую жизнь устройствам с полностью мёртвой памятью. Загружаем Android с MicroSD

Отвал флэш-памяти типа eMMC — весьма частая болячка смартфонов и планшетов, которая массово преследует современные девайсы на протяжении вот уже более 10 лет. Симптомы проблемы знакомы многим читателям: смартфон виснет на заставке, системные приложения регулярно вылетают, или настройки системы внезапно перестают сохраняться. Сам процесс замены флэш-памяти требует навыков перекатки и пайки BGA-чипов, оборудования (трафареты для реболла, программатор с колодками, опционально подогрев) и понимания того, как работает загрузчик той или иной аппаратной платформы, поэтому в СЦ за эту процедуру могут взять достаточно большую сумму. На некоторых девайсах менять память уже совсем невыгодно, особенно когда другой такой-же аппарат стоит полторы тысячи рублей на барахолке, но воспоминания о любимом девайсе порой гораздо дороже, чем сумма за ремонт смартфона. Год назад я уже писал материал о загрузке Android с MicroSD при условии того, что eMMC ещё подает хоть какие-то признаки жизни, а сегодня я вам расскажу о способе загрузить систему с флэшки уже после того, как чип флэш-памяти отказал и ушёл в read-only. Сегодня мы с вами: узнаем о том, какие типы флэш-памяти существуют и причины их отказа, разметим MicroSD-флэшку и запишем на неё образ системы, пропатчим пути монтирования в boot.img, а также узнаем, как теперь запускать наш смартфон и посмотрим, сможет ли он работать достаточно шустро с MicroSD флэшки! Интересно узнать, как вернуть жизнь таким легендам, как Google Nexus? Тогда добро пожаловать под кат!
❯ Почему отказывает флэш-память?
Как я уже говорил в вводном абзаце, проблема внезапно отваливающейся флэш-памяти существует вот уже более 10 лет. Ещё с выходом iPhone 3Gs/4, мастера познакомились с такой болячкой, как внезапное падение устройства в режим DFU и отказ прошиваться через iTunes. Ближе к выходу Galaxy S III, HTC Desire и Wildfire, LG Nexus возникла потребность в программаторах, поскольку чипы eMMC в этих смартфонах очень часто помирали «сами по себе» из-за косяков производителя флэш-памяти. Более опытная часть моих пользователей может вспомнить такие проблемы, как отказ входа в HSPL (загрузчик HTC), бесконечная загрузка с отказом прошиваться в режиме Odin на самсунгах, падение смартфонов на базе чипсетов Qualcomm в режим 9008 (QHSUSB_BULK), а также внезапное прекращение работоспособности девайса даже при наличии адекватного потребления и реакции на кнопку включения.

В относительно современных смартфонах используется два типа чипов флэш-памяти с разными протоколами: NAND и eMMC (в современных чаще используется UFS — наследник eMMC с дифференциальным протоколом, вместо MMC). Устройства конца 2000х годов чаще использовали флэш-память типа NAND с Legacy-протоколом, который требовал ручного управления SPARE-страницами и расчета кода коррекции ошибок (ECC), чем занималось отдельное периферийное ядро в процессоре, называемое NAND-контроллером. Момент, когда нужно «приговорить» флэш-память и перевести её в режим read-only решал не сам контроллер, а драйвер NAND в прошивке устройства — и обычно он был весьма лоялен даже к «сыпящейся» памяти. Кроме того, NAND-контроллер позволял практически напрямую взаимодействовать с чипом флэш-памяти, благодаря чему в загрузчиках типа U-boot есть команда для очистки таблицы Bad-блоков и низкоуровневого форматирования флэш-памяти, дабы в дальнейшем контроллер попробовал пересчитать бэды и, потенциально, вернул некоторое число блоков обратно в строй. Такой тип «флэшек» помирал значительно реже, в основном из-за того, что софт (на моём опыте) практически никогда не уводил флэшку в read-only, «добивая» её до последнего. Из минусов такого подхода — если флэш помирала совсем, то данные из нее можно было достать только с помощью программатора, да и то не факт.

В моей довольно большой коллекции нет ни одного смартфона с Legacy NAND, где флэш бы действительно «приехала», хотя на форумах мастеров иногда встречаются старые сообщения о замене флэши на телефонах Nokia.
Второй тип памяти появился примерно в начале 2010х годов и имя ему — eMMC. Фактически, eMMC — это адаптация интерфейса MMC для использования в виде обычных чипов памяти, а не карточек, совместимая с спецификацией ~SDHC. Если выпаять чип с телефона и припаять сигнальные линии к обычному SD-кардридеру на ПК — он будет работать и определяться как полноценный диск! Таким образом, на некоторых смартфонах можно заменить eMMC на MicroSD напрямую припаяв флэшку на место чипа к соответствующим сигнальным линиям. Однако работать такое будет только если у вашего смартфона «бутербродная» компоновка, где ОЗУ припаяна поверх процессора (MTK и Spreadtrum в пролете). В eMMC используется память типа NAND, которой управляет не чипсет, а встроенный в сам чип памяти контроллер, работающий с протоколом MMC и имеющий собственную прошивку и карту бэд-блоков. Такая флэш-память может самостоятельно уходить в режим read-only когда это посчитает нужным контроллер, зачастую не давая смартфону загрузится, но при этом потенциально сохраняет данные пользователя и позволяет их прочитать дома (сделав дамп памяти устройства и смонтировав раздел userdata в Linux). Однако всё равно иногда данные теряются безвозвратно. Нюанс в том, что состояние eMMC определяет сам контроллер в чипе — поэтому «оживить» его дома и вывести из read-only невозможно. Однако я слышал, что на некоторых «бракованных» чипах памяти (в основном Samsung 2012-2013 годов), которые ушли в read-only слишком рано, можно подпаяться к тест-поинтам программатором и прошить чуть более свежую прошивку с другой ревизии этого же чипа памяти. Флэшка, бывало, оживала.
В некоторых случаях, eMMC были бракованными с завода и помирали сами по себе (!) через короткое время (около года) после покупки устройства. Я знаю как минимум два примера массового брака флэш-памяти: смартфоны HTC 2011-2012 годов, которые время от времени страдали от валящихся чипов Hynix (это касается не всех устройств, многие дожили), хотя я лично видел не так много HTC’шек с дохлой памятью, так что здесь читатели-сервисники с опытом работы в те годы могут только подтвердить или опровергнуть мои слова. А вот подтвержденный пример — смартфоны и планшеты Samsung 2012-2014 годов. Galaxy S3 с артефактами на дисплее при включении, S4 Mini в 9008 или повисшие на заставке, S4 с теми же симптомами, S4 Zoom, которые практически все померли «сами по себе» после обновления до 4.4 KitKat, N8000… Добавьте к этому слабые NC-пятаки, которые срывает при попытке снять чип феном, близко расположенный «бутербродный» процессор, который легко «убить», если орудовать феном, компаунд… и по итогу многие мастера просто спиливали чип дремелем. А что ещё делать!?

По итогу, нам остаётся искать софтварные способы загрузить систему с внешней MicroSD флэшки. И я нашел два таких способа! Первый — предварительно подготовить образ boot.img и прошить его в смартфон вместо recovery, дабы если память ушла в read-only, мы могли просто «дуалбутнутся» во второй образ с пропатченными точками монтирования системных разделов на MicroSD. А о втором, к сожалению, знают лишь единицы, хотя это просто замечательный способ, который позволяет загрузить систему уже «пост-фактум» после ухода флэшки в read-only и требует некоторых манипуляций с fastboot! Давайте же рассмотрим его подробнее.

Нашим подопытным будет рабочий смартфон Alcatel OT-5020D 2013 года выпуска, который пока не подает признаков помирающей eMMC: к сожалению, смартфонов с полудохлой памятью и разлоченным бутом у меня не оказалось, дохлые флэшки я иногда меняю и сам 🙂 Но тем не менее, грузиться мы в любом случае будем с флэшки и вы сможете повторить все шаги в статье, дабы загрузить систему с MicroSD самому!
❯ Подготавливаем систему
Друзья! Для следующих действий, вам понадобится разблокированный загрузчик или устройство, на котором с завода загрузчик не заблокирован. Главный критерий — наличие режима fastboot.
- Какие устройства не подойдут: многие смартфоны на базе чипов Spreadtrum, а также часть смартфонов Samsung на Exynos. Ни те, ни другие частенько не имеют режима fastboot от слова совсем. У Samsung есть режим загрузки с MicroSD (т. н. T-Flash Mode), но ядро он не грузит.
- Какие устройства подойдут, но требуется подготовка: все смартфоны от Sony (исключение — Xperia Tipo, забагованный fastboot), Google Nexus (некоторые модели страдали из-за отвалов флэши), современные китайские новодельные noname-смартфоны (с вот таким патчем), Xiaomi, Meizu. Чипсеты: MediaTek 67xx/Qualcomm Snapdragon, возможно Kirin. Таким устройствам требуется предварительная разблокировка загрузчика.
- Какие устройства подойдут даже при условии уже мертвой флэш-памяти: большинство девайсов на базе чипсетов MediaTek прошлого десятилетия, особенно бюджетных: MT6572, MT6582, MT6592, MT6580, MT6570, MT6575, MT83xx, некоторые Spreadtrum. Это касается Fly, Explay, ZTE и многих других ультрабюджетных смартфонов тех лет. Загрузчик там разблокирован с завода, никакого секьюрбута и верификации загружаемых образов нет. Но не везде можно загрузится в fastboot напрямую (попробуйте громкость вверх и громкость вниз при включении — если сразу грузится в рекавери, то нужно до отказа eMMC включить ADB, если показывает менюшку fastboot, recovery, normal boot — значит все ок).
Список устройств для потенциальной возможности загрузки с SD весьма большой! Как понять, что eMMC «всё»?
- Смартфон не реагирует на зарядку и кнопку включения при заряженной АКБ: это не 100% показатель, но если поднимаются питальники с КП и потребление от кнопки есть ~0.1-0.3А — значит процессор вероятно пытается стартовать. Но не откуда. В таком случае, девайс поднять не получится — доступа к fastboot нет, флэшка полностью посыпалась. Исключение — некоторые Qualcomm’ы при наличии прожженного фьюза с завода, разрешающего загрузку с MicroSD могут стартовать ядро, но всё зависит от конфигурации aboot.
- Смартфон загружается и сразу вылетают приложения, настройки не сохраняются: явный показатель того, что флэша ушла в read-only потенциально не повредив данные. Если смартфон грузится в fastboot — его ещё можно оживить, но не факт что получится вытащить данные (из-за шифрования). Если после сброса до заводских настроек эффект остается тот-же — eMMC приехала 100%.
- Смартфон висит на заставке, сброс и прошивка не помогает: тоже явная причина: eMMC в read-only. В таком случае, не рекомендуется еще раз шить смартфон в надежде что все заработает, есть шанс что флэша посыпеться окончательно и вы потеряете доступ к fastboot.
Весьма всё просто, согласитесь? Как я уже сказал выше, на некоторых устройствах нужно сначала разблокировать загрузчик. Кое-где это, вероятно, получится сделать и при том что флэша ушла в read-only. Например, на устройствах Sony можно без проблем зайти в fastboot и разлочить устройство с помощью кода, полученного на сайте Sony (используйте VPN, если вы в РФ):

Как зайти в fastboot — вам придётся погуглить для конкретно своего устройства. Не нашли? Поищите как это делается на других смартфонах, которые работают на том же чипсете. Почти всегда можно зайти, если у вас включена отладка по USB с помощью команды:
adb reboot bootloader
Краткая справка: на устройствах Sony, в Fastboot можно зайти подключив устройство к ПК с зажатой громкостью вниз, на MTK громкость вверх или вниз, на HTC в HSPL, на Nexus’ах в фирменном загрузчике сразу режим Fastboot, на устройствах Tegra — включение с зажатой громкостью вверх, на смартфонах с чипсетом Intel есть fastboot, насколько помню зайти в него можно с помощью громкости вниз.
Команда для разблокировки загрузчика почти везде одна:
fastboot oem unlock
Вас могут запросить код разлочки или просто предупредить о последствиях такого действия. Как узнать, что бут разлочен?
fastboot getvar all
secure, locking и т. п. — отвечают за статус разлочки. Но даже если таких переменных нет, это не всегда значит, что загрузчик заблокирован. Возможно он разблокирован с завода 🙂
Теперь нам нужен образ раздела boot — boot.img. Его можно найти в файлах родной прошивки устройства, или, иногда, в zip-файлах кастомов. boot.img содержит в себе ядро Linux и небольшой раздел с файловой системой initrd (рамдиск), которая загружается в оперативную память и содержит в себе программы init, adbd, recovery, а также скрипты инициализации, которые управляют загрузкой Android и процессом зарядки (показывают анимацию, когда вы подключаете устройство выключенным к ЗУ. Да, в таком случае Linux тоже грузится!).
Если у вас есть доступ к fastboot, то попробуйте запустить его с помощью команды:
fastboot boot boot.img
Работать она будет не везде, на MTK её поддержка отключена в загрузчиках некоторых устройств. Если вы увидели на экране устройства USB Transferring — половину дела сделана! Если устройство показало лого и анимацию загрузки или ушло в ребут — потенциально, вы сможете загрузить Android с MicroSD. Если ошибка secure-boot — нужно сначала разблокировать загрузчик. Если unknown command — команда не поддерживается 🙁
Теперь у нас есть возможность загрузить ядро и пропатчить скрипты конфигурации, дабы изменить точки монтирования раздела /system/, /data/ и /cache/ на MicroSD-флэшку, вместо встроенной памяти.
❯ Записываем систему на MicroSD
Обратите внимание: Android очень интенсивно использует ресурс флэшки и постоянно перезаписывает сектора памяти, поэтому не поскупитесь купить нормальную MicroSD флэшку от, например, Transcend, Kingston или Samsung. Дешевые MicroSD флэшки очень-очень быстро (вероятно, за пару дней — это не шутка) выйдут из строя и придется делать всё заново!

Сначала, нам придется разбить флэшку на три раздела: /system/, /cache/, и /data/. Раздел system будет первым, cache — вторым, data — третьим. При этом раздел /sdcard/ не нужен — он автоматически маппится в /data/media/ на современных версиях Android. Сделать это можно как с ПК с помощью MicroSD-адаптера и fdisk/diskpart/gparted, так и с самого смартфона с помощью того же fdisk в busybox. Я решил это сделать с помощью другого вспомогательного смартфона с TWRP, где изначально был root-доступ через adb! Размеры выбирайте следующие: для системного диска чуть больше или по размерам с system.img (раздел read-only и не «растет» со временем), cache — 100-200Мб, userdata — всё оставшееся место на флэшке.

Разметили MicroSD? Теперь нам нужно записать на неё образ системы. Тут три пути: если у вас есть Linux-машина, то можете подмонтировать образ system.img из оригинальной прошивки и скопировать все файлы с сохранением прав, закинуть system.img в внутреннюю память другого смартфона с root-доступом и проделать все тоже самое, либо записать с помощью dd образ system.img напрямую в нужный нам раздел флэш-памяти. Я выбрал третий способ:
dd if=/sdcard/system.img of=/dev/mmcblk1p1

Разделы cache и userdata можно просто форматировать в ext4:
mke2fs -t ext4 /dev/mmcblk1p2
mke2fs -t ext4 /dev/mmcblk1p3
Готово! Необходимые для базовой работы разделы перенесены на MicroSD. Теперь, когда, у нас есть образ системы, нам нужно распаковать родной boot.img устройства и поменять точки монтирования. Я использую кухню MTKImgTools. Идём в Boot -> Unpack -> boot.img. В Unpack/boot/ появятся файлы нашего раздела boot:

Открываем файл init.rc (в случае MediaTek). Ищем строки с монтированием разделов вида emmc@system, emmc@cache, emmc@userdata и меняем их на /dev/block/mmcblk1p1, /dev/block/mmcblk1p2 и /dev/mmcblk1p3. На некоторых чипсетах, править нужно сразу fstab, или init..rc:

Готово! Собираем образ обратно с помощью Boot -> Pack -> boot.img и получаем образ, который нам и надо будет загрузить с помощью fastboot. Копируем boot.img в папку с adb и пробуем загрузить систему. Это будет основная команда для старта загрузки смартфона в будущем:
fastboot boot boot.img
Увидели бутанимацию? Значит система пошла загружаться, нужно лишь подождать первой загрузки 5-10 минут! Система висит на лого или уходит в ребут? Значит, возможно, вы неверно прописали точки монтирования, записали образ system или форматировали раздел userdata. Если система 4.4 и ниже, то можно изменить default.prop, заменив ro.secure на 0 и debuggable на 1. Если вы на Android 5+ — то заменить adbd (не требующий ключи авторизации) в /system/bin на вариант из TWRP и посмотреть logcat и dmesg. Монтируется ли /system/? Загружается ли app_process? На каком этапе стопорится? Всё это пригодится при дальнейшей отладке!


Например, такая ошибка при запуске adb shell означает то, что раздел /system/ не монтирован.
Ну а на моем девайсе система уже загрузилась и работает. Но насколько шустро? В комментариях читатели часто говорили, что из-за скорости MicroSD система будет не юзабельной. Насколько это правда? Давайте посмотрим!


Как мы и видим, /system/, /data/ и /cache/ на MicroSD. custpack и mobile_info, а также nvram трогать не нужно — если в родной флэше они не повреждены, то у девайса без проблем будет работать и сеть, и Wi-Fi.
❯ Можно ли пользоваться?
Наш девайс работает на базе Android 4.2 — казалось бы, совсем старенький дроид, но тем не менее ещё кое-что, да может. Alcatel OT — это бюджетный девайс из 2013 года, но работает он, на удивление, весьма шустро и приятно!

Начинаем с самых необходимых приложений — звонилка, контакты и галерея. Все эти приложения стартуют практически моментально, лишь иногда с небольшими лагами. Однако если поставить в браузере что-то скачиваться на фоне — конечно-же, система начнет лагать.

Как насчет браузера? Ставить последний хром, поддерживающий 4.2 смысла нет — уже и он открывает далеко не все сайты. Но те сайты, что пока ещё открывает стандартный браузер почитать ещё можно: например, opennet. На смартфонах с более свежим Android, браузер будет работать относительно адекватно. Зато с соц. сетями проблем особых нет. Telegram, конечно, может конкретно подвесить смартфон в процессе подгрузки картинок с каналов, но потом все будет нормально. Решение одно: отключить автоматическое кэширование картинок и видео!

С записью видео ситуация сложная. Даже в профессиональных камерах для 1080p рекомендуются карточки не ниже 10-класса (10Мб/с) и UHS-класса для 2+K видео. На нексусе, это скорее всего превратит девайс в лагодром даже при записе 720p видео: система в фоне так или иначе регулярно читает и записывает данные и рано или поздно мы упираемся в дисковой кэш.
Об играх с динамическим стримингом ресурсов можно забыть, если флэшка достаточно медленная — будут лаги.

А в динамике это всё выглядит так: