Android'de Resource Shrinking Nasıl Yapılır?

0 Replies 3 Views
·
Participants
Thread Starter #1
Android'de resource shrinking nasıl yapılandırılır?

Android uygulamalarında performans ve boyut optimizasyonu, geliştirme sürecinin önemli bir parçasıdır. Bu bağlamda, resource shrinking (kaynak küçültme) özellikle uygulama boyutunu azaltmak ve gereksiz kaynakların build zamanında çıkarılmasını sağlamak için kullanılır. Peki, bu özelliği etkin hale getirmek ve doğru yapılandırmak için nelere dikkat edilmelidir?

İlk adım, gradle build yapılandırmasında build.gradle dosyasına uygun ayarları eklemektir. Özellikle, release yapılandırmasında resource shrinking'i aktif hale getirmek gerekir. İşte temel yapılandırma örneği:

CODE
12345678910
android {
    buildTypes {
        release {
            minifyEnabled true
            shrinkResources true
            proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
        }
    }
}


Burada dikkat edilmesi gereken noktalar:

  • minifyEnabled: Kod ve kaynak sıkıştırmayı etkinleştirir. Bu, kodun boyutunu azaltmak ve obfuscation yapmak içindir.
  • shrinkResources: Bu ayar, kullanılmayan kaynakların (res/drawable, res/layout gibi) build sırasında otomatik olarak kaldırılmasını sağlar. Sadece minifyEnabled aktifken çalışır.

    İkinci aşama, proguard veya R8 kurallarını doğru şekilde yapılandırmaktır. Bazı kaynaklar, proguard dosyasında belirli kaynakların korunması veya çıkarılmasıyla ilgili kurallar eklenebilir. Örneğin, kullanılmayan veya kritikal kaynakların yanlışlıkla silinmemesini sağlamak adına:

    CODE
    12
    -keep resource xml/my_important_resource.xml
    


    Son olarak, resource shrinking'in etkili olabilmesi için uygulama içindeki gereksiz kaynakların tespiti ve temizlenmesi gerekir. Ayrıca, build sonrası testlerde uygulamanın sorunsuz çalıştığından emin olunmalı ve özellikle dinamik yüklenen kaynaklara dikkat edilmelidir.

    Resource shrinking, doğru yapılandırıldığında uygulama boyutunu önemli ölçüde azaltabilir, ancak yanlış yapılandırma veya kritik kaynakların yanlışlıkla silinmesine neden olabilir. Bu nedenle, test ve optimize edilerek kullanılmalıdır.
  • You must be logged in to reply.

    Users who are viewing this thread (Total: 3, Members: 3, Guests: 0)
    Total: 3 (members: 3, guests: 0)
    0 quotes selected