MultiDEX Nedir ? Nasıl Aktif Edilir ?

Android Multidex özelliği

Multidex özelliği, belirli bir boyutu aşan android kütüphanelerinde kullanılması gereken bir özelliktir.

Peki nedir bu Multidex özelliği ?

APK dosyaları, içerisinde .dex (Dalvik Executable) uzantısına sahip uygulamanızı çalıştırmak için kullanılan derlenmiş (bayt) kodu içeren Dalvik Yürütülebilir dosyalarını barındırır.

Bir DEX dosyası 65,536 referansa (method sayısına) sahip olabilir ki en basitinden bir Facebook SDK kullandığınız zaman bile bu yetersizdir ve MultiDEX özelliğini aktif hale getirmeniz gerekmektedir.

Örneğin projenize Google’ın haritalar kütüphanesi eklediğinizi varsayalım. Eğer Multidex özelliğini uygulama düzeyinde build.gradle dosyanızda aktif hale getirmezseniz uygulamanızı debug ederken “Error: Cannot fit requested classes in a single dex file.Try supplying a main-dex list. # methods: 72477 > 65536” benzeri bir hata ile karşılaşır ve debug işlemini tamamlayamazsınız.

 

Multidex özelliğini aktif etmek için uygulama düzeyinde build.gradle dosyamızı açıyoruz ve aşağıdaki gibi defaultConfig tag’i altına Multidex’i aktif edecek parametreyi yazıyoruz.

android {
    defaultConfig {
        ...
        multiDexEnabled true
    }
    ...

Bu değişikliği yaptıktan sonra Multidex özelliğini projeye dahil etmiş ve build işleminde her hangi bir hata almamış olmamız gerekiyor.

Yine de build işleminde hata alıyorsanız muhtemelen minumum SDK’iniz 21’den küçüktür. Yine aynı dosya içerisinde dependencies altına aşağıdaki tanımlamayı yaparak bu sorunu da çözebiliriz.

dependencies {
  compile 'com.android.support:multidex:1.0.1'
}

 

 

Bu yazıyı beğendiniz mi ?

Bloğuma abone olun

Yazılarımı kaçırmayın!



Makaleye yorum yap

Lütfen kibar ol. E-Posta adresin kimseye görünmeyecek!

This error message is only visible to WordPress admins

Error: API requests are being delayed for this account. New posts will not be retrieved.

There may be an issue with the Instagram access token that you are using. Your server might also be unable to connect to Instagram at this time.

Error: No posts found.

Make sure this account has posts available on instagram.com.

Click here to troubleshoot

Error: admin-ajax.php test was not successful. Some features may not be available.

Please visit this page to troubleshoot.