Android App Bundle hakkında

Android App Bundle, uygulamanızın derlenmiş kod ve kaynaklarının tamamını içeren, APK oluşturma ve imzalama işlemini ise Google Play'e bırakan bir yayınlama biçimidir.

Google Play, her cihaz yapılandırması için optimize edilmiş APK'lar oluşturmak ve sunmak üzere uygulama paketinizi kullanır. Böylece, uygulamanızı çalıştırmak için yalnızca belirli bir cihazda gereken kod ve kaynaklar indirilir. Farklı cihazlar için desteği optimize etmek amacıyla artık birden fazla APK oluşturmanız, imzalamanız ve yönetmeniz gerekmez. Ayrıca kullanıcılar daha küçük ve daha optimize edilmiş indirmeler elde eder.

Çoğu uygulama projesinde, optimize edilmiş APK'ların sunulmasını destekleyen uygulama paketleri oluşturmak için çok fazla çaba harcanması gerekmez. Uygulamanızın kodunu ve kaynaklarını zaten belirlenmiş kurallara göre düzenliyorsanız Android Studio'yu kullanarak veya komut satırını kullanarak imzalı Android App Bundle'lar oluşturun ve Google Play'e yükleyin. Bu durumda, optimize edilmiş APK sunma otomatik bir avantaj haline gelir.

Uygulamanızı yayınlamak için uygulama paketi biçimini kullandığınızda, isteğe bağlı olarak Play Feature Delivery'dan da yararlanabilirsiniz. Bu özellik, uygulama projenize özellik modülleri eklemenize olanak tanır. Bu modüller, yalnızca belirttiğiniz koşullara göre uygulamanıza dahil edilen veya daha sonra çalışma zamanında indirilebilen özellikler ve kaynaklar içerir. Play Core Library'yi kullanma

Uygulamalarını uygulama paketleriyle yayınlayan oyun geliştiriciler, Google Play'in büyük miktarda oyun öğesi dağıtma çözümü olan Play Asset Delivery'yi kullanabilir. Bu çözüm, geliştiricilere esnek dağıtım yöntemleri ve yüksek performans sunar.

Uygulamanızı Android App Bundle kullanarak yayınlamanızın nedenleri hakkında genel bilgi edinmek için aşağıdaki videoyu izleyin.

Sıkıştırılmış indirme boyutu kısıtlaması

Android App Bundle ile yayınlama, kullanıcılarınızın uygulamanızı mümkün olan en küçük indirme boyutuyla yüklemesine yardımcı olur ve sıkıştırılmış indirme boyutunu artırır. Yani bir kullanıcı uygulamanızı indirdiğinde, uygulamanızı yüklemek için gereken sıkıştırılmış APK'ların (ör. temel APK + yapılandırma APK'ları) toplam boyutu 4 GB'tan fazla olmamalıdır. Sonraki indirmeler (ör. bir özellik modülünün ve yapılandırma APK'larının isteğe bağlı olarak indirilmesi) de bu sıkıştırılmış indirme boyutu kısıtlamasına uymalıdır. Öğe paketleri bu boyut sınırına dahil edilmez ancak başka boyut kısıtlamaları vardır.

Play Console, uygulamanızın veya isteğe bağlı özelliklerinin olası indirmelerinden herhangi birinin maksimum boyut sınırlarını aştığını tespit ederse hata mesajı alırsınız.

Android App Bundle'ların APK genişletme (*.obb) dosyalarını desteklemediğini unutmayın. Bu nedenle, uygulama paketinizi yayınlarken bu hatayla karşılaşırsanız sıkıştırılmış APK indirme boyutlarını küçültmek için aşağıdaki kaynaklardan birini kullanın:

  • Her yapılandırma APK'sı türü için enableSplit = true ayarını yaparak tüm yapılandırma APK'larını etkinleştirdiğinizden emin olun. Bu sayede kullanıcılar, uygulamayı cihazlarında çalıştırmak için yalnızca gereken kod ve kaynakları indirir.
  • Kullanılmayan kodları ve kaynakları kaldırarak uygulamanızı küçülttüğünüzden emin olun.
  • Uygulama boyutunu daha da küçültmek için en iyi uygulamaları izleyin.
  • Yalnızca bazı kullanıcılarınız tarafından kullanılan özellikleri, uygulamanızın daha sonra isteğe bağlı olarak indirebileceği özellik modüllerine dönüştürmeyi düşünebilirsiniz. Bu işlem için uygulamanızda bazı yeniden düzenlemeler yapmanız gerekebileceğini unutmayın. Bu nedenle, önce açıklanan diğer önerileri denediğinizden emin olun.

Dikkat edilmesi gereken diğer noktalar

Android App Bundle'ları ile uygulamanızı oluştururken veya yayınlarken bilinen sorunlar aşağıda verilmiştir. Burada açıklanmayan sorunlar yaşıyorsanız hata bildirin.

  • Google Play Store kullanılarak yüklenmeyen ve gerekli bir veya daha fazla bölünmüş APK'sı eksik olan, yan yüklenmiş uygulamaların kısmi yüklemeleri, Google sertifikalı tüm cihazlarda ve Android 10 (API düzeyi 29) veya sonraki sürümleri çalıştıran cihazlarda başarısız olur. Uygulamanız Google Play Store'dan indirilirken Google, uygulamanın gerekli tüm bileşenlerinin yüklendiğinden emin olur.
  • Kaynak tablolarını dinamik olarak değiştiren araçlar kullanıyorsanız uygulama paketlerinden oluşturulan APK'lar beklenmedik şekilde davranabilir. Bu nedenle, uygulama paketi oluştururken bu tür araçları devre dışı bırakmanız önerilir.

  • Bir özellik modülünün derleme yapılandırmasında, temel (veya diğer) modüllerin özellikleriyle çakışan özellikler yapılandırmak mümkündür. Örneğin, buildTypes.release.debuggable = true değerini temel modülde, false değerini ise bir özellik modülünde ayarlayabilirsiniz. Bu tür çakışmalar, derleme ve çalışma zamanı sorunlarına neden olabilir. Varsayılan olarak, özellik modüllerinin bazı derleme yapılandırmalarını temel modülden devraldığını unutmayın. Bu nedenle, özellik modülü derleme yapılandırmanızda hangi yapılandırmaları korumanız ve hangilerini atlamanız gerektiğini anladığınızdan emin olun.

Ek kaynaklar

Android App Bundle'lar hakkında daha fazla bilgi edinmek için aşağıdaki kaynaklara göz atın.

Blog yayınları

Videolar