Что такое Deodex и Odex? Деодексирование и одексирование прошивок Android Как деодексировать прошивку с помощью jbart

Если вы активно интересуетесь миром Android, устанавливаете кастомные прошивки и различные моды, то наверняка уже слышали о том, что существуют прошивки Odex и Deodex, что это означает? Узнаете из данной статьи!

Что означает Odex, Deodex

Для чего нужен Deodex?

Немногая забегая на перед, чтобы все сразу расставить на свои места: Deodex приложений в прошивке необходим тем, кто хочет устанавливать различные моды — которые могут кардинально изменить внешний вид Android (изменить иконки, изменить строку уведомлений, добавить или убрать меню). Теперь же рассмотрим, что такое вообще odex и deodex.

Что такое Odex?

В любой программе есть так называемая исполнительная часть, которая выполняет введенные данные пользователя. В ОС Android данная часть вынесена в отдельный файл в classes.DEX

Однако как правило в официальных прошивках данная часть приложения вынесена наружу, для ускорения запуска системы и обработке в виртуальной машине Dalvik Virtual Machine (до Android 4.4). Если исполнительная часть вынесена наружу, то она называется ODEX. С приходом новой среды выполнения Android-приложений под названий ART (с Android Lollipop 5.0), большие изменения в работу приложений, но необходимость в deodex для любителей модов сохранилась.

Плюсы и минусы Odex и Deodex прошивок

Odex

  • — Odex, тяжелее модифицировать прошивку
  • + Odex, работает немного быстрее
  • + Odex, занимает меньше места для установки приложений

Deodex

  • — Deodex — если пошло что-то не так во время деодексации, то прийдестя перепрошить Android
  • + Deodex — легкая кастомизация прошивки
  • — Deodex — больше занимает памяти для установки приложений

Как получить Deodex прошивку?

Ниже будут представлены программы с помощью которых можно выполнить Deodex прошивки. Но для этого вам нужно немного подготовится.

  1. Вам необходимо скачать и установить Java JDK на компьютер
  2. Установите менеджер файлов Root Browser и с помощью его перейти в раздел /system и скопировать следующие папки во внутреннюю память или карту памяти:
    • /priv-app
    • /framework

Deodex прошивки с помощью JoelDroid Batch Deodexer

Версии Android : Lollipop 5.x.x
Необходимо для работы : NET Framework 4.5 и Java JDK
Скачать : JoelDroid Batch Deodexer

Как пользоваться JoelDroid Batch Deodexer

  1. Папки Android (app, priv-app, framework) скопировать в какую либо одну на компьютере (например MyRom)
  2. Запустить программу JoelDroid Batch Deodexer и указать расположение, нажав на «Browse», папки где находится (app, priv-app, framework)
  3. Нажать «Start Process»

Deodex прошивки с помощью Deodexer for Android Runtime

Версии Android : Lollipop 5.x.x, Marshmallow 6.x.x
Необходимо для работы : Java JDK
Скачать : Deodexer for Android Runtime

Как пользоваться Deodexer for Android Runtime

  1. Распаковать архив в котором находиться папка с программой
  2. Папки Android (app, priv-app, framework) скопировать в какую либо одну на компьютере (например system)
  3. Запустить программу Deodexer for Android Runtime и указать расположение папки где находится (app, priv-app, framework)
  4. Отметить для deodex: app, priv-app, framework
  5. Нажать кнопку Execute

Deodex прошивки с помощью Jbart

Версии Android : Ginerbread 2.3.x — Marshmallow 6.x.x
Необходимо для работы : Java JDK
Скачать : Jbart

Как пользоваться Jbart

  1. Распаковать архив в котором находиться папка с программой
  2. Запустить Jbart
  3. Скачать всю папку с /system c Android, переместить в на компьютер и запаковать в ZIP архив или же вам понадобиться прошивка упакованная в ZIP
  4. Указать ZIP архив
  5. Выбрать версию Android (Rom API)
  6. Внизу справа нажать на «D — (Deodex)»

Вот и все! Больше статей и инструкций читайте в разделе Статьи и Хаки Android . Оставайтесь вместе с сайтом Android +1 , дальше будет еще интересней!

Каждый из вас не раз слышал слова «deodex» или «odex». Обычно, они встречается там, где выкладываются различные прошивки для вашего устройства, например, на XDA-Developers или 4pda. Так что же значит, это DEODEX или ODEX? В чем же их отличия? Как сделать DEODEX? Ответы на эти и другие вопросы вы найдете в очередном выпуске дайджеста «Что такое...».
Odex (Optimized Dalvik Executable File) - это файл, находящийся в одной папке с системными приложениями, который хранит в себе код самой программы. Как известно, каждой программе необходима инструкция, благодаря которой, она (программа) будет выполнять ту или иную функцию, работу. Именно это и есть код программы, о котором я рассказал ранее. При желании модификации какого-либо системного файла вам нужно будет при odex-прошивке «копаться» и в самом odex-файле, и в.apk. Отсюда становится ясно, что процесс этот будет весьма не легким. Именно по этой причине была реализована возможность deodex-прошивки.

Как вам уже известно, в при odex прошивке файлы хранятся «вразброс». Однако при deodex такого беспорядка, так сказать, нет. Все файлы в deodex хранятся подобно.zip архиву, но в нашем случае «запакованы» в.apk. По этой причине разбирать приложение для дальнейших модификаций становится легче, и из-за того, что все запаковано в одном месте, deodex-прошивка, может быть, будет занимать меньше места.

Однако, бесконечно хвалить deodex тоже нельзя. Главным минусом deodex является то, что приложения загружаются чуть дольше, чем на odex. Скорее всего, пользователь не заметит этого. Но не могу не отметить, что одновременно преимуществом odex и недостатком deodex является то, что все системные приложения в odex оптимизированы под конкретное устройство самим производителем. А это, несомненно, плюс odex-прошивки.

Чуть не забыл упомянуть, что при установке уже готовых различных модификаций в систему под ваше устройство, вам необходимо иметь прошивку deodex.

Наверное, при таком раскладе смысл терминов ясен. И готов поспорить, что некоторым уже захотелось попробовать deodex. Инструкций по deodex прошивки в Мировой Паутине огромное количество. Однако отправлять вас искать в Google их я не посмею, а просто молча напишу весь этот процесс, стараясь выделить все мелочи.

Инструкции под разные версии Android не одинаковые. По причине того, что на моем девайсе установлена версия Android 5.0 Lollipop, я напишу инструкцию по deodex именно для этой версии.

  1. Для начала нам нужно скачать на свой ПК специальную утилиту JoelDroid Lollipop Batch Deodexer. Для работы данной утилиты необходима программа Java . Отмечу, что в частых случаях, приложение Java неправильно и некорректно прописывает себе путь. По этой причине, вам необходимо собственно ручно прописать этот путь по этой инструкции .
  • После этого, нам нужно установить на свой девайс, работающий на Android 5.0 Lollipop, любой файловый менеджер, через который нужно скопировать в отдельную папку на SD-карте, три основные системные папки - APP, PRIV-APP, FRAEMWORK. Находятся они в корневой папке System.


  • Далее нам необходимо создать в корне любого внутреннего накопителя на вашем ПК папку MyROM. После чего создаем в этой папке другую папку, но уже с названием System. По идее, у вас должен получиться следующий путь - E:\MyROM\system. Где «Е» ваш внутренний накопитель (жесткий диск)
  • Те системные папки, которые мы копировали во втором пункте нужно переместить в папку E:\MyROM\system.
  • Теперь мы, по идее, все подготовили, и уже можем приступать к пункту ДЕОДЕКСАЦИЯ.
  • Запускаем ранее установленную утилиту JoelDroid Lollipop Batch Deodexer.
  • Нажав кнопочку «Browse» в утилите, нам необходимо показать путь к E:\MyROM\system
  • Путь указан, все готово. Нам остается нажать лишь клавишу «Start Prosecc», после чего деодексация начнет осуществляться. На данную процедуру уходит порядка 10-15 минут.
  • После окончания деодексации нам нужно получившиеся файлы, которые находятся по пути E:\MyROM\system, скопировать на флэшку формата MicroSD на своем устройстве.
  • Далее нам нужно скачать AROMA FileManager и установить его через кастомное рекавери на своем устройстве. Но прежде чем установить, нам нужно в разделе Mount выбрать пункт System, если он не выбран.
  • После всего этого мы должны перейти в корень файловой системы и из папки System папки APP, PRIV-APP и FRAEMWORK удалить, именно удалить, так как при копировании папки ARM останутся, и весь процесс, считайте, пошел насмарку.
  • Далее копируем ранее перенесенные в пункте 9 полученные deodex папки в папку System в корне всей файловой системы.
  • После этого нам нужно прошить скрипт, который выставляет права папкам (RWXRX-RX), .apk файлам и.xml файлам (RW-R-R)
  • Далее нам нужно сделать wipe cache и wipe dalvik/art. Перезагружаем устройство и радуемся полученной deodex прошивке.

  • Убедиться, что у вас установлена DEODEX - прошивку можно по следующей, небольшой инструкции:D


    Вполне считаю, что самое основное про термины ODEX и DEODEX я рассказал, и на этом статью можно закончить. Всех благодарю за внимание, прошу оценить статью, всем удачного дня и удачного ЛЕТА!

    Своего Android планшета или телефона обращали внимание на то, что прошивки бывают odexed и deodexed . И мало кто понимает, что скрывается за этими понятиями, и какие преимущества и недостатки несет с собой тот или иной тип прошивки.

    Сегодня я попытаюсь простыми словами объяснить, что же такое odex и deodex, и зачем оно нужно.

    Если вы заглянете в папку с системными приложениями на планшете или телефоне со стоковой (заводской) прошивкой, то заметите, что каждое приложение имеет кроме apk-файла, его двойник, odex-файл. Например, файлу applikatoin.apk соответствует файл applikatoin.odex.

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

    Все приложения в системе Android написаны (закодированы) на языке Java и для того, чтобы мозг устройства – его процессор смог выполнить этот Java код, он переводится на понятный для процессора язык виртуальной Java-машиной "Dalvik".

    В деодексированной прошивке код находится внутри apk файла. Apk файлы упакованы так же, как и обычный zip файлы, поэтому деодексированная прошивка обычно имеет меньший размер.

    Вы уже, наверное, и сами поняли, в чем преимущество odexed прошивки. Ее системные приложения уже оптимизированы для работы на конкретном оборудовании.

    Зато код, который содержится в деодексированном приложении, может запускаться на любом android устройстве и такие программы проще модифицировать. Например, чтобы заменить в нем изображения, достаточно распаковать apk файл, как обычный zip архив, заменить картинки и упаковать приложение снова. С odexed приложениями такой номер не пройдет – после подобных изменений программа может перестать запускаться вообще.

    Система Android при первом запуске системных приложений deodexed прошивки, извлекает из них код, перекомпилирует и сохраняет в специальном месте: в папке dalvik-cache и потом берет уже готовый код для нужного apk-файла из этой папки. Поэтому и рекомендуется при перепрошивке планшета или телефона делать очистку dalvik-cache (clear dalvik-cache) – программа в новой прошивке может измениться, а система будет при ее запуске использовать старый код. И поэтому так долго запускаются deodexed прошивки первый раз после их установки на устройство и очистки dalvik-cache.

    Кроме того, считается, что odexed прошивки работают быстрее, чем аналогичные но, деодексированные.

    В этой небольшой заметке мы расскажем нашим читателям о деодексировании прошивок для Android с помощью jBart, а также о разнице между ODEX (одекс) и DEODEX (деодекс) прошивками. Для начала давайте разберемся что же понимается под терминами odex / deodex, обратившись для этого по следующим ссылкам:

    На момент написания этой заметки актуальной версией была jBart v1.8.9 - "Программа предназначена для автоматизации процесса перевода прошивок на базе ОС Андроид. Поддерживаются версии Андроид от 2.х.х до 4.х.х (включая Андроид 4.4 KitKat). Ядро программы составляет модифицированный apktool. Кроме перевода прошивок присутствует возможность деодексирования прошивок, а также работа с одиночными apk и jar файлами из прошивок."

    Не затягивая повествование надолго - перейдем к практическому примеру. "Тренироваться" мы будем на прошивке от МТС о котором мы писали не так давно. Первым шагом мы тем или иным образом должны скачать с планшета папки /system/app и /system/framework, а также файл build.prop. который можно найти в папке system. Для копирования некоторых из частей прошивки возможно потребуются права root (на Oysters T7V 3G их с легкостью можно получить при помощи приложения motochopper , которое вы без труда сможете найти в поисковиках). После того как мы скачали необходимые файлы и папки - размещаем их в каталоге system и запаковываем в архив - system.zip , таким образом, чтобы корень архива содержал папку system, а уже внутри нее были подпапки app, framework и папка bulid.prop:

    Выбираем корректную версию ROM API (т.е. версию Android), в нашем случае - это 4.2.x, нажимаем кнопку Deodex и ждем. По завершении операции архив с деодексированной прошивкой будет лежать в jBART-master\output\deodexed_system.zip. Как видно, файлы прошивки уже не содержат файлов.odex, а только.apk. Теперь можно переходить к их модификации, переводу, редактированию и т.п. изменениям. Но это уже тема совершенно для другой заметки. Подводя итог, отметим, что с помощью jBart и нескольких несложных операций - мы научились получать из одексированной прошивки деодексированную, т.е. "пользовательскую". Файлы в которой каждый может модифицировать в соответствии со своими желаниями и потребностями.

    Пользуясь разными Android прошивками, Вы наверняка встречались с такими понятиями как ""odexed"" и ""deodexed"". И часто, при совершении каких либо манипуляций с прошивкой, нужно знать она ""odexed"" или ""deodexed"", чтобы не натворить глупостей. Так что скрывается за этими двумя терминами?

    Оdexed ROM

    Если прошивка имеет маркировку odexed, тогда в папке системных приложений /system/app Вы встретите файлы с расширением .odex . Это расширение расшифровывается как ""Optimized Dalvik Executable File"". Помимо нормального APK файла вы найдете его.odex копию. Например, Browser.apk и browser.odex.

    Что такое.odex файл?

    Этот файл в первую очередь служит для организации структуры любого приложения, содержит в себе инструкции приложения, и позволяет Android быстро добраться к ним без лишнего поиска и извлечения из.apk файла. Odex файлы напрямую загружаются в кэш виртуальной Java-машины “dalvik”, это позволяет системе работать на много быстрее.

    Преимущества Оdexed прошивки

    Приложения запускаются гораздо быстрее, поскольку их код заранее загружается в кэш dalvik. Размер.apk файлов небольшой, поэтому они занимают меньше места.

    Недостатки Оdexed прошивки

    Приложение modding/themes/hacking становится гораздо сложнее, поскольку код теперь находится в двух разных местах. Если Вы удаляете какое либо приложение, .odex файл тоже нужно удалить. Если его не удалить, могут возникать ошибки.

    Deodexed ROM

    Что касается этого типа прошивки, то все инструкции и код к приложениям находится в.apk файлах. Код, который хранился в.odex файле теперь заложен в.apk под названием classes.dex .

    Преимущества Deodexed прошивки

    Deodexed намного проще для modding/themes/hacking, поскольку весь код теперь находится в одном.apk файле. Системные приложения проще удалять, поскольку нужно удалить всего один APK файл.

    Недостатки Deodexed прошивки

    Приложения стартуют медленнее. Но не только приложения, а и сама система загружается дольше, поскольку содержимое приложений загружается из системы, а не напрямую.

    Android прошивки, которые поступают напрямую от производителей разных устройств в основном odexed. Кастомные прошивки, в 9 случаев из 10, наоборот deodexed. А получаем мы то, что odexed прошивки обладают лучшей скоростью работы, Deodexed больше приспособлены для хаков, моддинга и других манипуляций. Вот так, коротко о главном.

    Читайте также: