Odex ve Deodex - nedir ve fark nedir? Android'de odex ve deodex nedir? jbart kullanarak firmware deodex nasıl yapılır.

Odex ve Deodex nedir?

Sistem/uygulama klasöründe APK ve Odex dosyaları bulunmaktadır. Deodex - tüm odex dosyalarının APK'ya dahil olduğu ve sistem/uygulama klasöründe olmadığı anlamına gelir. Deodex sistemi düzenleme için uygundur, ancak daha kararsız ve daha yavaş olduğuna inanılmaktadır, ancak pratikte kişisel olarak onunla iyiyim. Odex dosyaları, genellikle apk içinde bulunan paketlenmiş dex kod modülleridir. Dalvic VM tarafından uygulama başlatmayı hızlandırmak için kullanılır.

Dalvik VM yüklemesini hızlandırmak için yürütülebilir kod (classes.dex), programlardan (.apk dosyaları) .odex uzantılı ayrı dosyalara taşınabilir. Kural olarak, fabrika (resmi) ürün yazılımı bu biçimde kurulur. Bu çözümün dezavantajı, arayüzü özelleştirmenin imkansız olmasıdır.

.odex dosyalarından yürütülebilir kodu tekrar program dosyalarına (.apk) dönüştürmek.
Deodex "ed ürün yazılımını yüklemek için genellikle Root ve CWM Recovery'ye veya başka bir değiştirilmiş kurtarmaya (TWPR, Philz Touch, vb.) ihtiyacınız vardır.

Odex firmware veya Deodex'i aşağıdaki gibi öğrenebilirsiniz.
Sistem / uygulama klasörü yalnızca APK uzantılı dosyalar içeriyorsa deodex bellenimi, odex uzantılı dosyalar varsa odex bellenimi. Tüm resmi odex yazılımları. Hemen hemen tüm değiştirilmiş deodex yazılımları, ancak değiştirilmiş olanlar arasında odex yazılımları da var.

Deodex koymak ne anlama geliyor?
Aygıt yazılımınız için aynı deodex dosyalarını zaten oluşturduğunuzu veya bulduğunuzu varsayalım. Şimdi bunları sistem / uygulama klasörüne yüklemeniz gerekiyor, ancak sistem şu anda bunları kullanabileceğinden, bunları gezgin aracılığıyla değiştiremezsiniz. Bunun için var hazır dosyalar... Bunlar (dosyalar), mod kurtarma için bir komut dosyası içeren özel bir ZIP arşivine yerleştirilir (bu komut dosyasını kendiniz yazabilirsiniz) ve bu arşivi herhangi bir değiştirilmiş kurtarma işlemine koymanız yeterlidir.zip dosyalarını yükleme talimatları

Bu ZIP arşivi, deodex'li dosyalar ve mod aracılığıyla kurulum talimatları içeren bir arşivdir. kurtarma. Bir çatlağınız varsa, deodexed'i kurduktan sonra, Rusça uçacak, sorun değil, Rusça'nın yeniden yüklenmesi gerekiyor. Bunun nedeni, android'de arayüz dilinin açıklanmasıdır. XML dosyası apk içinde bulunan. Ruslaştırma, apk'ye Rusça xml eklenerek yapılır ve sisteminize bir Russifier yüklediğinizde, eski apk basitçe yeni Ruslaştırılmış olanla değiştirilir. Crack kurulumu mod için aynı ZIP ile gerçekleştirilir. kurtarma yanı sıra deodexed. Odex dosyalarını düzenleyemediğimiz için Ruslaştırılmış dosyalar zaten deodex'li. Elimizdeki deodex'li arşivler yabancı sitelerden alınmıştır, bu yüzden içlerinde Rusça yoktur, bu yüzden kurduktan sonra crack'i yeniden kurmanız gerekir.

Deodexed yüklendikten sonra, tüm sistem uygulamaları yukarıda açıklanan aynı nedenle geri yüklenir ve değiştirilir. Bu nedenle silme sistem dosyaları deodexed yüklendikten sonra yapılmalıdır.

Merhaba Habr!

Birkaç yıl önce, Android ile ilk tanıştığımda, iş arkadaşımdan Android'in değiştirilmiş veya kendi kendine yapılmış ürün yazılımı yükleme yeteneği sağladığını duydum. Açıkçası, o zaman ondan uzaktım. Ve yarım yıl önce bile böyle şeylerle pek ilgilenmiyordum. Kalbimin derinliklerinde, üreticinin yaptığının zaten normal kullanım için tasarlandığından emindim.

Google, Skype, Facebook ve diğer uygulamaların kullanımının fabrika ayarları tarafından yasaklandığı Orta Krallık'tan bir telefon aldığımda yaşadığım hayal kırıklığını bir düşünün. Prensip olarak bazı şeylere gözlerimi kapatabilirdim, ancak telefonum bir Google hesabı kullanımını ima etmediğinde, bunun benim için ne olacağını kesinlikle anlamaya söz verdim.

Yarım yıl geçti ve özel yazılımlarım tüm dünyada başarıyla kullanılıyor.

Bu makale dizisi, Android için tersine programlamanın nasıl yapılacağını, yamaların, ince ayarların ve modların nasıl uygulanacağını tartışacaktır.

önsöz

Yani! Öncelikle kullanılacak kavramları tanımlayalım. verilen makale. Bununla birlikte, her zamanki anlayışınız çok farklı olabilir.

Yama- program algoritmasını değiştirmek için mevcut program kodunun değiştirilmesi veya değiştirilmesi.
Maud- kural olarak, algoritmayı değiştirmeden mevcut program koduna ek işlevler eklemek.
Çimdik- sistem parametrelerine erişimi kolaylaştırmak için program işlevselliğinin iyileştirilmesi.

Tüm örneklerin bir HTC telefon için alınacağını da belirtmek isterim, ancak bu, bu bilgilerin başka telefonlarda kullanılamayacağı anlamına gelmez.

Ortamın hazırlanması

onsuz yapabilirim detaylı talimatlar bu veya bu nasıl kullanılır yazılım... Bu makaleyle ilgileniyorsanız ve bu satırları okuduysanız, umarım zaten deneyimli bir kullanıcısınız ve bu alanda kullanma, iyi veya en azından deneme konusunda deneyime sahipsinizdir. Talimatlar, makaleler ve test sonuçları tamdır. açık Erişim, bununla birlikte, Habre'de olduğu gibi. Ayrıca bazı terimleri açıklamadan yapacağım, aksi takdirde makale çok büyük ve sıkıcı olacak. Sadece dava üzerine yazacağız. Eminim ortamınız uzun süredir ayaktadır. Değilse, indirip yüklemenizi öneririm.

1 . Android SDK'sı... Android uygulamaları için bir geliştirme ortamıdır. Değişiklik yapabilmek için mutlaka program kodumuzu kontrol etmemiz gerekecektir. Geliştirme ortamı, kullanabileceğimiz en iyisidir.
2 . Android Mutfak... Bu yardımcı program, resmi veya resmi olmayan bellenimin sistem bölümlerinin görüntüleri ile çalışmanıza izin verecektir.
3 . JD-GUI... Java dilinin program kodunun derleyicisi. Bunun kullanılabilirlik açısından en iyi kod çözücü olduğunu hemen not ediyorum.
4 . DJ Java Decompiler... Java dilinin program kodu, bazı kişilerin çağırmayı sevdiği başka bir kod çözücü veya ayrıştırıcıdır. Kullanım açısından uygun değildir, ancak JD-GUI'nin bazen anlamadığı kodu ayrıştırır.
5 . küçük... Başka bir sökücü, ancak zaten dalvik kodu. demontaj için smali ve kodun montajı için backsmali gereklidir.
6 . dex2jar... Dalvik yürütülebilir kod dosyalarını dönüştürmek için yardımcı program.

Bellenimi dönüştürme

Elbette, üreticinin telefonunuzdaki üretici yazılımı, güç tüketimini azaltmak için optimize edilmiştir. Firmware'in değiştirilebilir olması için, kodun değiştirilmesine izin veren bir formata dönüştürülmesi gerekir. Bunun için Android Kitchen kullanılır. Elbette, daha önce yaptığım gibi, bu "mutfağı" bulana kadar ellerinizle yapabilirsiniz. Sistem alanını telefondan nasıl çıkaracağınızı, ortamı nasıl kuracağınızı, DEODEX ürün yazılımının nasıl yapıldığını internetten okuyabilirsiniz. Henüz bir şey anlamadıysanız, yeterince deneyim kazanana kadar makaleyi ertelemeye değer olduğunu düşünüyorum.

Optimize edilmiş görünümdeki bellenim (ODEX - optimize edilmiş dalvik yürütülebilir kodu, hafızam bana hizmet ediyorsa) DEODEX (yani optimize DEĞİL) olduktan sonra, tüm yürütülebilir dosyalar değiştirilmeye hazırdır.

Değişiklikler doğrudan

Yama oluşturma
Dediğim gibi, telefonum başlangıçta Google'dan yasaklandı. En azından çatlıyorsun, Playstore'a gidemezsin, hesapözelleştirmeyin, Telefon rehberi gerçekten senkronize değil. Neden böyle bir Android'e ihtiyacınız var? Cihazın kendi logcat'inde uzun süre kazı yaparken, Google kullanımının yasak olduğunu söyleyen girişler buldum. Android'deki en rahatsız edici şey, günlüğü görüyorsun ama hangi sistem uygulamasının onu ürettiğini bilmiyorsun. Bacaklarımın nereden büyüdüğünü bulmak için tüm sistem uygulamalarını demonte Java koduna bağlamam gerekiyordu. Oldukça zaman aldı, ancak hala ihtiyacım olan kodu analiz etmek ve bulmak için yapılan işi kullanıyorum. Böyle bir araç takımı edinmenin aşamaları aşağıdaki gibidir:
1 ... Tüm bellenimlerin DEODEX'ini yapın
2 ... Yeni DEODEX ürün yazılımınızın bir araya getirilmesi ve telefonunuza yüklenmesi gerekecektir. Bunun nasıl yapıldığı başka bir makalenin konusudur.
3 ... /system/frame içindeki her dosyadan class.dex dosyasını çıkartın ve dex2jar kullanarak JAR'a dönüştürün.
4 ... Alınan her JAR, JD-GUI'de açılır ve kaynak koduna yeniden kaydedilir
5 ... Kaynak kodunu arşivden çıkarın.

Sonunda / system / framework içinde JAR dosyaları olduğu kadar çok klasör buldum ve her klasörün bir Java kaynak kodu yapısı vardı.
Basit manipülasyonlar yoluyla, logcat'teki girişleri oluşturan yeri çabucak buldum.

Bu, her durum için ayrı bir hikaye olduğu için yasağın tüm mantığını dikkate almayacağız. Kontrollerin nerede yapıldığını bulmadan önce birkaç saat harcamak zorunda kaldım, kafamda algoritmanın bir blok şemasını oluşturdum ve algoritmayı biraz "bozmak" için nereye tırmanacağımı buldum.

Her şeyin basit olduğu ortaya çıktı. Önceden belirlenmiş sabitlere dayalı olarak, sorulduğunda telefonun Çin'e atıfta bulunup bulunmadığını yanıtlayan bir alt program vardır.

Kod dosyadaydı HTCExtension.jar ve bu alt yordamı içeren sınıf

Orijinal dosyayı açma ve analiz etme
1 ... Öncelikle kodun ihtiyacımız olan kısmından sorumlu olan orijinal DEODEX JAR dosyasını almamız gerekiyor. bizim durumumuzda HTCExtension.jar.
2 ... Herhangi bir arşivleyici ile açın ve class.dex'i oradan çekin
3 ... JAR dosyasına dönüştürmek için dex2jar dönüştürücüyü kullanın. Komut: dex2jar.bat class.dex
4 ... Ortaya çıkan class_dex2jar.jar dosyasını JD-GUI'de açın.
5 ... Evet, çoğu zaman JD-GUI kodu orijinalinde göründüğü gibi değil, anlaşılabilir, ancak okumak oldukça mümkündür. Kaynakta, alt programın proje parametrelerini ve bellenimin dil bayrağını kontrol ettiğini görüyoruz. Talihsiz durumumuzda, TRUE döndürülür.
public static boolean isChina () (if ((HtcBuildFlag.Htc_PROJECT_flag == 216) || (HtcBuildFlag.Htc_PROJECT_flag == 218) || (HtcBuildFlag.Htc_PROJECT); Htc_PROJECT_flag == 23 &&FLAN |.Htc_g_GU) | (HtcBuildFlag.Htc_PROJECT_flag == 27)) true döndür; false döndür;)
6 ... Yama yapmak için Dalvik kodunun kendisini sökmemiz gerekiyor. Bunun için baksmalı kullanıyoruz. En uygun yol, ayrı bir klasör oluşturmak ve orada üç dosyayı bir araya getirmektir: HTCExtension.jar, smali.jar ve baksmali.jar... java -Xmx512m -jar baksmali.jar -a -d -o HTCExtension -x HTCExtension.jar komutunu veriyoruz.

Bu, Android sürümünüzün API'sidir. JB için 16
- tüm ürün yazılımı çerçevelerinin bulunduğu klasör.

Benim durumumda, komut buydu
java -Xmx512m -jar baksmali.jar -a 16 -d S: \ dev \ Android \ Android-Kitchen \ WORKING_JB_15 \ sistem \ çerçeve -o HTCExtension -x HTCExtension.jar
7 ... Yeni oluşturduğumuz klasörümüzde HTCExtension klasörü ve içinde Dalvik kodlu dosyalarımız belirdi.
8 ... Dosyayı yol boyunca buluyoruz \ com \ htc \ util \ kişiler \ BuildUtils $ Customization.java ve koda bakın:
.method public static isChina () Z .registers 3 .prologue const / 4 v0, 0x1 .line 276 sget-short v1, Lcom / htc / htcjavaflag / HtcBuildFlag; -> Htc_PROJECT_flag: S const / 16 v2, 0xd8 if-eq v1 , v2,: cond_13 sget-short v1, Lcom / htc / htcjavaflag / HtcBuildFlag; -> Htc_PROJECT_flag: S const / 16 v2, 0xda if-eq v1, v2,: cond_13 sget-short v1, Lcom / htc / -htcflag; > Htc_PROJECT_flag: S const / 16 v2, 0x17 if-ne v1, v2,: cond_14 .line 297: cond_13: goto_13 return v0 .line 283: cond_14 sget-short v1, Lcom / htc / htcjavaflag / HtcBuildFlag; if_tc_PROJ -ne v1, v0,: cond_1d .line 285 const / 4 v1, 0x2 sget-short v2, Lcom / htc / htcjavaflag / HtcBuildFlag; -> Htc_LANGUAGE_flag: S if-eq: cond_ v2.291: cond_1d sget-short v1, Lcom / htc / htcjavaflag / HtcBuildFlag; -> Htc_PROJECT_flag: S const / 16 v2, 0x1b if-eq v1, v2,: cond_13 .line 297 const / 4 v0, 0x13. method
9 ... Korkunç, değil mi? Hiçbir şey net değil. Ancak bu düzeltilebilir bir şey. Birkaç yama oluşturduktan ve böylece elinizi doldurduktan sonra, üçüncü taraf araçları olmadan kodu kolayca değiştirebilirsiniz. Bizim durumumuzda, bu kodda
.prologue const / 4 v0, 0x1 v0 değişkenine 1, yani DOĞRU değeri atanır. Sonra her türlü kontrol vardır ve telefon Çince değilse, değişkenin değeri değişir:
.line 297 const / 4 v0, 0x0 git: goto_13
10 ... Rus demokrasisinin babasını kurtarmanın en kolay yolu, kodu aşağıdaki şekilde değiştirmektir:
.prologue const / 4 v0, 0x0, yani değişkenin değerini 1'den 0'a değiştirin. Yani, ne olursa olsun, değer her zaman YANLIŞ döndürür ve JD-GUI'de kod genel statik boolean gibi görünür. isChina () (if (( HtcBuildFlag.Htc_PROJECT_flag == 216) || (HtcBuildFlag.Htc_PROJECT_flag == 218) || (HtcBuildFlag.Htc_PROJECT_flag == 23)); while ((Htc.HuildFlag) |Flag. == 27)) false döndür; false döndür;)
11 ... Evet, yöntem işe yarayacaktır. Ama bu sefer kolay yollar aramıyoruz. İkincisi, çok güzel değil. gibi bir kod istiyorum
genel statik boolean isChina () (yanlış döndür;)
12 ... Ve bunun için Dalvik kodunu nasıl alırız? kaynak kodu? Yeni başlayanlar için küçük bir numara yapacağız.

Dalvik Kod Üretimi
1 ... Android SDK'yı açın.
2 ... Yeni bir proje oluşturuyoruz ve tek test sınıfımızda aşağıdaki kodu yazıyoruz.
paket ru.habrahabr.test; genel sınıf testi (genel statik boolean isChina () (yanlış döndür;))
3 ... Projemizi derliyoruz ve ardından birleştirilmiş uygulamayı workspaceden alıyoruz.
4 ... Birleştirilmiş uygulamayı JAR dosyasının içini çıkardığımız klasöre koyuyoruz.
5 ... java -Xmx512m -jar baksmali.jar -a -d -o test -x test .apk komutunu veriyoruz.
6 ... Yeni oluşturulan uygulamayı Dalvik koduna demonte ettik.
7 ... test.smali dosyamızı açın ve oradaki kodu görün
.method public static isChina () Z .registers 1 .prologue .line 7 const / 4 v0, 0x0 dönüş v0 .end yöntemi
8 ... İşte bu, yama kodu hazır.
Yamayı yuvarlamak
1 ... Dalvik'in kodu, orijinal kaynak dosyadaki kod satırını gösteren işaretlerle doludur. Bu, programınızda varsa hataları görüntülerken gereklidir. Dizeleri belirtmeden kod da harika çalışıyor.
2 ... Satır numaralandırmalı satırları sileriz, yöntemi (alt yordam) kopyalayıp değiştiriyoruz. \ com \ htc \ util \ kişiler \ BuildUtils $ Customization.java dosya.
.method public static isChina () Z .registers 1 .prologue const / 4 v0, 0x0 dönüş v0 .end yöntemi
3 ... Dosyayı kaydediyoruz. Evet, söylemeyi unuttum, normal bir editöre ihtiyacınız var, örneğin Notepad ++ veya EditPlus. Kim neyi sever.
Yamalı bir JAR dosyasını derleme ve oluşturma
1 ... Backsmali yardımıyla JAR dosyamızın içini boşalttık ve şimdi onu tekrar bir araya getirmemiz gerekiyor.
2 ... java -Xmx512m -jar smali.jar -a 16 HTCExtension -o class.dex komutunu veriyoruz.
3 ... Class.dex dosyası babamızda görünüyor
4 ... tekrar açılıyor HTCExtension.jar arşivleyiciyle dosyalayın ve içindeki mevcut olanı değiştirin sınıflar.dex yeni oluşturduğumuza.
5 ... her şey, bizim HTCExtension.jar değiştirilmiş program kodunu içerir.
Orijinal dosyayı yamalı bir dosyayla değiştirme
Genellikle, kurtarma yoluyla değiştirilen sıradan kullanıcılar için özel komut dosyaları oluşturulur. Ama bu bizi ilgilendirmiyor. Birincisi, uzun ve sıkıcı ve ikincisi, biz deneyimli kullanıcılarız ve bazı incelikleri karşılayabiliyoruz.

1 ... Halihazırda DEODEX belleniminiz varsa ve root erişiminiz varsa, mevcut çalışma dosyasını aşağıdaki komutlarla değiştirebilirsiniz:

Adb push HTCExtension.jar /sdcard/HTCExtension.jar adb shell su mount -o remount -rw / system dd if = / system / framework / HTCExtension.jar of = / system / framework / HTCExtension.jar.back dd if = / sdcard /HTCExtension.jar / sistem / çerçeve / HTCExtension.jar chmod 644 /system/framework/HTCExtension.jar rm / data / dalvik-cache / [e-posta korumalı]@[e-posta korumalı] yeniden başlat

1. komut, yamalı dosyayı USB flash sürücüye yükler
2. komut kabuğu açar
3. komut root erişimi sağlar
4. komut, sistemi okuma / yazma modunda bağlar
5. takım yapar destek olmak dosya
6. komut, mevcut dosyanın üzerine yeni yamalı dosya yazar.
7. komut izinleri yapılandırır
8. komut önbelleği siler
9. komut cihazı yeniden başlatır.

2 ... Buraya kadar okuduğunuz için teşekkürler, fazla bir şey kalmadı.
3 ... Yeniden başlatmanın ardından yeni yamalı kodunuz geçerli olacaktır.
4 ... Kod çalışmazsa veya bir hata ortaya çıkarsa, o zaman zor olmayan kombinasyonlar aracılığıyla yedek kopyayı geri getirebilirsiniz.
adb shell su mount -o remount -rw / system dd if = / system / framework / HTCExtension.jar.back of = / system / framework / HTCExtension.jar rm / data / dalvik-cache / [e-posta korumalı]@[e-posta korumalı] yeniden başlat

sonsöz

Evet, birisi bu makaleyi çok özel, biraz anlaşılır ve biri işe yaramaz buldu. Her şeyin canlı ve pratikte nasıl göründüğüne dair derinlemesine ayrıntılar ve çizimler olmadan kasıtlı olarak yaptım. İlk olarak, bu çalışma nankör olacak ve sadece daha fazla soru ortaya çıkaracaktır. İkincisi, forumlarda telefonlarını öldürdüklerinden şikayet eden bir kullanıcı ordusu görmek istemiyorum.

Bir sonraki yazımda sizlere Tweaks'i nasıl yapacağınızı anlatacağım. Telefonun yerel araçlarıyla telefon görüşmelerinin otomatik olarak kaydedilmesine ilişkin bir örnek olacaktır. İlginiz için teşekkür ederiz.

not Bir şey net değilse veya kafa karıştırıcı değilse, sorular sorun - her zaman cevaplamaktan ve açıklamaktan memnuniyet duyarım.

Android dünyasıyla aktif olarak ilgileniyorsanız, özel yazılımlar ve çeşitli modlar kurun, muhtemelen Odex ve Deodex yazılımlarının olduğunu duymuşsunuzdur, bu ne anlama geliyor? Bu makaleden öğrenin!

Odex, Deodex ne anlama geliyor?

Deodex ne içindir?

Her şeyi bir kerede yerine koymak için biraz önceden koşmak: Çeşitli modlar kurmak isteyenler için ürün yazılımındaki Deodex uygulamaları gereklidir - bunlar kökten değişebilir dış görünüş Android (simgeleri değiştirin, bildirim çubuğunu değiştirin, menü ekleyin veya kaldırın). Şimdi genel olarak odex ve deodex'in ne olduğuna bakalım.

Odex nedir?

Herhangi bir programda, girilen kullanıcı verilerini yürüten sözde bir yönetici bölüm vardır. işletim sisteminde Android verildi parça taşındı ayrı dosya sınıflarda. DEX

Ancak, bir kural olarak, resmi ürün yazılımı uygulamanın bu kısmı, sistemin başlatılmasını ve işlenmesini hızlandırmak için çıkarılmıştır. sanal makine Dalvik Sanal Makinesi(Android 4.4'e kadar). Yürütme kısmı çıkarılırsa, o zaman ODEX denir. Adları altında Android uygulamaları için yeni bir çalışma zamanının gelmesiyle SANAT(Android Lollipop 5.0'dan beri), uygulamaların çalışma biçiminde büyük değişiklikler var, ancak mod sevenler için deodex ihtiyacı devam ediyor.

Odex ve Deodex ürün yazılımının artıları ve eksileri

Odex

  • - Odex, bellenimi değiştirmek daha zor
  • + Odex, biraz daha hızlı çalışıyor
  • + Odex, uygulamaları yüklemek için daha az yer kaplar

Deodex

  • - Deodex - deodexing sırasında bir şeyler ters giderse, o zaman Android'i yeniden başlatacaksınız
  • + Deodex - bellenimin kolay özelleştirilmesi
  • - Deodex - uygulamaları yüklemek için daha fazla bellek alır

Deodex ürün yazılımını nasıl edinebilirim?

Aşağıda, Deodex ürün yazılımını çalıştırabileceğiniz programlar sunulacaktır. Ancak bunun için biraz hazırlanmanız gerekiyor.

  1. Java JDK'yı bilgisayarınıza indirip yüklemeniz gerekiyor
  2. Kök Tarayıcı dosya yöneticisini kurun ve / sistem bölümüne gitmek ve aşağıdaki klasörleri dahili belleğe veya bellek kartına kopyalamak için kullanın:
    • / özel uygulama
    • / çerçeve

JoelDroid Batch Deodexer kullanan Deodex üretici yazılımı

Android sürümleri: Lolipop 5.x.x
iş için gerekli: NET Framework 4.5 ve Java JDK'sı
İndirmek: JoelDroid Toplu Deodexer

JoelDroid Toplu Deodexer nasıl kullanılır

  1. Android klasörlerini (uygulama, özel uygulama, çerçeve) bilgisayardaki herhangi birine kopyalayın (örneğin, MyRom)
  2. JoelDroid Batch Deodexer programını çalıştırın ve "Gözat"a tıklayarak konumu belirtin, klasörler (app, priv-app, framework)
  3. "İşlemi Başlat" ı tıklayın

Android Runtime için Deodexer kullanan Deodex üretici yazılımı

Android sürümleri: Lolipop 5.x.x, Marshmallow 6.x.x
iş için gerekli: Java JDK'sı
İndirmek: Android Çalışma Zamanı için Deodexer

Android Çalışma Zamanı için Deodexer nasıl kullanılır?

  1. Program klasörünü içeren arşivi açın
  2. Android klasörlerini (uygulama, özel uygulama, çerçeve) bilgisayardaki herhangi birine (örneğin sistem) kopyalayın
  3. Deodexer for Android Runtime programını çalıştırın ve (app, priv-app, framework) bulunduğu klasörün konumunu belirtin
  4. Deodex'i kontrol edin: uygulama, özel uygulama, çerçeve
  5. Yürüt düğmesine basın

Jbart kullanarak Deodex üretici yazılımı

Android sürümleri: Ginerbread 2.3.x - Marshmallow 6.x.x
iş için gerekli: Java JDK'sı
İndirmek: Jbart

Jbart nasıl kullanılır

  1. Program klasörünü içeren arşivi açın
  2. Jbart'ı başlatın
  3. İndirmek / system ile tüm klasör c Android, bir bilgisayara taşıyın ve bir ZIP arşivinde paketleyin veya ZIP'de paketlenmiş bir bellenime ihtiyacınız var
  4. ZIP arşivini belirtin
  5. Seçme Android sürümü(Roma API'sı)
  6. Sağ alttaki "D - (Deodex)" seçeneğine tıklayın

Bu kadar! Daha fazla makale ve bölümde okunan talimatlar Makaleler ve Hack'ler Android... Sitede kalın Android +1, daha da ilginç olacak!

onun Android tablet veya telefon, bellenim olmasına dikkat etti odexed ve deodex'li... Ve çok az insan bu kavramların arkasında neyin gizlendiğini ve bu veya bu tür bellenimin beraberinde getirdiği avantaj ve dezavantajları anlıyor.

bugün deneyeceğim basit kelimelerle odex ve deodex'in ne olduğunu ve neden gerekli olduğunu açıklayın.

Stok (fabrika) bellenimi olan bir tablet veya telefondaki sistem uygulamalarının bulunduğu klasöre bakarsanız, her uygulamanın apk dosyasına ek olarak ikizi bir odex dosyası olduğunu fark edeceksiniz. Örneğin, applikatoin.apk dosyası, applikatoin.odex dosyasına karşılık gelir.

Bu odex dosyası neden gerekli? Kısacası (ve basitleştirilmiş), her program, çalıştığı bir dizi talimattan ve örneğin ekranda görüntülenen resimler gibi yardımcı verilerden oluşur. Böylece program kodunun kendisi odex dosyasında saklanır.

içindeki tüm uygulamalar Android sistemi Java dilinde yazılmış (kodlanmış) ve böylece cihazın beyni - işlemcisi bu Java kodunu çalıştırabilir, sanal Java makinesi "Dalvik" tarafından işlemci için anlaşılır bir dile çevrilir.

Deodex'li bellenimde kod içeride apk dosyası a. Apk dosyaları her zamanki gibi paketlenir zip dosyaları, bu nedenle deodex'li bellenim genellikle daha küçüktür.

Muhtemelen odexed bellenimin avantajının ne olduğunu anladınız. Sistem uygulamaları, belirli donanımlarda çalışacak şekilde zaten optimize edilmiştir.

Ancak deodex'li uygulamanın içerdiği kod herhangi bir programda çalıştırılabilir. android cihaz ve bu tür programların değiştirilmesi daha kolaydır. Örneğin içindeki görselleri değiştirmek için normal bir zip arşivi gibi apk dosyasını açıp, görselleri değiştirip uygulamayı tekrar paketlemeniz yeterlidir. Odexli uygulamalarda böyle bir sayı çalışmayacaktır - bu tür değişikliklerden sonra program tamamen çalışmayı durdurabilir.

Android sistemi bellenimi ilk kez deodex ettiğinde, kodu onlardan çıkarır, yeniden derler ve özel bir yere kaydeder: dalvik-cache klasöründe ve ardından gerekli apk dosyası için hazır kodu bu klasörden alır. . Bu nedenle, bir tableti veya telefonu yeniden başlatırken, dalvik önbelleğini (dalvik önbelleğini temizle) - içindeki programı temizlemeniz önerilir. yeni üretici yazılımı değişebilir ve sistem başladığında eski kodu kullanır. Bu nedenle, deodex'li bellenimin, bunları cihaza yükledikten ve dalvik-cache'yi temizledikten sonra ilk kez çalışması çok uzun sürüyor.

Ayrıca, odexed yazılımların benzer ancak deodex'li yazılımlardan daha hızlı çalıştığına inanılmaktadır.

Bu kısa notta, okuyucularımıza jBart kullanarak Android için deodexing yazılımını ve ayrıca ODEX (odex) ve DEODEX (deodex) ürün yazılımı arasındaki farkı anlatacağız. Öncelikle, bunun için aşağıdaki bağlantılara başvurarak odex / deodex terimlerinin ne anlama geldiğini anlayalım:

Bu yazının yazıldığı sırada şimdiki versiyonu NS jBart v1.8.9 -"Program, Android işletim sistemine dayalı bellenim çevirme işlemini otomatikleştirmek için tasarlanmıştır. 2.x.x'ten 4.x.x'e (Android 4.4 KitKat dahil) Android sürümlerini destekler. Programın özü, değiştirilmiş bir apk aracıdır. firmware'den apk ve jar dosyaları."

Hikayeyi uzun süre uzatmadan - hadi geçelim pratik örnek... Çok uzun zaman önce yazdığımız MTS'den ürün yazılımı üzerinde "eğiteceğiz". İlk adım, öyle ya da böyle, / system / app ve / system / framework klasörlerini ve build.prop dosyasını tabletten indirmelidir. hangi sistem klasöründe bulunabilir. Kopyalamak için bazı donanım yazılımının kopyalanması gerekebilir. kök hakları(Oysters T7V 3G'de uygulama kullanılarak kolayca elde edilebilirler. motosikletçi, arama motorlarında kolayca bulabileceğiniz). Gerekli dosya ve klasörleri indirdikten sonra - onları sistem dizinine yerleştirin ve bir arşive paketleyin - sistem.zip, böylece arşivin kökü sistem klasörünü içerir ve içinde uygulama, çerçeve alt klasörleri ve bulid.prop klasörü bulunur:

Doğru ROM API sürümünü seçiyoruz (yani Android sürümü), bizim durumumuzda 4.2.x, Deodex düğmesine basın ve bekleyin. İşlemin tamamlanmasının ardından, deodex'li bellenim içeren arşiv jBART-master \ output \ deodexed_system.zip dosyasına yerleştirilecektir. Gördüğünüz gibi, bellenim dosyaları artık .odex dosyalarını değil, yalnızca .apk dosyalarını içerir. Artık bunların değiştirilmesine, çevrilmesine, düzenlenmesine vb. geçebilirsiniz. değişir. Ancak bu zaten tamamen farklı bir not için bir konudur. Özetle, jBart'ın yardımıyla ve birkaç basit işlemle, saatli bellenimden, yani. "gelenek". Herkesin istek ve ihtiyaçlarına göre değiştirebileceği dosyalar.