Android için Firebase'i anlama

Android projenizi Firebase kullanarak geliştirirken Firebase'e özgü veya aşina olmadığınız kavramlarla karşılaşabilirsiniz. Bu sayfa, söz konusu soruları yanıtlamayı veya daha fazla bilgi edinmek için kaynaklara yönlendirmeyi amaçlamaktadır.

Bu sayfada ele alınmayan bir konuyla ilgili sorularınız varsa online topluluklarımızdan birini ziyaret edebilirsiniz. Ayrıca bu sayfayı da düzenli olarak yeni konularla güncelleyeceğiz. Öğrenmek istediğiniz konunun eklenip eklenmediğini görmek için sayfayı tekrar ziyaret edin.

Android Studio için Firebase Assistant eklentisi

Firebase Asistanı, Android uygulamanızı bir Firebase projesine kaydeden ve gerekli Firebase yapılandırma dosyalarını, eklentilerini ve bağımlılıklarını Android projenize ekleyen bir Android Studio eklentisidir. Tüm bu işlemler Android Studio'da yapılır.

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

Uygulamanıza eklemek için belirli Firebase ürünlerini seçtiğinizde Firebase Asistan, gerekli bağımlılıkları app/build.gradle dosyanızda otomatik olarak tanımlar. Firebase Android BoM (önerilen) kullanmak istiyorsanız modülünüzdeki (uygulama düzeyinde) Gradle dosyasındaki (genellikle app/build.gradle) bağımlılıkları güncelleyerek BoM platformunu içe aktarmanız gerektiğini unutmayın. Ayrıca, sürümleri her Firebase kitaplığı bağımlılığı satırından kaldırmanız gerekir.

Ayrıca bazı Firebase ürünlerini kullanmak için Android Studio dışında API'leri etkinleştirmeniz veya kaynak sağlamanız gerekir. Firebase Asistanı'ndaki her ürünle ilgili talimatlarda yapmanız gereken ek işlemler açıklanır. Örneğin, Cloud Firestore kullanmak için veritabanınızı ve kurallarınızı Firebase konsolunda ayarlamanız gerekir.

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

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

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

Google Hizmetleri eklentisi ile yapılandırma dosyasının birlikte nasıl çalıştığı hakkında bilgi edinmek için Android belgelerini ziyaret edin.

Firebase Android BoM (Bill of Materials)

Firebase Android BoM (Bill of Materials), yalnızca bir sürüm (BoM'ın sürümü) belirterek tüm Firebase kitaplık sürümlerinizi yönetmenize olanak tanır.

Uygulamanızda Firebase BoM kullandığınızda BoM, BoM'nin sürümüyle eşlenen bağımsız kitaplık sürümlerini otomatik olarak getirir. Tüm bağımsız kitaplık sürümleri uyumlu olacaktır. Uygulamanızdaki BoM 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 ilgili BoM sürümünün sürüm notlarına göz atın. Bir BoM sürümüne eşlenen kitaplık sürümlerini başka bir BoM sürümüyle karşılaştırmanız gerekiyorsa aşağıdaki karşılaştırma widget'ını kullanın.

Gradle'ın BoM platformları için desteği hakkında daha fazla bilgi edinin.

Firebase Android BoM'ı kullanarak modülünüzün (uygulama düzeyinde) Gradle dosyasında (genellikle app/build.gradle) bağımlılıkları nasıl tanımlayacağınız aşağıda açıklanmıştır. BoM kullanılırken bağımlılık satırlarında kitaplık sürümleri ayrı ayrı belirtilmez.

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

  // 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 bazı soruları aşağıda bulabilirsiniz:

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

Kotlin uzantıları (KTX) kitaplık modülleri

Özellik modülleri ve Play Feature Delivery

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

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

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

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

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

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

  • Dynamic Links veya Firebase In-App Messaging gibi Analytics first_open etkinliğine dayalı ürünler, dinamik özellik modülünde kullanıldığında bu etkinliği kaçırabilir.

  • Cloud Firestore ve Authentication öğelerini birlikte kullanırken her zaman aynı modüle eklemeniz gerekir. Bu mümkün değilse Authentication öğesinin Cloud Firestore öncesinde yüklendiğinden emin olun. Aksi takdirde, bazı Cloud Firestore işlemlerinin kimlik doğrulama durumu yanlış olabilir.

  • firebase-crashlytics-ndk öğesini dinamik özellik modülünün bağımlılığı olarak kullanırken Crashlytics NDK dokümanlarında 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ış başlıklı makaleyi inceleyin.

Google hizmetleri Gradle eklentisi, Google Play Hizmetleri ve Google Play Store karşılaştırması

Google, Firebase ve Android ekosisteminin çeşitli parçaları benzer adlandırma kurallarına sahiptir. Her biriyle ilgili kısa bir açıklama aşağıda verilmiştir:

Google hizmetleri Gradle eklentisi
Uygulamanızın Firebase ve Google API'lerine erişmek için doğru yapılandırmaya sahip olmasını sağlamak üzere derleme sırasında çalışan bir Gradle eklentisi (com.google.gms.google-services)
Bu eklenti, adının aksine Google Play Hizmetleri ile ilişkili değildir (sonraki girişe bakın) ve uygulamanızın çalışma zamanındaki özelliklerini etkilemez.
Bu eklenti, Firebase'i ayarlama 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 ortak Google API'leri (ör. Google Haritalar ve Google ile Giriş) sağlayan görünmez bir arka plan hizmeti
Bu ortak API'leri tek bir hizmette merkezileştirerek diğer uygulamaların boyutunu küçültür ve cihazın, işletim sistemi güncellemesi olmadan otomatik güvenlik güncellemeleri ve özellik geliştirmeleri almasına olanak tanır. Google Play Hizmetleri hakkında daha fazla bilgi edinin.
Google Play Store
Android cihazlarda uygulamaları, filmleri, kitapları ve daha fazlasını indirebileceğiniz bir mağaza
Geliştirici olarak, uygulamanızın dağıtımını, sürümlerini vb. Google Play Console üzerinden yönetirsiniz. Google Play Store'un yüklü olduğu cihazlarda Google Play Hizmetleri de çalışır (önceki girişe bakın). Google Play Store'un geliştiriciler için olan sürümü hakkında daha fazla bilgi edinin.
Google Play Games services
Mobil oyun geliştiriciler için bir dizi API
Google Play Oyun Hizmetleri ve Firebase'i Google Play Oyun Hizmetleri projenize entegre etme hakkında daha fazla bilgi edinin.

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

Firebase, açık kaynak geliştirmeyi destekler. Topluluğun katkılarını ve geri bildirimlerini bekliyoruz.

Firebase Android SDK'ları

Çoğu Firebase Android SDK'sı, herkese açık Firebase GitHub deposunda açık kaynaklı kitaplıklar olarak geliştirilir. Geriye kalan özel olarak geliştirilmiş Firebase kitaplıklarını yakında herkese açık GitHub hesabımıza taşımak için çalışmalarımız devam ediyor.

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ıç deposunda bulabilirsiniz.

Her hızlı başlangıcı Android Studio projesi olarak açabilir, ardından bunları mobil cihazda veya sanal cihazda (AVD) çalıştırabilirsiniz. Alternatif olarak, bu hızlı başlangıçları Firebase SDK'larını kullanmayla ilgili örnek kod olarak da kullanabilirsiniz.

Diğer ilgi alanı konuları