В чём состоит разница между Odex и Deodex? Что такое odex и deodex в Android Что такое деодексированная прошивка.

Если вы являетесь не просто рядовым пользователем устройства на базе Android, а любите устанавливать различные прошивки, то наверняка вам ранее приходилось слышать или читать на различных форумах и сайтах об "одексированных" и "деодексированных" прошивках. В чем же разница? Если говорить коротко, то Deodex прошивки лучше приспособлены для их модификации. Разработчик деодексированной прошивки может самостоятельно изменять внешний вид значков, настраивать различные меню и так далее. Расскажем обо всем подробнее.

Что такое Deodex?

В прошивке Android, как и в любом другом приложении, имеется специальная "исполнительная" часть, которая предназначена для выполнения заранее запрограммированных действий. Как вы сами видите, данные команды вынесены в отдельный файл classes.DEX, который присутствует в прошивке.

Зачастую производитель в официальных прошивках выносит этот файл за пределы прошивки, для ускорения работы и уменьшения занимаемого прошивкой объема памяти. Переход на Android 5.0 с исполняющей средой ART существенно изменил процесс запуска и установки приложений, однако само понятие odex и deodex было сохранено.

Достоинства и недостатки Odex и Deodex прошивок


- Более сложный процесс модификации прошивки
+ Небольшой прирост производительности прошивки
+ Экономия места при установке программ


+ Упрощенная кастомизация прошивки
- Необходимо больше места для установки приложений

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

Прежде чем заняться процессом деодексации прошивки, необходимо выполнять ряд условий. Первым делом нужно установить и настроить на компьютере . Далее нам нужно получить Root-права на нашем мобильном устройстве, установить любой файловый менеджер с доступом к системному разделу и скопировать следующие папки в память устройства или на карточку microSD.

/app
/priv-app
/framework


Deodex при помощи JoelDroid Batch Deodexer

Данная утилита будет работать только с девайсами на базе Android 5.0 и новее. Также необходимо установить и скачать само приложение .


  • Распакуйте архив с утилитой ]JoelDroid Lollipop Batch Deodexer V 2.5.

  • Сохраненные ранее папки app, priv-app, framework

  • Запустите утилиту JoelDroid Lollipop Batch Deodexer, нажмите на кнопку "Browse" и укажите каталог на вашем компьютере, куда вы скопировали app, priv-app, framework

  • Нажмите на кнопку "Start Process"

Deodex при помощи Deodexer for Android Runtime

Первым делом скачайте архив и распакуйте его. Далее процесс ничем не отличается от предыдущей утилиты:


  • Сохраненные ранее папки app, priv-app, framework необходимо поместить отдельный каталог на вашем компьютере.

  • Запустите утилиту Deodexer for Android Runtime, укажите каталог на вашем компьютере, куда вы скопировали app, priv-app, framework

  • Нажмите на кнопку "Execute" и дождитесь окончания процесса деодексации.

Deodex при помощи Jbart

В отличие от предыдущих утилит, которые способны работать только с устройствами на базе Android 5.0 и выше, данная утилит не имеет привязки к ОС. Вы может сделать Deodex для любого устройства начиная с Android 2.3.x Ginerbread, заканчивая Android 6.0 Marshmallow.



Что такое Odex и Deodex?

В папке system/app Имеются файлы APK и Odex. Deodex - означает, что все файлы odex включены в APK и их в папке system/app нет. Deodex система удобна для редактирования, но считается, что она нестабильнее и медленнее, но на практике, лично у меня с ней всё в порядке. Файлы odex это упакованные модули кода dex, которые обычно лежат внутри apk. Используются Dalvic VM для ускорения запуска приложения.

Для ускорения загрузки Dalvik VM исполняемый код (classes.dex) может быть вынесен из программ (файлов.apk) в отдельные файлы с расширением.odex. Как правило, в таком виде установлены заводские (официальные) прошивки. Недостаток такого решения - невозможность кастомизации интерфейса.

преобразование исполняемого кода из файлов.odex обратно внутрь файлов программ (.apk).
Для установки Deodex"ed прошивки как правило нужен Root и CWM Recovery или другой модифицированный рекавери (TWPR, Philz Touch и т.д).

Узнать Odex прошивка или Deodex можно следующим образом.
Если в папке system/app находятся только файлы с расширением APK, значит прошивка deodex, если есть файлы и с расширением odex, значит прошивка odex. Все официальные прошивки odex. Почти все модифицированные прошивки deodex, но среди модифицированных встречаются также и odex прошивки.

Что значит поставить Deodex?
Допустим вы уже для своей прошивки, либо сделали, либо нашли те самые deodex файлы. Теперь вам нужно залить их в папку system/app, но просто через проводник их заменить нельзя, так как система в данных момент может их использовать. Для этого есть готовые файлы. Они(файлы) помещаются в специальный ZIP архив со скриптом для mod recovery(этот скрипт можно написать самому), и вам остаётся через любой модифоцированный рекавери поставить этот архив по инструкции по установке zip файлов

Этот ZIP архив представляет собой архив с файлами deodexed, и с инструкцией по установке через мод. рекавери. Если у вас стоит русификатор, то после установки deodexed слетит русский, ничего страшного, русский просто нужно будет поставить заново. Так происходит потому что в андроиде язык интерфейса описывается XML файлом, который содержится в apk. Русификация происходит добавлением русских xml в apk, а при установке русификатора в вашей системе просто заменяются старые апк на новые русифицированные. Установка русификатора осуществляется таким же ZIP для мод. рекавери как и deodexed. Русифицированные файлы уже deodexed, потому что odex файлы мы не можем редактировать. Архивы deodexed, которые у нас имеются, берутся с иностранных сайтов, поэтому русского в них нет, поэтому после их установки приходится заново устанавливать русификатор.

После установки deodexed, восстанавливаются и заменяются все системные приложения, всё по той же причине описанной выше. Поэтому удаление системных файлов нужно осуществлять после установки deodexed.

Большинство пользователей Android-устройств, которые прошивали свой телефон или планшет, скорее всего, сталкивались с понятием «одексированная» или «деодексированная» прошивка. В данном материале мы подробнее разберемся, что же означают эти понятия, а также как проводить сам процесс деодексирования или обратного одексирования.

Большая часть официальных обновлений программного обеспечения от производителей Android-девайсов – это одексированные прошивки. В них системные.apk-файлы сопровождаются аналогичными по названию файлами с расширением.odex. В последних хранится часть ресурсов.apk-файлов, таким образом сводится к минимуму возможность редактирования любых системных ресурсов, причем это касается всех аспектов, в том числе и изменения внешнего вида пользовательского интерфейса и так далее. Изменив любой системный.apk, через простой архиватор или же через терминал, и поместив его обратно на своё место, практически в ста процентах случаев получаем полную неработоспособность системы. Деодексированная версия прошивки отличается тем, что в ней можно «ковыряться» в системных файлах без фатальных последствий и падения операционной системы (естественно, если делать это правильно и с умом). Таким образом, деодексируя прошивку, пользователь получает больше возможностей по модификации системного программного обеспечения.

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

Первый способ. Итак, что нам для этого потребуется:

1. Установить Java SDK.

2. Установить Android SDK.

3. Скачать и распаковать в корень диска C: следующий архив: //forum.xda-developers.com/showthread.php?t=2213235

После этого выполняем поочередно следующие действия:

1. Копируем папку system/app

2. Копируем папку system / framework с Android-устройства на персональный компьютер.

3. Копируем следующие файлы:

Содержимое папки system/app в распакованную папку Deodex : origi_app

- содержимое папки system / app в распакованную папку Deodex : comp_app

Содержимое папки framework в распакованную папку Deodex : origi_ frame

- содержимое папки framework в распакованную папку Deodex : comp_ frame

4. Запускаем исполняемый файл deodex-app.ba t origi _ app

5. После завершения предыдущего процесса, запускаем исполняемый файл deodex_ frame .ba t , это запустит процесс деодексирования всех файлов в папке origi _ frame

6. После выполнения деодексирования запускаем исполняемый файл zip _ em _ app . bat app в папке done _ app

7. После завершения, запускаем исполняемый файл zip _ em _ frame . bat , который выполнит упаковку файлов app в папке done _ frame

8. После успешной упаковки копируем все файлы из директории done _ app в comp _ app , а из done _ frame в comp _ frame

9. Теперь удаляем все файлы, которые имеют расширение.odex из папок comp _ app и comp _ frame .

Второй способ. Для этого нам также потребуются установленные Java SDK и Android SDK, кроме того нужно скачать следующий архив: //forum.xda-developers.com/showthread.php?t=2213235

Пошагово выполняем следующие действия:

1. Распаковываем папку Deodex из скачанного архива в корень диска C:

2. Копируем папку system/app

3. Копируем папку system/ framework с Android-гаджета на компьютер в директорию C:Deodex

4. Открываем директорию C : Deodex jar , видим файл frame - dep . txt . Открываем его блокнотом или любым другим текстовым редактором (рекомендуется использовать Notepad++), и прописываем путь к скопированной папке framework . Аналогично в файле app - dep . txt прописываем путь к папке app . Примеры прописанных путей в данных файлах:

C:/Deodex/Framework
C:/Deodex/app

5. Поочередно запускаем исполняемые файлы auto _ app . exe и auto _ frame . exe из всё той же папки jar .

6. Забираем деодексированные приложения с расширением.apk из указанных выше директорий. Файлы с расширением.odex не трогаем – они теперь не нужны.

Процесс деодексирования завершен. Теперь достаточно скопировать готовые деодексированные.apk-приложения напрямую в смартфон или планшет, или поместить их в.zip-файл с прошивкой, удалив любые упоминания о файлах.odex.

Если по какой-либо причине необходимо одексировать системные приложения, например, если прошивка была деодексирована, то сделать это еще проще. Необходимо установить на Android-устройство приложение Titanium Backup (напомним, что для его корректной работы нужны Root-права). Для того, чтобы одексировать Android-приложение, перемещаем его в папку / system / app . Открываем Titanium Backup и нажимаем пункт в дополнительном меню «Интегрировать sysDalvik».

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

Сегодня вы узнаете, что же такое odex и deodex , и зачем оно нужно.

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

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

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

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

Odex : Для ускорения загрузки Dalvik VM исполняемый код (classes.dex) может быть вынесен из программ (файлов.apk) в отдельные файлы с расширением .odex . Как правило, в таком виде установлены заводские (официальные) прошивки. Недостаток такого решения - невозможность кастомизации интерфейса.
Deodex : преобразование исполняемого кода из файлов.odex обратно внутрь файлов программ (.apk). Для установки Deodex"ed прошивки как правило нужен

Пользователей Android можно разделить на две группы. Первая – те, кому важно стабильная работа и чтобы телефон просто работал. Вторая – те, кому не терпится испробовать новые функции и проверить другую прошивку для своего телефона, кто очень любить ковыряться в телефоне. Тут и кроется основная разница между ODEX и DEODEX прошивками.

ODEX (одексированные) прошивки – это официальные, фирменные или заводские прошивки Android. DEODEX (деоксированные) – это модифицированные пользователями прошивки.

Зачем же такое разграничение?

«Одексированная» прошивка сразу же выдаст себя наличием файлов с расширение.odex в папке /system/app. Аббревиатура odex означает – “Optimized Dalvik Executable File”. Такого рода файл очень нужен для чёткой системной структуры, в которой содержится вся информация о приложении. Android получает данные сразу же напрямую, не разархивируя apk файлы. Файлы.odex обычно загружают в Dalvik-cache, в котором хранится информация о программах которые часто использует пользователь. Скорость работы системы при этом значительно возрастает.

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

К примеру такая прошивка – идеальное решение для тех, кто хочет просто скачать игры на планшет андроид (http://vipsmart.org/all-genres/tablet/).

DEODEX



В прошивках «деодексированных» информация приложения содержится в apk файле. Код, обычно вставляемый в odex файл, включается в apk с именем classex.dex.

Основные преимущества таких прошивок в том, что модифицировать их значительно легче (все данные лежат в одном месте), а системные программы проще удаляются.

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

Подводя итоги, можно с уверенностью сказать, что прошивки «одексированные» (заводские) рекомендуются тем, кому важна скорость и стабильность работы. «Деоксированные» (кастомные) больше по душе подойдут тем, кому важно настроить прошивку полностью под свои потребности, попробовать новые функции и «поковыряться» в системе Android.