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. Artık farklı cihazlar için desteği optimize etmek amacıyla 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ş kurallar çerçevesinde 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 Özellik Dağıtımı'ndan 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 Kitaplığı'nı 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 = trueayarı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 gerekli 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.
- Kullanıcılarınızın yalnızca bir kısmı 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, öncelikle 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 belirtilmiş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 uygulamaların yan yüklenmesiyle kısmi yüklemeler, 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, temel modülde
buildTypes.release.debuggable = trueolarak ayarlayabilir ve bir özellik modülündefalseolarak ayarlayabilirsiniz. Bu tür çakışmalar, derleme ve çalışma zamanı sorunlarına neden olabilir. Özellik modüllerinin, varsayılan olarak temel modüldeki bazı derleme yapılandırmalarını 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 hakkında daha fazla bilgi edinmek için aşağıdaki kaynaklara göz atın.
Blog yayınları
- İlk App Bundle'ınızı oluşturma
- Yeni yayınlama biçimi, Android'in geleceği için ne anlama geliyor?
- Uygulama ve oyun geliştirmenize, sunmanıza ve işinizi Google Play'de büyütmenize yardımcı olacak yeni özellikler
- Ek dil API'si de dahil olmak üzere en son Android App Bundle güncellemeleri
- Patchwork Plaid : Bir modülerleştirme hikayesi
- Google Santa Tracker — Moving to an Android App Bundle
- Play Console'daki geliştirici araçları
Videolar
- Play Uygulama İmzalama hakkında bilmeniz gereken her şey
- İlk App Bundle'ınızı oluşturma
- Uygulama paketleri: Bundletool ve Play Console ile test etme
- Uygulama paketi ile özelleştirilebilir yayınlama ve test sürümlerinin kolay paylaşımı
- Uygulamanızın boyutunu optimize etmenize ve Google Play'deki yükleme sayısını artırmanıza yardımcı olacak yeni araçlar