- - Що таке Odex та Deodex в Android [Повне керівництво]

Що таке Odex та Deodex в Android [Повне керівництво]

Як новачок на Android, мене найбільше турбувалонатрапляючи на термінологію поза моїм розумінням. Не виходячи з фона Linux, стало важко йти в ногу з поширеними словами по всій спільноті розробників. Так само, оскільки я не розумів термінів, отже, я не зміг визначити, щось мені корисно чи ні. З того, що я бачив, ця проблема поширюється на багатьох початківців і навіть середніх користувачів.

Одне часто зустрічається слово під час гри звласні ПЗУ та вбудоване програмне забезпечення, а також теми розшифровуються та виправляються. Більшість користувачів не розуміють, що насправді мають на увазі ці терміни, і хоча розробники будуть знову і знову вихвалятися тим, що їх теми та ПЗУ деодаксировані, середній користувач залишається незрозумілим щодо того, що відбувається.

У цій статті ми спробуємо пояснити, що означає одаксені та дедекседовані засоби та які наслідки це спричиняє для випадкового користувача.

ЩО ТАКОЖ ФАЙЛ ODEX?

У файловій системі Android приходять програмипакети з розширенням .apk. Ці пакети програм або APK містять певні файли .odex, передбачуваною функцією яких є економія місця. Ці файли «odex» - це фактично сукупність частин програми, оптимізованих перед завантаженням. Це прискорює процес завантаження, оскільки він попередньо завантажує частину програми. З іншого боку, це також ускладнює злому цих додатків, оскільки частина кодування вже була вилучена в інше місце перед виконанням.

ТОГО ПРОДАЄ DEODEX

Деодексінг - це в основному перепакування цих APK певним чином, таким чином, щоб вони знову збиралися classes.dex файли. Тим самим всі фрагменти пакету додатків збираються назад в одному місці, тим самим усуваючи занепокоєння щодо модифікованого APK, що конфліктує з деякими окремими деталями.

Підсумовуючи, у Deodexed ROM (або APK) є всіїх пакети додатків разом зібрані в одному місці, що дозволяє легко модифікувати, наприклад, тематизацію. Оскільки жоден фрагмент коду не надходить з жодного зовнішнього місця, користувальницькі ROM або APK завжди декодесуються для забезпечення цілісності.

ЯК ЦЕ ПРАЦЮЄ

Для більш прихильних серед нас ОС Android використовує віртуальну машину на базі Java для запуску програм, яку називають віртуальною машиною Dalvik. Деодексований, або .dex файл містить кеш, який використовує ця віртуальна машина (іменований Dalvik-кеш) для програми, і він зберігається всередині APK. An .odex Файл, з іншого боку, є оптимізованою версією цього самого .dex файл, який зберігається наступний до АПК на відміну від всередині нього. Android застосовує цю техніку за замовчуванням для всіх системних програм.

Тепер, коли система на базі Android завантажується, кеш davlik для VM Davlik будується за допомогою цих .odex файли, що дозволяє ОС заздалегідь дізнатися, які програми завантажуватимуться, і тим самим прискорить процес завантаження.

Розшифровуючи ці APK, розробник фактично ставить .odex файли назад у відповідних пакетах APK. Оскільки весь код тепер міститься в самому APK, стає можливим змінювати будь-який пакет програм без конфлікту з середовищем виконання операційної системи.

ПЕРЕВАГИ І НЕЗАЛЕЖНОСТІ

Перевага деодексингу полягає в модифікаціїможливості. Це найбільше поширення в користувальницьких ROM та темах. Розробник, що будує користувальницький ROM, майже завжди спочатку вирішив би декодексувати пакет ROM, оскільки це не лише дозволить йому змінювати різні APK, але й залишать місце для післяінсталяції.

З іншого боку, з часу .odex файли повинні були швидко побудувати дальвіккеш, видалення їх означало б довші початкові часи завантаження. Однак це справедливо лише для першого завантаження після декодексування, оскільки кеш все-таки буде формуватися з часом, коли використовуються програми. Більш тривалі терміни завантаження можуть побачитись лише заново, якщо кеш далвік з якоїсь причини буде стертий.

Для випадкового користувача головне значення полягає у можливості тематизації. Теми для android також надходять у APK, і якщо ви хочете змінити будь-яку з них, вам слід завжди вибрати спеціальний спеціальний ROM.

Чи була ця стаття корисною? Якщо ви плутаєте деякі інші терміни і хочете, щоб ми допомогли пояснити їх, будь ласка, повідомте нас у коментарях.

Коментарі