APK ve IPA Optimizasyonu: Uygulama Boyutunu Küçültme

Mobil uygulamanın boyutu, indirme hızını ve cihaz depolama alanını doğrudan etkiler. Google Play Store'da 100 MB üstü APK'lar uyarı alır, App Store'da ise boyut sınırlaması daha katıdır. Boyut optimizasyonu sadece teknik değil, kullanıcı deneyiminin de parçasıdır.

Büyük uygulamalar daha yavaş indirilir, depolama alanı sorunları yaşatır ve kötü bağlantılı ülkelerde kullanıcı kaybına neden olur. Örneğin, 50 MB'lık bir uygulama 3G ağında 2-3 dakika, 150 MB ise 8-10 dakika sürebilir.

1. Kullanılmayan Bağımlılıkları Kaldır

Flutter'da `pubspec.yaml` dosyasındaki paketleri gözden geçir. Gereksiz bağımlılık her biri 1-5 MB ekleme yapabilir.

1flutter pub deps --compact

Bu komut, proje bağımlılıklarının ağaç yapısını gösterir. Kullanılmayan paketleri tanımla ve kaldır.

2. Resim Varlıklarını Sıkıştır

Resimler APK boyutunun %30-50'sini oluşturabilir. WebP formatını kullan veya PNG'leri sıkıştır:

1ffmpeg -i original.png -q:w 80 optimized.webp

3. Kod Obfuskasyonu ve Minifikasyon

Flutter release build sırasında otomatik minifikasyon yapılır, ancak Android için ekstra yapılandırma gerekebilir.

Android'de `build.gradle` dosyasına ekle:

Reklam · TEST
AdSense Test ReklamıYazı arası (gönderi içi) · Yazı arası
1android {
2buildTypes {
3release {
4minifyEnabled true
5shrinkResources true
6proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
7}
8}
9}

4. App Bundle Kullan

Google Play Console'da, APK yerine App Bundle (.aab) yükle. Bu format, her cihaza sadece gerekli kaynakları sunar:

1flutter build appbundle

Beklenen çıktı: `build/app/outputs/bundle/release/app-release.aab`

App Bundle, dinamik dil ve ekran yoğunluğu desteği sayesinde APK'dan %15-35 daha küçüktür.

5. Vektör Grafikleri Kullan

Raster resimler yerine SVG veya Flutter vektör paketleri (`flutter_svg`) tercih et. Vektörler boyut açısından çok daha hafif, aynı zamanda farklı ekran boyutlarına uyum sağlar.

Release APK'nın boyut dağılımını görmek için:

1flutter build apk --analyze-size

Bu komut, `build/app/outputs/apk/release/app-release.apk.json` dosyası oluşturur ve her bileşenin boyutunu gösterir.

Başarılı optimizasyon sonrasında APK boyutu 150 MB'dan 60-80 MB'a düşebilir. IPA için benzer adımlar geçerli; iOS'ta ise `bitcode` ve `app thinning` özellikleri de devreye girer.

Reklam · TEST
AdSense Test ReklamıGönderi altı · Görüntülü
konu hakkında tepkinizi verebilirsiniz