Sering
kali kita mendengar istilah ODEX dan DEODEX pada android. Banyak
sekali pertanyaan apakah ODEX dan DEODEX itu? Apakah beda antara ODEX
dan DEODEX itu? Saat ini saya menggunakan aplikasi ODEX atau sudah
DEODEX? Pada artikel tips droid mengenai istilah dalam android
sebenarnya telah saya bahas, namun pada artikel ini mari kita share
bersama apakah ODEX dan DEODEX itu secara lengkap.
Semua paket aplikasi di dalam sistem Android umumnya(dalam artian tidak semuanya) memiliki ekstensi .apk.
Aplikasi
yang berekstensi .apk sebagian mempunyai file .odex yang bertujuan
untuk menghemat data. File-file odex sebenarnya berisi kode khusus yang
berfungsi mempercepat atau mengoptimalkan proses booting. Dengan kata
lain, dengan adanya file odex proses booting akan lebih cepat.
Sebelum membahas lebih detil perlu dijelaskan di sini perbedaan antara .dex, .odex dan proses deodex.
Istilah
odex dan odexed adalah sama hanya beda tenses (dalam bahasa
Inggris). Demikian juga dengan istilah deodex dan deodexed adalah sama
juga. Akan tetapi antara file odex (odexed) dan deodex (deodexed) tidak sama (semoga anda tidak bingung),
(File) .dex
Dalam
file sistem Android, aplikasi berbentuk paket dengan extensi APK.
Paket aplikasi atau APK ini mempunyai file ODEX yang fungsi sebenarnya
adalah untuk menghemat ruang penyimpanan. File ODEX ini sebenernya
koleksi dari bagian dari aplikasi yang di optimalkan sebelum proses
boot. Dengan begitu, adanya file ODEX akan mempercepat proses BOOT
karena load bagian dari aplikasi2 yang ada. Di sisi lain, adanya ODEX
mempersulit proses hacking terhadap APK, karena beberapa bagian dari
APK telah di extract dan berada di lokasi yang lain sebelum di
eksekusi.
File .dex pada dasarnya adalah file yang sudah dikompile menjadi file aplikasi yang digunakan oleh Dalvik VM. Untuk lebih gampang mengingat, file .dex bisa diibaratkan dengan .exe di Windows.
File .dex pada dasarnya adalah file yang sudah dikompile menjadi file aplikasi yang digunakan oleh Dalvik VM. Untuk lebih gampang mengingat, file .dex bisa diibaratkan dengan .exe di Windows.
(File) .odex
File
.odex adalah file .dex yang sudah dioptimalisasi atau sudah mengalami
pre-compile untuk kemudian dijalankan di firmware tertentu saja.
(Proses) deodex
Deodex
adalah proses mengembalikan kembali file .dex yang sebelumnya sudah
dioptimalisasi (.odex) menjadi file .dex. Proses ini akan mengambil
cache ODEX kemudian menyusun kembali menjadi file APK saja. Deodex
memungkinkan proses pengeditan APK file menjadi lebih mudah.
Singkatnya
adalah proses pengepakan (recompile) kembali APK dengan ODEX dengan
cara tertentu. Proses pengepakan ini akan menjadi file dengan
CLASSES.DEX. Dengan melakukan DeOdexing, semua paket dari APK yang
sebelumnya terpisah di satukan kembali di satu file APK, sehingga
menghilangkan kecemasan bahwa APK yang dimodifikasi akan konflik dengan
beberapa file ODEX.Dengan kata laen, ROM yang telah DeODEXed, memiliki
paket aplikasi yang telah di jadikan satu kembali dalam satu file APK,
sehingga mengijinkan modifikasi pada file APK seperti perubahan tema.
Karena tidak ada kode/bagian paket aplikasi yang lokasinya berbeda maka
integritas paket tetap terjaga.
Cara mengetahui suatu rom odex apa deodex:
Masuk ke /system/app/ lalu lihat disitu ada file dengan extension *.odex atau tidak, jika ada maka rom itu bukan deodex.
Bagaimana ini bisa bekerja?
Sistem Operasi Android menggunakan virtual mesin Java yang dinamakan Dalvik Virtual Machine. File Deodex atau *.dex memiliki cache yang digunakan oleh Dalvik ini tersimpan di dalam paket APK. Sedangkan *.odex yang merupakan optimasi *.dex yang sama di simpan di folder yang sama dengan APK, dengan nama sama, akan tetapi berbeda extensi. Android memakai teknik ini di semua sistem aplikasinya.
Saat sistem Android boot, Dalvik Virtual Machine akan melakukan loading file2 *.odex, mengizinkan sistem operasi Android untuk mempelajari lebih lanjut aplikasi apa saja yang nantinya akan di load, sehingga akan mempercepat proses BOOT.
Dengan melakukan proses DeOdex, developer sebenarnya menaruh file .odex ke paket APK yang bersangkutan. Karena semua kode sekarang telah berada di dalam paket APK itu sendiri, sangat di mungkinkan modifikasi paket aplikasi APK tanpa mengalami konflik dengan eksekusi di lingkungan Sustem Operasi Android.
Keuntungan dan KelemahanSistem Operasi Android menggunakan virtual mesin Java yang dinamakan Dalvik Virtual Machine. File Deodex atau *.dex memiliki cache yang digunakan oleh Dalvik ini tersimpan di dalam paket APK. Sedangkan *.odex yang merupakan optimasi *.dex yang sama di simpan di folder yang sama dengan APK, dengan nama sama, akan tetapi berbeda extensi. Android memakai teknik ini di semua sistem aplikasinya.
Saat sistem Android boot, Dalvik Virtual Machine akan melakukan loading file2 *.odex, mengizinkan sistem operasi Android untuk mempelajari lebih lanjut aplikasi apa saja yang nantinya akan di load, sehingga akan mempercepat proses BOOT.
Dengan melakukan proses DeOdex, developer sebenarnya menaruh file .odex ke paket APK yang bersangkutan. Karena semua kode sekarang telah berada di dalam paket APK itu sendiri, sangat di mungkinkan modifikasi paket aplikasi APK tanpa mengalami konflik dengan eksekusi di lingkungan Sustem Operasi Android.
Keuntungan
Dengan
adanya deOdex adalah lebih ke kemungkinan modifikasi. Yang biasanya di
gunakan pada custom ROM dan pemberian THEMA. Developer yang
mengembangkan custom ROM biasanya melakukan proses deodex terlebih
dahulu, karena dengan deOdex, dia bisa merubah banyak paket APK dengan
tetap bisa melakukan perubahan THEMA.
Disisi laen, karena file .ODEX sebenarnya di tujukan untuk mempercepat pembangunan Dalvik Cache, menghilangkannya akan membuat waktu BOOT lebih lama. Akan tetapi hal ini benar untuk proses pertama BOOT, karena cache DALVIK saat pertama masih kosong, akan tetapi cache ini akan otomatis terisi dengan seiring waktu aplikasi2 di jalankan. Proses boot yang lama mungkin kembali terjadi jika, cache DALVIK terhapus karena alasan tertentu.
Selain itu keuntungan lainnya adalah ketika proses booting lebih cepat odex dari deodex.
Disisi laen, karena file .ODEX sebenarnya di tujukan untuk mempercepat pembangunan Dalvik Cache, menghilangkannya akan membuat waktu BOOT lebih lama. Akan tetapi hal ini benar untuk proses pertama BOOT, karena cache DALVIK saat pertama masih kosong, akan tetapi cache ini akan otomatis terisi dengan seiring waktu aplikasi2 di jalankan. Proses boot yang lama mungkin kembali terjadi jika, cache DALVIK terhapus karena alasan tertentu.
Selain itu keuntungan lainnya adalah ketika proses booting lebih cepat odex dari deodex.
Kelemahannya
Lebih
sulit untuk modifikasi aplikasi, seperti membuat animasi di framework,
kalau di deodex lebih mudah sedangkan di odex harus menyambungkan
beberapa code script ke code script lainnya.
Kesimpulannya beda odex dan deodex.
deodex
adalah: aplikasi yang ada di odex dikemas ulang, kode kode dalvik cache
nya di kembalikan lagi ke tiap aplikasi, sedangkan di odex kode kode
itu terpisah dari aplikasi. DeOdex lebih mudah dalam pengeditan.
0 Response to "PERBEDAAN ODEX DAN DEODEX"
Post a Comment