Uygulamanızı yayına hazırlayın

Uygulamanızı yayınlamaya hazırlamak için uygulamanızın yayın sürümünü yapılandırmanız, oluşturmanız ve test etmeniz gerekir. Yapılandırma görevleri, uygulamanızı optimize etmenize yardımcı olan temel kod temizleme ve kod değiştirme görevlerini içerir. Oluşturma süreci, hata ayıklama oluşturma sürecine benzer ve JDK ile Android SDK araçları kullanılarak yapılabilir.

Test görevleri, uygulamanızın gerçek dünya koşullarında beklendiği gibi çalıştığından emin olmanıza yardımcı olan son bir kontrol görevi görür. Firebase, Firebase Test Lab aracılığıyla hem fiziksel hem de sanal test cihazlarından oluşan geniş bir set sunar. Bu cihazları kullanarak uygulama kalitenizi artırabilirsiniz.

Uygulamanızı yayınlanmaya hazırlamayı tamamladığınızda, imzalı bir APK dosyanız olur. Bu dosyayı doğrudan kullanıcılara veya Google Play gibi bir uygulama pazar yeri üzerinden dağıtabilirsiniz.

Bu belgede, uygulamanızı yayınlamaya hazırlamak için yapmanız gereken temel görevler özetlenmektedir. Bu sayfada açıklanan görevler, kullanıcılara nasıl yayınlandıklarına veya dağıtıldıklarına bakılmaksızın tüm Android uygulamaları için geçerlidir. Uygulamanızı Google Play üzerinden yayınlıyorsanız Güvenle yayınlama başlıklı makaleyi okuyun.

Not: En iyi uygulama olarak, bu sayfada belirtilen görevleri gerçekleştirmeden önce uygulamanızın işlevsellik, performans ve kararlılıkla ilgili tüm yayınlama ölçütlerini karşıladığından emin olun.

Hazırlık sürecinin geliştirme sürecine nasıl dahil edildiğini gösterir.

1. şekil. Sürüm hazırlama, zorunlu bir geliştirme görevidir ve yayınlama sürecinin ilk adımıdır.

Yayınlamaya hazırlanmak için yapılması gerekenler

Uygulamanızı kullanıcılara sunmak için kullanıcıların Android destekli cihazlarına yükleyip çalıştırabileceği, yayınlanmaya hazır bir paket oluşturmanız gerekir. Yayınlanmaya hazır paket, hata ayıklama APK dosyasıyla aynı bileşenleri (derlenmiş kaynak kodu, kaynaklar, manifest dosyası vb.) içerir ve aynı derleme araçları kullanılarak oluşturulur. Ancak hata ayıklama APK dosyasının aksine, yayınlanmaya hazır APK dosyası kendi sertifikanızla imzalanır ve zipalign aracıyla optimize edilir.

Uygulamanızı yayınlamaya hazırlamak için gerçekleştirdiğiniz beş görevi gösterir.

Şekil 2. Uygulamanızı yayınlamaya hazırlamak için beş temel görev vardır.

Uygulamanızı Android Studio ile oluşturuyorsanız imzalama ve optimizasyon görevleri genellikle sorunsuz bir şekilde tamamlanır. Örneğin, uygulamanızı tek seferde derlemek, imzalamak ve optimize etmek için Gradle derleme dosyalarıyla birlikte Android Studio'yu kullanabilirsiniz. Komut satırından derleme yaparken Gradle derleme dosyalarını da aynı şekilde yapılandırabilirsiniz. Gradle derleme dosyalarını kullanma hakkında daha fazla bilgi için Derlemenizi yapılandırma başlıklı makaleyi inceleyin.

Uygulamanızı yayınlamaya hazırlamak için genellikle Şekil 2'de gösterildiği gibi beş ana görevi yerine getirirsiniz. Her ana görev, uygulamanızı nasıl yayınladığınıza bağlı olarak bir veya daha fazla küçük görev içerebilir. Örneğin, uygulamanızı Google Play üzerinden yayınlıyorsanız uygulamanızı yayınlanmaya hazırlarken manifestinize özel filtreleme kuralları eklemek isteyebilirsiniz. Benzer şekilde, Google Play yayınlama yönergelerine uymak için yayınlama materyallerini toplarken ekran görüntüleri hazırlamanız ve tanıtım metni oluşturmanız gerekebilir.

Şekil 2'de listelenen görevleri genellikle uygulamanızda kapsamlı bir şekilde hata ayıklayıp test ettikten sonra gerçekleştirirsiniz. Android SDK, Android uygulamalarınızı test etmenize ve hatalarını ayıklamanıza yardımcı olacak çeşitli araçlar içerir. Daha fazla bilgi için Uygulamanızda hata ayıklama ve Uygulamanızı test etme başlıklı makaleleri inceleyin.

Malzemeleri ve kaynakları hazırlayın

Uygulamanızı yayınlamaya hazırlamak için çeşitli destekleyici öğeler toplamanız gerekir. Bu, en azından uygulamanızı imzalamak için kullanılan şifreleme anahtarlarını ve bir uygulama simgesini içerir. Son kullanıcı lisans sözleşmesi de ekleyebilirsiniz.

Şifreleme anahtarları

Android, tüm APK'ların bir cihaza yüklenmeden veya güncellenmeden önce bir sertifikayla dijital olarak imzalanmasını gerektirir. Google Play Store'da Ağustos 2021'den sonra oluşturulan tüm uygulamaların Play Uygulama İmzalama'yı kullanması gerekir. Ancak AAB'nizi Play Console'a yüklemek için geliştirici sertifikanızla imzalamanız gerekir. Eski uygulamalar hâlâ kendi kendilerini imzalayabilir ancak Play Uygulama İmzalama'yı kullanıyor olsanız da kendi kendinizi imzalıyor olsanız da uygulamanızı yükleyebilmek için önce imzalamanız gerekir.

Sertifika şartları hakkında bilgi edinmek için Uygulamanızı imzalama başlıklı makaleyi inceleyin.

Önemli: Uygulamanız, geçerlilik süresi 22 Ekim 2033'ten sonra sona eren bir kriptografik anahtarla imzalanmalıdır.

Uygulamanız, özel anahtarınıza dayalı bir anahtar kullanmanızı gerektiren bir hizmete erişiyorsa veya üçüncü taraf kitaplığı kullanıyorsa başka yayın anahtarları da almanız gerekebilir.

Uygulama simgesi

Uygulamanızın simgesi, kullanıcıların cihazın ana ekranında ve başlatıcı penceresinde uygulamanızı tanımasına yardımcı olur. Ayrıca Uygulamaları Yönet, İndirilenlerim ve başka yerlerde de görünür. Ayrıca, Google Play gibi yayınlama hizmetleri de simgenizi kullanıcılara gösterir. Uygulama simgenizin olduğundan ve önerilen simge yönergelerine uyduğundan emin olun.

Not: Uygulamanızı Google Play'de yayınlıyorsanız simgenizin yüksek çözünürlüklü bir sürümünü oluşturmanız gerekir. Daha fazla bilgi için Uygulamanızı sergilemek için önizleme öğeleri ekleme başlıklı makaleyi inceleyin.

Son kullanıcı lisans sözleşmesi

Uygulamanız için bir son kullanıcı lisans sözleşmesi (EULA) hazırlamayı düşünebilirsiniz. EULA, kişinizi, kuruluşunuzu ve fikri mülkiyetinizi korumanıza yardımcı olabilir. Bu nedenle, uygulamanızla birlikte bir EULA sağlamanızı öneririz.

Çeşitli materyaller

Uygulamanızı duyurmak için tanıtım ve pazarlama materyalleri de hazırlamanız gerekebilir. Örneğin, uygulamanızı Google Play'de yayınlıyorsanız tanıtım metni hazırlamanız ve uygulamanızın ekran görüntülerini oluşturmanız gerekir. Daha fazla bilgi için Uygulamanızı sergilemek için önizleme öğeleri ekleme başlıklı makaleyi inceleyin.

Uygulamanızı yayınlanmaya hazırlama

Tüm destekleyici materyallerinizi topladıktan sonra uygulamanızı yayınlanmaya hazırlamaya başlayabilirsiniz. Bu bölümde, uygulamanızı yayınlamadan önce kaynak kodunuzda, kaynak dosyalarınızda ve uygulama manifestinizde yapmanızı önerdiğimiz yapılandırma değişikliklerinin bir özeti verilmektedir.

Bu bölümde listelenen yapılandırma değişikliklerinin çoğu isteğe bağlı olsa da iyi kodlama uygulamaları olarak kabul edilir ve bunları uygulamanızı öneririz. Bazı durumlarda, geliştirme sürecinizin bir parçası olarak bu yapılandırma değişikliklerini yapmış olabilirsiniz.

Uygun bir uygulama kimliği seçin

Uygulamanızın kullanım ömrü boyunca uygun olacak bir uygulama kimliği seçtiğinizden emin olun. Uygulamanızı kullanıcılara dağıttıktan sonra uygulama kimliğini değiştiremezsiniz. Bu özelliği ayarlamak için modül düzeyindeki build.gradle veya build.gradle.kts dosyasında applicationId özelliğini kullanın. Daha fazla bilgi için Uygulama kimliğini ayarlama başlıklı makaleyi inceleyin.

Hata ayıklamayı devre dışı bırakma

APK'nın hata ayıklanabilir olup olmadığını yapılandırmak için Groovy'de debuggable işaretini veya Kotlin komut dosyasında isDebuggable işaretini kullanın:

Kotlin

  android {
    ...
    buildTypes {
      release {
        isDebuggable = false
        ...
      }
      debug {
        isDebuggable = true
        ...
      }
    }
    ...
  }
  

Groovy

  android {
    ...
    buildTypes {
      release {
        debuggable false
        ...
      }
      debug {
        debuggable true
        ...
      }
    }
    ...
  }

Uygulama küçültmeyi etkinleştirme ve yapılandırma

Aşağıdaki optimizasyonların çoğu, yayın derlemeniz için küçültmeyi etkinleştirerek otomatik hale getirilebilir. Örneğin, günlük ifadelerini kaldırmak için ProGuard kuralları ekleyebilirsiniz. Küçültücü, kullanılmayan kodu ve kaynakları tanımlayıp kaldırır. Küçültücü, DEX boyutunu daha da küçültmek için sınıf ve değişken adlarını daha kısa adlarla da değiştirebilir.

Günlük kaydını devre dışı bırak

Uygulamanızı yayınlanmaya hazır hale getirmeden önce günlüğü devre dışı bırakın. Kaynak dosyalarınızdaki Log yöntemlerine yapılan çağrıları kaldırarak günlüğü devre dışı bırakabilirsiniz. Ayrıca projenizde oluşturulan günlük dosyalarını veya statik test dosyalarını da kaldırın.

Ayrıca, kodunuza eklediğiniz tüm Debug izleme çağrılarını (ör. startMethodTracing() ve stopMethodTracing() yöntem çağrıları) kaldırın.

Önemli: Ücretli içerik göstermek için WebView kullanıyorsanız veya JavaScript arayüzlerini kullanıyorsanız uygulamanızda hata ayıklamayı devre dışı bıraktığınızdan emin olun. Hata ayıklama, kullanıcıların Chrome Geliştirici Araçları'nı kullanarak komut dosyaları eklemesine ve içerik ayıklamasına olanak tanır. Hata ayıklamayı devre dışı bırakmak için WebView.setWebContentsDebuggingEnabled() yöntemini kullanın.

Proje dizinlerinizi temizleme

Projenizi temizleyin ve Projelere genel bakış bölümünde açıklanan dizin yapısına uygun olduğundan emin olun. Projenizde gereksiz veya yetim dosyalar bırakmak, uygulamanızın derlenmesini engelleyebilir ve uygulamanızın beklenmedik şekilde davranmasına neden olabilir. En azından aşağıdaki temizleme görevlerini gerçekleştirin:

  • cpp/, lib/ ve src/ dizinlerinizin içeriğini inceleyin. cpp/ dizini yalnızca Android NDK ile ilişkili kaynak dosyaları (ör. C veya C++ kaynak dosyaları, başlık dosyaları ya da makefile'lar) içermelidir. lib/ dizini, önceden oluşturulmuş paylaşılan ve statik kitaplıklar da dahil olmak üzere yalnızca üçüncü taraf kitaplık dosyalarını veya özel kitaplık dosyalarını içermelidir. src/ dizini yalnızca uygulamanızın kaynak dosyalarını (Java, Kotlin ve AIDL dosyaları) içermelidir. src/ dizini JAR dosyası içermemelidir.
  • Projenizde uygulamanızın kullanmadığı özel veya tescilli veri dosyalarını kontrol edin ve bunları kaldırın. Örneğin, projenizin res/ dizininde artık kullanmadığınız eski çizilebilir dosyaları, düzen dosyalarını ve değer dosyalarını arayıp bunları silin.
  • lib/ dizininizde test kitaplıkları olup olmadığını kontrol edin ve uygulamanız tarafından artık kullanılmıyorlarsa bunları kaldırın.
  • Yayınlamadan önce güncellemeniz veya kaldırmanız gereken ham öğe dosyaları ve statik dosyalar için assets/ dizininizin ve res/raw/ dizininizin içeriğini inceleyin.

Manifest ve Gradle derleme ayarlarınızı inceleyip güncelleyin

Aşağıdaki manifest ve derleme dosyası öğelerinin doğru şekilde ayarlandığını doğrulayın:

  • <uses-permission> öğesi

    Yalnızca uygulamanız için alakalı ve gerekli olan izinleri belirtin.

  • android:icon ve android:label özellikleri

    <application> öğesinde bulunan bu özellikler için değer belirtmeniz gerekir.

  • versionCode ve versionName özellikleri

    Uygulama modülü düzeyindeki build.gradle veya build.gradle.kts dosyasında bulunan bu özellikler için değer belirtmenizi öneririz. Daha fazla bilgi için Uygulamanıza sürüm oluşturma konusuna bakın.

Uygulamanızı Google Play'de yayınlıyorsanız ayarlayabileceğiniz birkaç ek derleme dosyası öğesi vardır. Örneğin, uygulama modülü düzeyindeki build.gradle veya build.gradle.kts dosyasında bulunan minSdk ve targetSdk özellikleri. Bu ve diğer Google Play ayarları hakkında daha fazla bilgi için Google Play'de filtreler konusuna bakın.

Uyumluluk sorunlarını giderme

Android, uygulamanızı çok çeşitli cihazlarla uyumlu hale getirmek için çeşitli araçlar ve teknikler sunar. Uygulamanızı en fazla sayıda kullanıcıya sunmak için aşağıdakileri yapabilirsiniz:

Birden fazla ekran yapılandırması için destek ekleyin.
Birden fazla ekranı desteklemeyle ilgili en iyi uygulamaları karşıladığınızdan emin olun. Birden fazla ekran yapılandırmasını destekleyerek Android'in desteklediği tüm ekran boyutlarında düzgün çalışan ve iyi görünen bir uygulama oluşturabilirsiniz.
Uygulamanızı daha büyük ekranlar için optimize edin.
Uygulamanızı, tabletler ve katlanabilir cihazlar gibi büyük ekranlı cihazlarda iyi çalışacak şekilde optimize edebilirsiniz. Örneğin, list-detail layouts, daha büyük ekranlarda kullanılabilirliği artırabilir.
Jetpack kitaplıklarını kullanabilirsiniz.
Jetpack, geliştiricilerin en iyi uygulamaları takip etmesine, ortak metin kodlarını azaltmasına ve Android sürümleri ile cihazlarında tutarlı bir şekilde çalışan kodlar yazmasına yardımcı olan bir kitaplık paketidir.

Sunucular ve hizmetler için URL'leri güncelleme

Uygulamanız uzak sunuculara veya hizmetlere erişiyorsa sunucu ya da hizmet için üretim URL'sini veya yolunu kullandığınızdan emin olun. Test URL'si ya da yolu kullanmayın.

Google Play için lisanslama özelliğini uygulama

Google Play üzerinden ücretli bir uygulama yayınlıyorsanız Google Play lisanslama desteği eklemeyi düşünebilirsiniz. Lisanslama, mevcut kullanıcının uygulamayı satın alıp almadığına bağlı olarak uygulamaya erişimi kontrol etmenize olanak tanır. Uygulamanızı Google Play üzerinden yayınlıyor olsanız bile Google Play Lisanslama'yı kullanmak isteğe bağlıdır.

Google Play Lisanslama Hizmeti ve bu hizmeti uygulamanızda kullanma hakkında daha fazla bilgi için Uygulama Lisanslama başlıklı makaleyi inceleyin.

Uygulamanızı yayınlanmaya hazırlama

Uygulamanızı yapılandırmayı tamamladıktan sonra, imzalı ve optimize edilmiş, yayınlamaya hazır bir APK dosyası oluşturabilirsiniz. JDK, APK dosyasını imzalamak için kullanılan araçları (Keytool ve Jarsigner); Android SDK ise APK dosyasını derlemek ve optimize etmek için kullanılan araçları içerir. Android Studio'yu veya komut satırından Gradle derleme sistemini kullanıyorsanız derleme sürecinin tamamını otomatikleştirebilirsiniz. Gradle derlemelerini yapılandırma hakkında daha fazla bilgi için Derleme varyantlarını yapılandırma başlıklı makaleyi inceleyin.

Sürekli entegrasyon sistemi kullanıyorsanız yayın sürecinizi otomatikleştirecek bir görev yapılandırabilirsiniz. Bu durum, sürümünüzün APK'sını veya AAB'sini oluşturmakla sınırlı değildir. Ayrıca, derleme yapıtlarını Play Console'a otomatik olarak yükleyecek şekilde de yapılandırabilirsiniz.

Android Studio ile Oluşturun

Android Studio ile entegre olan Gradle derleme sistemini kullanarak özel anahtarınızla imzalanmış ve optimize edilmiş, yayınlamaya hazır bir APK dosyası oluşturabilirsiniz. Android Studio'da derlemeleri nasıl ayarlayacağınızı ve çalıştıracağınızı öğrenmek için Uygulamanızı derleme ve çalıştırma başlıklı makaleye bakın.

Derleme işlemi, uygulamanızı imzalamak için uygun bir sertifikanız ve özel anahtarınız olduğunu varsayar. Uygun bir sertifikanız ve özel anahtarınız yoksa Android Studio bunları oluşturmanıza yardımcı olabilir. İmzalama süreci hakkında daha fazla bilgi için Uygulamanızı imzalama başlıklı makaleyi inceleyin.

Harici sunucuları ve kaynakları hazırlama

Uygulamanız uzak bir sunucuya bağlıysa sunucunun güvenli olduğundan ve üretimde kullanılacak şekilde yapılandırıldığından emin olun. Bu, özellikle uygulamanızda uygulama içi faturalandırmayı uyguluyorsanız ve imza doğrulama adımını uzak bir sunucuda gerçekleştiriyorsanız önemlidir.

Ayrıca, uygulamanız uzak bir sunucudan veya gerçek zamanlı bir hizmetten (ör. içerik feed'i) içerik getiriyorsa sağladığınız içeriğin güncel ve üretime hazır olduğundan emin olun.

Uygulamanızı yayınlamadan önce test etme

Uygulamanızın yayın sürümünü test etmek, uygulamanızın gerçekçi cihaz ve ağ koşullarında düzgün şekilde çalışmasını sağlar. Kullanıcı arayüzü öğelerinizin doğru boyutlandırıldığını ve uygulamanızın performansının ve pil verimliliğinin kabul edilebilir olduğunu doğrulamak için uygulamanızı ideal olarak en az bir cep telefonu boyutundaki cihazda ve bir tablet boyutundaki cihazda test edin. Firebase Test Lab, çeşitli cihazlarda ve Android işletim sistemi sürümlerinde test yapmak için de yararlı olabilir.

Testlere başlamak için Temel uygulama kalitesi başlıklı makaleyi inceleyin. Testi tamamlayıp uygulamanızın yayın sürümünün doğru şekilde çalıştığından emin olduğunuzda uygulamanızı kullanıcılara yayınlayabilirsiniz. Daha fazla bilgi için Uygulamanızı kullanıcılara sunma başlıklı makaleyi inceleyin.