Android için Firebase'i anlama

Android projenizi Firebase kullanarak geliştirirken, Firebase'e özgü olmayan veya aşina olmadığınız kavramlar keşfedebilirsiniz. Bu sayfa, bu soruları yanıtlamayı veya sizi daha fazla bilgi edinebileceğiniz kaynaklara yönlendirmeyi amaçlıyor.

Bu sayfada ele alınmayan bir konuyla ilgili sorularınız varsa online topluluklarımızdan birini ziyaret edebilirsiniz. Ayrıca bu sayfayı düzenli aralıklarla yeni konularla güncelleyeceğiz. Bu nedenle, öğrenmek istediğiniz konuyu ekleyip eklemediğimizi görmek için tekrar kontrol edin!

Android Studio için Firebase Asistan eklentisi

Firebase Asistan, Android uygulamanızı bir Firebase projesiyle kaydeden ve gerekli Firebase yapılandırma dosyalarını, eklentileri ve bağımlılıkları Android projenize ekleyen bir Android Studio eklentisidir. Üstelik bunların hepsini Android Studio'dan yapabilirsiniz.

Firebase Asistan'ı kullanmak için Android başlangıç sayfasındaki talimatları uygulayın. Android Studio ve Firebase Asistan'ın en güncel sürümlerini kullandığınızdan emin olun (Dosya > Güncellemeleri kontrol et'e gidin).

Uygulamanıza eklemek üzere belirli Firebase ürünlerini seçtiğinizde, Firebase Asistan gerekli bağımlılıkları app/build.gradle dosyanızda otomatik olarak tanımlar. Ancak, Firebase Asistan'ın mevcut özelliklerinin ötesinde olan Firebase özelliklerini kullanmak için bu bağımlılıklarda manuel değişiklikler yapmak isteyebilirsiniz:

  • Firebase Android BoM'u kullanmak istiyorsanız BoM platformunu içe aktarmak için modül (uygulama düzeyi) Gradle dosyanızdaki (genellikle app/build.gradle) bağımlılıkları güncelleyin. Ayrıca sürümleri her bir Firebase kitaplığı bağımlılık satırından kaldırmanız da gerekir.

  • Kotlin uzantı kitaplığı kullanmak istiyorsanız modül (uygulama düzeyinde) Gradle dosyanıza eklenen bağımlılık satırını (genellikle app/build.gradle) Firebase kitaplığının ktx sürümünü kullanacak şekilde değiştirin.

Google hizmetleri - eklenti ve yapılandırma dosyası

Firebase'i Android projenize eklerken projenize google-services eklentisini ve google-services.json yapılandırma dosyasını da eklemeniz gerekir.

Firebase'i Android projenize Firebase konsolu, Management REST API veya Firebase CLI aracılığıyla eklerseniz eklentiyi ve yapılandırma dosyasını projenize manuel olarak eklemeniz gerekir. Ancak Firebase Asistan'ı kullanıyorsanız bu görevler kurulum sırasında sizin için otomatik olarak yapılır.

Google hizmetleri eklentisi ve yapılandırma dosyasının birlikte nasıl çalıştığını öğrenmek için Android dokümanlarını inceleyin.

Firebase Android BoM (Malzeme Listesi)

Firebase Android BoM (Bill of Materials), tek bir sürüm (BoM'un sürümü) belirterek tüm Firebase kitaplığı sürümlerinizi yönetmenizi sağlar.

Uygulamanızda Firebase BoM kullandığınızda BoM, BoM sürümüyle eşlenmiş bağımsız kitaplık sürümlerini otomatik olarak çeker. Tüm kitaplık sürümleri uyumlu olacaktır. Uygulamanızda BoM'un sürümünü güncellediğinizde, uygulamanızda kullandığınız tüm Firebase kitaplıkları bu BoM sürümüyle eşlenen sürümlere güncellenir.

Hangi Firebase kitaplığı sürümlerinin belirli bir BoM sürümüyle eşlendiğini öğrenmek için söz konusu BoM sürümünün sürüm notlarına göz atın. Bir BoM sürümüyle eşlenmiş kitaplık sürümlerini başka bir BoM sürümüyle karşılaştırmanız gerekirse aşağıdaki karşılaştırma widget'ını kullanın.

Gradle'ın BoM platformlarını desteklemesi hakkında daha fazla bilgi edinin.

Modül (uygulama düzeyi) Gradle dosyanızda (genellikle app/build.gradle) bağımlılıkları tanımlamak için Firebase Android BoM'yi nasıl kullanacağınızı buradan öğrenebilirsiniz. BoM kullanırken bağımlılık satırlarında kitaplık sürümlerini ayrı ayrı belirtmezsiniz.

dependencies {
  // Import the BoM for the Firebase platform
  implementation platform('com.google.firebase:firebase-bom:32.8.1')

  // Declare the dependencies for the desired Firebase products without specifying versions
  // For example, declare the dependencies for Firebase Authentication and Cloud Firestore
  implementation 'com.google.firebase:firebase-auth'
  implementation 'com.google.firebase:firebase-firestore'
}

Firebase Android BoM kullanımıyla ilgili sık sorulan sorulardan bazılarını aşağıda bulabilirsiniz:

Firebase BoM sürümlerini karşılaştırın

Kotlin uzantıları (KTX) kütüphane modülleri

Firebase Kotlin uzantıları (KTX) kitaplık modülleri, ana Firebase kitaplık modüllerinin küçük tamamlayıcılarıdır. Bunları kullanarak güzel ve deyimsel Kotlin kodu yazabilirsiniz.

Uygulamanızda bir KTX kitaplık modülü kullanmak için bağımlılığınızı -ktx son ekini içerecek şekilde değiştirin. Her KTX modülü otomatik olarak ana kitaplık modülüne bağımlı olduğundan, uygulamanıza her iki bağımlılığı da dahil etmenize gerek yoktur.

dependencies {
  // Import the BoM for the Firebase platform (learn more)
  implementation platform('com.google.firebase:firebase-bom:32.8.1')

  // Declare the main module
  implementation 'com.google.firebase:firebase-analytics'

  // Declare the KTX module instead (which automatically has a dependency on the main module)
  implementation 'com.google.firebase:firebase-analytics-ktx'
}

Her KTX modülü, ana modülün farklı sözdizimsel uzantılarını sağlar. Örneğin, Analytics KTX modülü, etkinliklerin günlüğe kaydedilmesini kolaylaştırır:

Önce (ana modülü kullanarak)

val analytics = FirebaseAnalytics.getInstance();
val bundle = Bundle();
bundle.putString(FirebaseAnalytics.Param.ITEM_ID, id);
bundle.putString(FirebaseAnalytics.Param.ITEM_NAME, name);
bundle.putString(FirebaseAnalytics.Param.CONTENT_TYPE, "image");
analytics.logEvent(FirebaseAnalytics.Event.SELECT_ITEM, bundle);

Sonra (bunun yerine KTX modülünü kullanın)

firebaseAnalytics.logEvent(FirebaseAnalytics.Event.SELECT_ITEM) {
    param(FirebaseAnalytics.Param.ITEM_ID, id)
    param(FirebaseAnalytics.Param.ITEM_NAME, name)
    param(FirebaseAnalytics.Param.CONTENT_TYPE, "image")
}

Firebase ML ve App Indexing hariç tüm Firebase ürünlerinde bir KTX modülü mevcuttur.

Henüz yapmadıysanız KTX modülleri için API referans belgelerine göz atın.

Özellik modülleri ve Play Özellik Dağıtımı

Mayıs 2021'den itibaren (Firebase BoM 28.0.0 sürümü) Firebase Android SDK'ları, temel uygulama modülünüzden ayrı olarak yüklenen dinamik özellik modüllerinde kullanılabilir.

Dinamik özellik modüllerini etkinleştirmek için temel modülünüzün build.gradle dosyasına aşağıdaki bağımlılığı ekleyin:

dependencies {
  implementation 'com.google.firebase:firebase-dynamic-module-support:16.0.0-beta03'
}

Dinamik modül desteğini eklediğinize göre artık uygulamanızın modüllerinde (Firebase BoM ile veya olmadan) Firebase SDK bağımlılıklarını ekleyebilir ve bunları her zamanki gibi kullanabilirsiniz.

Örneğin, uygulamanız belirli bir gerçek zamanlı özelliği desteklemek için Realtime Database'i kullanıyorsa temel modül yerine özellik modülünün build.gradle bölümüne firebase-database bağımlılığını ekleyebilirsiniz. Bu işlem, çoğu kullanıcı için indirme boyutunu küçültecektir.

Özellik modüllerinde Firebase SDK'larını kullanırken aşağıdaki uyarıları dikkate alın:

  • Analytics first_open etkinliğini temel alan Dynamic Links veya Firebase Uygulama İçi Mesajlaşma gibi ürünler, bir dinamik özellik modülünde kullanıldığında bu etkinliği kaçırabilir.

  • Cloud Firestore ve Authentication'ı birlikte kullanırken daima ikisini de aynı modüle eklemeniz gerekir. Bu mümkün değilse Kimlik Doğrulama'nın Cloud Firestore'dan önce yüklendiğinden emin olun. Aksi takdirde, bazı Cloud Firestore işlemleri yanlış kimlik doğrulama durumuna sahip olabilir.

  • firebase-crashlytics-ndk özelliğini bir dinamik özellik modülünün bağımlılığı olarak kullanırken, Crashlytics NDK belgelerinde açıklandığı gibi uygulamanızın build.gradle dosyasında unstrippedNativeLibsDir özelliğini ayarlamanız gerekir.

Özellik modülleri ve Play Feature Delivery hakkında daha fazla bilgi için Play Feature Delivery'ye genel bakış sayfasını ziyaret edin.

Google hizmetleri Gradle eklentisi - Google Play Hizmetleri - Google Play Store

Google, Firebase ve Android ekosisteminin birçok parçası benzer adlandırma kurallarına sahiptir. Aşağıda her birinin kısa bir açıklaması verilmiştir:

Google hizmetleri Gradle eklentisi
Uygulamanızın Firebase ve Google API'lerine erişmek için doğru yapılandırmaya sahip olduğundan emin olmak için derleme zamanında çalıştırılan bir Gradle eklentisi (com.google.gms.google-services)
Adına rağmen, bu eklentinin Google Play hizmetleriyle ilgisi yoktur (sonraki girişe bakın) ve uygulamanızın çalışma zamanındaki özelliklerini etkilemez.
Bu eklenti, Firebase kurulumu kapsamında uygulamanıza eklediğiniz google-services.json dosyasını da işler. Google hizmetleri Gradle eklentisi hakkında daha fazla bilgi edinin.
Google Play Hizmetleri
Android cihazda çalışan ve cihazdaki uygulamalara çeşitli yaygın Google API'leri (Google Haritalar ve Google ile Oturum Açma gibi) sağlayan görünmez bir arka plan hizmeti
Bu yaygın API'leri tek bir hizmette merkezileştirerek diğer uygulamaların boyutunu küçültür ve cihazın, OS güncellemesi olmadan otomatik güvenlik güncellemelerini ve özellik geliştirmelerini almasını sağlar. Google Play Hizmetleri hakkında daha fazla bilgi edinin.
Google Play Store
Android cihazlara uygulama, film, kitap ve diğer içerikleri indirmek için bir mağaza
Geliştirici olarak, Google Play Console üzerinden uygulamanızın dağıtımını, sürümlerini vb. yönetirsiniz. Bir cihazda Google Play Store varsa, cihaz aynı zamanda Google Play hizmetlerini de çalıştırıyordur (önceki girişe bakın). Geliştiriciler için Google Play Store hakkında daha fazla bilgi edinin.
Google Play Games services
Mobil oyun geliştiriciler için bir dizi API
Google Play Games hizmetleri ve Firebase'i Google Play Games hizmetleri projenizle nasıl entegre edeceğiniz hakkında daha fazla bilgi edinin.

Firebase Android SDK'ları için açık kaynak kaynaklar

Firebase, açık kaynak geliştirmeyi destekler. Ayrıca, topluluğun katkılarını ve geri bildirimi de teşvik ederiz.

Firebase Android SDK'ları

Çoğu Firebase Android SDK, herkese açık Firebase GitHub depomuzda açık kaynak kitaplıklar olarak geliştirilmiştir. Özel olarak geliştirilen Firebase kitaplıklarını herkese açık GitHub'a taşımak için aktif olarak çalışıyoruz.

Hızlı başlangıç örnekleri

Firebase, Android'deki çoğu Firebase API'si için hızlı başlangıç örnekleri koleksiyonu sunar. Bu hızlı başlangıç kılavuzlarını herkese açık Firebase GitHub hızlı başlangıç depomuzda bulabilirsiniz.

Her hızlı başlangıç kılavuzunu bir Android Studio projesi olarak açabilir, ardından bir mobil cihazda veya sanal cihazda (AVD) çalıştırabilirsiniz. Firebase SDK'larını kullanmak için örnek kod olarak bu hızlı başlangıç kılavuzlarını kullanabilirsiniz.

Diğer ilgi alanları