» »

System img ext4 распаковка. Кастомный Android: делаем свою прошивку из стоковой, не копаясь в исходниках. Прошивка через TWRP

14.02.2020

Хотите попробовать себя в создание, редактирование прошивок на Android, тогда программа Samsung Root Firmware Replacer поможет в создание прошивок!

Коротко о программе Samsung Root Firmware Replacer и ее возможностях

С помощью данной программы Вы сможете:

  • Распаковывать прошивки Samsung
  • Одексировать прошивку
  • В автоматическом режиме встроить Root права
  • Автоматически наполнять прошивку своими файлами
  • Заморозить проект, а потом продолжить над ним работу
  • Упаковать прошивку
Необходимые компоненты и условия работы Samsung Root Firmware Replacer Обзор и описание функций Samsung Root Firmware Replacer старт программы

1. Перейдите в папку с программой Samsung Root Firmware Replacer, правый клик открыть в терминале

2. В терминале введите команду

3. Перед Вами откроется интерфейс программы

4. Если запустили программу первый раз то выполните - Конфигурация настроек

Работа в программе Samsung Root Firmware Replacer

Пункт Распаковать прошивку *.tar.md5 - распаковывает прошивку, для этого переместите файл в папку unpack_tar_md5 , после чего все файлы извлекутся, а файл factoryfs или system переместяться в input_img

пункт Создание *.img с вашего Android (нужен Android) - позволяет создать прошивку с вашего текущего состояния Android. Для работы данного пункта необходимо иметь Android подключенный к ПК с включенной отладкой USB.

Данный пункт имеет подменю

Пункт Создание *.img с оригинальной прошивки позволяет изменять готовые прошивки, для этого перенести любой IMG файл в папку input_img.

Данный пункт также имеет свое подменю

Пример использования программы Samsung Root Firmware Replacer

В данном примере идет создание прошивки с текущего состояния Android

1. Подключить Android к ПК

2. Запустить программу

3. Выбрать пункт Создание *.img с вашего Android (нужен Android)

4. Выбрать Снять образ c Android и распаковать img

5. Выбор раздела с которого будет сниматься образ

6. Подождите 6-7 минут пока снимется образ и переместится на ПК.

Важно! На смартфоне или планшете, а также ПК, должно быть достаточно памяти чтобы снять образ. Размер образа может занимать от 2МБ до 2ГБ

7. После того как сняли образ, можно его модифировать, если это нужно (встроить Root), можете его обратно упаковать, для этого

8. Выбрать пункт Упаковка проекта в img

9. Укажите размер и название прошивки.

  • Размер раздела указывать таким образом, от размера блока поделить на 1024 и результату дописать букву M.

  • Название должно соответствовать названию, который вы использовали для изменения

11. Также не забудьте скопировать ядро с вашего Android, для этого воспользуйтесь пунктом - Снять образ c Android - boot.img или zImage

12. После всех манипуляций необходимо собрать прошивку в TAR.MD5

13 В главном меню выбрать пункт Запаковать прошивку *.tar.md5

14 Прошивка в программе Samsung Root Firmware Replacer приготовлена, можете

Думаю практически у каждого пользователя андроид смартфона появлялось желание создать (отредактировать) прошивку под свои нужды и желания.
Так вот в данной статье мы и рассмотрим принцип редактирования прошивки для CWM (в zip формате)

Подготовка:

В первую очередь необходимо определиться какую прошивку будем брать за основу. Я советую использовать офф. прошивку в зипе. Почти для каждого распространённого девайса существует чистая прошивка + root.
(я буду отталкиваться именно от данного варианта)
- Когда жертва (прошивка) выбрана её необходимо скачать в любое удобное вам место на ПК (распаковывать не стоит)
- Также нам потребуется архиватор, советую использовать и лучший в своём роде текстовый редактор .


---
что да как:


META-INF
system
boot.img - ядро системы

system
её структура:
app - системные приложения
bin - ресурсы самой системы
etc
fonts - Системные шрифты
framework
lib - библиотеки системы
media
usr
xbin
build.prop


---
Приложения


-Добавляем софт в прошивку:

data/app .so .
system/app system/lib .
-Удаляем софт из прошивки:
app


---
Язык и версия прошивки

Копируем файл build.prop на рабочий стол. Открываем его блокнотом и находим строчки

ro.product.locale.language=en
ro.product.locale.region=US


для русского языка необходимо сделать так:

ro.product.locale.language=ru
ro.product.locale.region=RU


название своего мода вписываем в строку

в том же build.prop

---
графика

Вся графическая часть прошивки хранится в двух файлах
framework-res.apk путь к файлу systemframework и SystemUI.apk по пути systemapp. А графическая часть приложения настройки хранится естественно в приложении Settings.apk.
Принципы распаковки, редактирования и сборки файлов с расширением.apk можно изучить .


---
Скрипты и твики (ускорение и оптимизация системы)

Большая часть настроек проводится в файле build.prop , по этому поводу есть .
Так же если ваше ядро поддерживает init.d (об этом можно узнать на форуме о вашем девайсе) есть ряд скриптов для оптимизации системы, один из них описан и в данной статье


---
Замена шрифтов системы

Как выше излагалось все шрифты содержаться в папке fonts , основные шрифты это: DroidSans.ttf и DroidSans-Bold.ttf их можно заменить любыми шрифтами из нашего сайта переименовав их аналогично вышеуказанным и переместить с заменой в архив с прошивкой в папку fonts .


---
Ядро

Теоритически достаточно заменить boot.img своим, НО в некоторых случаях Ядра сопровождаются дополнительными скриптами.
По этому советую ничего не делать если есть какие либо сомнения.


---
Полезные ссылки:
-
-
-
-
-
-
-
-
-

Адекватная критика и дополнения приветствуются


pan_ataman pan_ataman

2013-05-20T14:06:49Z 2013-05-20T14:06:49Z
---
что да как:

Открывая архив с прошивкой вы видите следующее:
META-INF - в папке хранятся скрипты установки прошивки
system - папка со всеми файлами прошивки (приложения, твики, скрипты и т.д.)
boot.img - ядро системы

Практически все манипуляции проводятся в папке system
её структура:
app - системные приложения
bin - ресурсы самой системы
etc - Скрипты, твики, конфиги, профили и настройки системы
fonts - Системные шрифты
framework - здесь хранятся главные файлы системы (графика, настройки текста анимации и т.д)
lib - библиотеки системы
media - файлы мультимедиа (мелодии уведомлений, анимация загрузки, обои и т.д)
usr - настройки не изменяемые в дальнейшем системой (работают в режиме "только чтение")
xbin - опять же системные конфиги и прочие твики
build.prop - инфа о системе, настройки локали и производительности системы.


---
Приложения

Перед тем как добавлять/удалять софт в систему, необходимо проверить деодексирована ли ваша прошивка (то есть проверить наличие файлов.odex в папке app. Если оные в наличии, то необходимо от них избавиться по .
-Добавляем софт в прошивку:
Прежде всего необходимо установить себе в смарт те программы которые вы хотите добавить в сборку.
После установки достаём их из системы при помощи Root Exporer и его аналогов, находятся они по пути data/app , так же нам понадобятся их либы (если они конечно есть) они находятся по пути data/data. Находятся они в одноимённой приложению папке и имеют расширение .so .
Затем изъятые.apk файлы кладем в архив по пути system/app и файлы с расширением.so (lib"ы) по пути system/lib .
-Удаляем софт из прошивки:
Тут всё просто, заходим в папку app - определяемся что нам не нужно и удаляем весь ненужный софт (систему лучше не трогать)


---

Все прошивки для планшетов на процессоре Allwinner имеют один и тот же формат img (IMAGEWTY).

После долгих поисков я все-таки нашел программу, которая позволяет разобрать и собрать прошивку для планшетов на базе Allwinner. Называется она unPacker

Перейдем непосредственно к разборке файла прошивки.

Разборка IMG файла

Для разборки потребуется:

  • Файл самой прошивки
  • Программа unPacker, которую можно скачать (Для Allwinner a31s можно использовать imgRePacker)

Скачиваем архив и распаковываем. Запускаем программу unPacker.exe

Перетаскиваем в это окно наш файл и ждем распаковки.

После окончания распаковки появится новая папка название «прошивки.img.dump»

В папке out есть файл system.fex -это файл с системными файлами(папка system) . Он то нам и нужен.

Редактирование файла system.fex

Для редактирования этого файла нужна nix система и утилита для конвертации, которую можно скачать

Создаем в домашней директории папку в которой будем редактировать нашу прошивку. Назовем ее например NEW. Теперь распаковываем файлы из архива ext4_utils.zip в папку NEW. Запускаем терминал и набираем

Программа скомпилируется и мы получим инструмент для редактирования Sim2img. Теперь кладем в папку NEW наш файл system.fex и переименовываем его в sytsem.img

Вводим в терминале

./simg2img system.img output.img

Теперь у нас есть файл output.img . Теперь создаем папку например с названием sys

И монтируем туда наш файл output

sudo mount output.img sys

Теперь в папке sys находятся файлы, которые можно редактировать. Например можно внести изменения в файл build.prop, которые улучшат работу системы.

После редактирования начинаем сборку

./mkuserimg.sh -s sys/ ./factoryfs_custom.img ext4 ./temp 512M

Полученный файл factoryfs_custom переименовываем в system.fex.iso

примечание: можно аналогично редактировать и другие файлы образов (boot и bootloader)

Сборка

Теперь что бы собрать отредактированные файлы в необходимый для прошивки формат, нужно файл system.fex.iso поместить с заменой в папку (на Windows) _iso и перетащить папку

Практически у каждого пользователя android смартфона появлялось желание создать или отредактировать прошивку под свои нужды и желания. В данной статье мы и рассмотрим принцип редактирования прошивки для CWM (в zip формате).

Подготовка:

В первую очередь необходимо определиться какую прошивку будем брать за основу. Лучше использовать офф. прошивку в зипе. Почти для каждого распространённого девайса существует чистая прошивка + root.
Когда прошивка выбрана её необходимо скачать в любое удобное вам место на ПК (распаковывать не стоит).
Также нам потребуется архиватор, советую использовать 7zip и лучший в своём роде текстовый редактор Notepad++ .

Структура прошивки:

Открывая архив с прошивкой вы видите следующее:
META-INF - в папке хранятся скрипты установки прошивки.
system - папка со всеми файлами прошивки (приложения, твики, скрипты и т.д.).
boot.img - ядро системы.

Практически все манипуляции проводятся в папке system , её структура:
app - системные приложения.
bin - ресурсы самой системы.
etc - Скрипты, твики, конфиги, профили и настройки системы.
fonts - Системные шрифты.
framework - здесь хранятся главные файлы системы (графика, настройки текста анимации и т.д).
lib - библиотеки системы.
media - файлы мультимедиа (мелодии уведомлений, анимация загрузки, обои и т.д).
usr - настройки не изменяемые в дальнейшем системой (работают в режиме "только чтение").
xbin - опять же системные конфиги и прочие твики.
build.prop - инфа о системе, настройки локали и производительности системы.

Приложения:

Перед тем как добавлять/удалять софт в систему, необходимо проверить деодексирована ли ваша прошивка (то есть проверить наличие файлов.odex в папке app. Если файлы есть, то необходимо от них избавиться вот по этой инструкции .
Добавляем софт в прошивку:
Прежде всего необходимо установить себе в смарт те программы которые вы хотите добавить в сборку. После установки достаём их из системы при помощи Root Exporer и его аналогов, находятся они по пути data/app , так же нам понадобятся их либы (если они конечно есть) они находятся по пути data/data . Находятся они в одноимённой приложению папке и имеют расширение .so . Затем изъятые .apk файлы кладем в архив по пути system/app и файлы с расширением .so (lib"ы) по пути system/lib .
Удаляем софт из прошивки:
Тут всё просто, заходим в папку app - определяемся что нам не нужно и удаляем весь ненужный софт (систему лучше не трогать).

Язык и версия прошивки:

Копируем файл build.prop на рабочий стол. Открываем его блокнотом и находим строчки:

ro.product.locale.language=en
ro.product.locale.region=US

для русского языка необходимо сделать так:

ro.product.locale.language=ru
ro.product.locale.region=RU

название своего мода вписываем в строку

в том же build.prop

Графика:

Вся графическая часть прошивки хранится в двух файлах framework-res.apk путь к файлу systemframework и SystemUI.apk по пути systemapp . А графическая часть приложения настройки хранится естественно в приложении Settings.apk .

Скрипты и твики (ускорение и оптимизация системы):

Большая часть настроек проводится в файле build.prop , по этому поводу можно прочитать . Так же если ваше ядро поддерживает init.d есть ряд скриптов для оптимизации системы, один из них описан в этой статье (оптимизация оперативной памяти) и в данной статье Скрипты-твики для init.d

Замена шрифтов системы:

Как выше излагалось все шрифты содержаться в папке fonts , основные шрифты это: DroidSans.ttf и DroidSans-Bold.ttf их можно заменить любыми шрифтами переименовав их аналогично вышеуказанным и переместить с заменой в архив с прошивкой в папку fonts .

Ядро:

Теоретически достаточно заменить boot.img своим, но в некоторых случаях Ядра сопровождаются дополнительными скриптами. По этому советую ничего не делать если есть какие либо сомнения.



Интерполяция , интерполирование — в вычислительной математике способ нахождения промежуточных значений величины по имеющемуся дискретному набору известных значений.

Многим из тех, кто сталкивается с научными и инженерными расчётами, часто приходится оперировать наборами значений, полученных опытным путём или методом случайной выборки. Как правило, на основании этих наборов требуется построить функцию, на которую могли бы с высокой точностью попадать другие получаемые значения. Такая задача называется аппроксимацией . Интерполяцией называют такую разновидность аппроксимации, при которой кривая построенной функции проходит точно через имеющиеся точки данных.

Существует много конечно-разностных методов интерполяции. Наиболее
распространенным является метод Ньютона для интерполяции «вперед» (метод Ньютона - Грегори). Интерполяционный полином в этом случае имеет вид:

Коэффициенты С находим по формуле:

Реализация программы на языке C#:
using System; namespace Interpolation { class Program…

Визуализация алгоритмов cортировки

Программа разделена на два потока в одном из которых выполняется сортировка, а в другом перерисовка графического интерфейса. После нажатия на кнопку «Сортировать», в программе вызывается метод «RunSorting», в котором определяется алгоритм сортировки и создается новый поток с запущенным в нем процессом сортировки.
private void RunSo…

Качер Бровина на КТ819Г

Сегодня я хочу показать свой Качер, который я делал на прошлых зимних каникулах. Описывать весь процесс изготовления не буду, так как в интернете есть много статей. Напишу только об основных его параметрах.

Ниже несколько фото сделанных во время сборки устройства.

Катушка намотана проводом 0,08 мм примерно 2000 витков на ПВХ трубе диаметром 50 мм и высотой 200 мм.

В качестве терминала была использована пластина из старого жесткого диска. Все остальное собиралось по схеме которая находится в самом низу страницы.

Первый вариант питался от блока питания старого компьютера, напряжением 12 В. Затем же был сделан отдельный блок питания, напряжением в 30 В и со встроенным охлаждением.

Схема устройства:

Что такое CORS и как его использовать

Совместное использование ресурсов (CORS) — это спецификация W3C, которая позволяет осуществлять междоменную связь в браузере. Создавая поверх объекта XMLHttpRequest, CORS позволяет разработчикам работать с одинаковыми идиомами как запросы с одним доменом. Вариант использования для CORS прост. Представьте, что на сайте alice.com есть некоторые данные, которые сайт bob.com хочет получить. Этот тип запроса традиционно не допускается в соответствии с той же политикой происхождения браузера. Однако, поддерживая запросы CORS, alice.com может добавить несколько специальных заголовков ответов, которые позволяют bob.com получать доступ к данным. Как видно из этого примера, поддержка CORS требует координации между сервером и клиентом. К счастью, если вы являетесь разработчиком на стороне клиента, вы защищены от большинства этих деталей. В остальной части этой статьи показано, как клиенты могут выполнять запросы с кросс-началом и как серверы могут настраивать себя для поддержки CORS. Продолжени…