Odexed ve deodexed ROM'lar arasındaki fark nedir?


Yanıtlar:


39

Bir .dexdosya temelde, Android uygulamalarının üzerinde çalıştığı Dalvik VM için oluşturulmuş bir uygulamanın derlenmiş bytecode versiyonudur. Dalvik Executable için kısa olduğuna inanıyorum, ancak bunu doğru hatırlayıp hatırlamadığımdan emin değilim.

Bir .odexdosya bir Optimize edilmiş .dexdosyadır (bu nedenle 'o'), yani belirli bir platform için temel olarak önceden derlenmiştir. Bunun avantajı, VM'nin başlangıçta / çalışma zamanında herhangi bir optimizasyon yapması gerekmediğinden başlangıç ​​zamanının çok daha hızlı olmasıdır. Dezavantajları 1) Fazladan yer kaplar ve 2) Başka bir cihaza yerleştirilirse sıralı bir uygulama düzgün .odexçalışmaz ve çalışması için ilgili dosyaya sahip olması gerekir .

ROM'lar tipik olarak deodexli formda serbest bırakılır, çünkü bunlar oldukça kolay bir şekilde temalı ve kolayca değiştirilebilir, oysaki bir ROM'u tema haline getirmek / değiştirmek temelde imkansızdır (en iyi ihtimalle deliler gibi çökebilir). Bazı insanlar, performans kazancını tercih edecek kişiler için ROM'larını lisanslı sürümlerde yayınlamayı da seçiyor.

Gördüğüm stok ROM'larının çoğu sıra dışı, sanırım taşıyıcılar / üreticiler performans artışını istiyor. Ayrıca, herhangi bir resmi tema yöntemine sahip değiller, bu nedenle durum simgelerinizin veya sistem metninizin renklerini değiştiremez veya değiştiremezseniz umursamıyorlar. Ayrıca, sistemlerinde hangi aygıtı çalıştırmalarını istediklerini bilme avantajına sahiptirler, böylece .odexdosyaları çok kolay bir şekilde önceden derleyebilirler , sanırım. Ek bir bonus olarak, .apkdosyaları cihazdan çıkarmayı ve insanlarla paylaşmayı zorlaştırır .

Düzenleme: Buradaki fark konusunda çok net olmadığımı fark ettiğimden - "odexed" bir ROM, uygulamaların önceden derlendiği bir dosyadır ve bu nedenle .odexdosyaların dışında kalan ilişkili dosyaları içerir .apk. Bir "deodexed" ROM, .odexdosyalarda en iyi duruma getirilecek verilerin dosyalara daha fazla veya daha az bir şekilde birleştirildiği .apk(yani optimize edilmediği, ancak temel olarak platform agnostik olduğu), bu nedenle .apkdosyalar kendi kendine yeten ve hiç .odexdosya bulunmayan bir ROM'dur. . Bu genellikle smali / baksmali gibi bir deodexing uygulamasıyla yapılır .


Son düzenleme, işleri daha açık hale getirmek çok faydalı oldu. +1
rbrito

7

Şahsen bunun cevabını bir süre önce bilmek istedim. İşte geldiğim şey:

Odexed ve Deodexed

Uygulamaların belleğe daha yumuşak ve daha hızlı yüklenmesini sağlayan standart bir ROM'un piyasaya sürülmesi beklenmektedir. Her .apk, karşılık gelen bir .odex'e sahiptir. Uygulama sistem veya kullanıcı tarafından kullanıldığında, .odex uygulamayı yüklemeye başlamak için kullanılır. Deoksed olan bir ROM sadece .apk dosyasına sahiptir. Uygulama yalnızca verileri .apk dosyasından çekmekten belleğe çağrıldığında, sistemden daha kolay erişim için optimize edilmemesi nedeniyle bu işlem daha uzun sürer.

Çok sık sorulan sorular:

  1. Neden özel ROM'lar deodexed?
  2. Odexed veya deodexed ROM kullanmalı mıyım?

Bu soruları cevaplamak için tek kelime, temsili gelir. ROM temaları olan herhangi biriyle konuşursanız, deodexed bir ROM teması yapmanın son derece kolay olduğunu söylerler. Deodesed ROM'ları kullanmaya başladığımızdan beri, temalar artık ROM'un kendisini teması için sıkıcı bir seçenek yerine bir ROM'a uygulamak için temalar oluşturabilir (bir tema için özel bir ROM serbest bırakın). Sıralı bir ROM kullanıyorsanız ve temaları uygulamaya çalışırsanız, çalışmaz ya da yalnızca bazı görsel yönleri temellendirmez, bu da size deneyimlemek için korkunç bir kullanıcı arayüzü sunar.

Deodex Eksileri

Bahse girerim şimdi neden merak ediyorsun… neden özel bir ROM indirmek için bir seçenek bile bulunmuyor? Bunun cevabı hızdır. Odexed dosyaların daha kolay erişim için optimize edildiğini söylediğimi hatırlıyor musunuz? Basitçe söylemek gerekirse… optimize edilmiş (bir veri tablosunu indekslemek gibi) böylece sistem .apk dosyasını daha hızlı açabilir.

Deodex ve zipalign

Her iki dünyanın da en iyisini istemek, deodexed eğiliminin doruğa çıkmasından sonra, bu meraklı ROM geliştiricileri açılışta zipalign için bir çözüm buldu. Bu, her yeniden başlatmada her .apk'yi optimize eder ve daha sonra sistemin uygulamalara daha verimli ve en önemlisi daha hızlı erişmesini sağlar. Tabii ki, dezavantajı, bagaj zamanlarında biraz daha yavaştır.

özet

Odexed veya deodexed özel ROM'unu indirmek için bir seçeneğiniz varsa, sadece deodex ROM ile giderdim. Ne zaman bir temayı denemek veya bazı değişiklikler yapmak istediğinizi asla bilemezsiniz ve yepyeni bir ROM'u flaşlamak yerine kolay seçeneklere sahip olmak güzeldir. Daha yeni cihazlarda, açılışta zipalign için fark edilebilir bir fark görmeyebilirsiniz. Cihazınız oldukça yavaş ve eskiyse, bunun hakkında biraz daha düşünmenizi öneririm. Bahse girerim, bazılarınızın daha iyi performans ve kullanıcı arayüzünü kişiselleştirmek için hızlandırmak için en iyi duruma getirilmiş (optimize edilmiş) bir ROM almayı tercih edersiniz.

Konuyu yeniyseniz, orijinal yazımın üzerinde bulunan ortak terimleri burada bulabilirsiniz: http://codeversed.com/deodexed-vs-odexed-rom

Aksi halde, yukarıdakiler bilmeniz gereken her şeyi gösterir. Eğer bir şeyi kaçırırsam, lütfen bana bildirin :)


1

Bir .dex (dalvik çalıştırılabilir) dosyası, temelde Windows '.exe dosyalarına benzer (derlenmiş kod yerine Dalvik VM'nin dili hariç). Temel olarak, .odex (en iyi duruma getirilmiş dalvik çalıştırılabilir) ve deodex (en iyi duruma getirilmiş dalvik çalıştırılabilir), kaynak dosyalarının uygulamalarda nasıl işlendiğiyle ilgilidir. .Odex, dexopt programı tarafından optimize edilmiş bir .dex dosyasıdır: http://www.netmite.com/android/mydroid/dalvik/docs/dexopt.html

avantaj

  • Odex daha hızlı
  • temalandırmayı kolaylaştırır

dezavantaj

  • deodex ilk açılışta daha yavaştır
  • .odex dosyaları onları zorlaştırıyor

"Deodex", optimize edilmemiş .dex anlamına gelmez, bu .odex dosyalarını kaldırmak anlamına gelir (özünde .odex dosyalarını de ekleyin). Eldarerathis doğru.
Matthew

Odexing'in kritik bilgi kaynağını kaynaklar hakkında verdiğiniz için teşekkür ederiz! Dedi ki: exe karşılaştırma çok iyi değil.
Paul
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.