Firebase'i kullanarak Android projenizi geliştirirken, alışılmadık veya Firebase'e özgü kavramlar keşfedebilirsiniz. Bu sayfa, bu soruları yanıtlamayı veya daha fazlasını öğrenmek için sizi kaynaklara yönlendirmeyi amaçlamaktadır.
Bu sayfada ele alınmayan bir konu hakkında sorularınız varsa, çevrimiçi topluluklarımızdan birini ziyaret etmekten çekinmeyin. Ayrıca bu sayfayı periyodik olarak 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 Assistant eklentisi
Firebase Assistant, Android uygulamanızı bir Firebase projesine kaydeden ve gerekli Firebase yapılandırma dosyalarını, eklentileri ve bağımlılıkları Android projenize ekleyen bir Android Studio eklentisidir - tümü Android Studio içinden!
Firebase Assistant'ı kullanmak için Android başlarken sayfasındaki talimatları uygulayın. Hem Android Studio'nun hem de Firebase Assistant'ın en güncel sürümlerini kullandığınızdan emin olun ( Dosya > Güncellemeleri kontrol et seçeneğine gidin).
Uygulamanıza eklemek için belirli Firebase ürünlerini seçtiğinizde, Firebase Assistant gerekli bağımlılıkları app/build.gradle
dosyanızda otomatik olarak bildirir. Ancak Firebase Assistant'ın mevcut yeteneklerinin ötesindeki Firebase özelliklerini kullanmak için bu bağımlılıklarda manuel olarak bazı değişiklikler yapmak isteyebilirsiniz:
Firebase Android BoM'yi 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 gerekir.Bir Kotlin uzantı kitaplığı kullanmak istiyorsanız, bunun yerine Firebase kitaplığının
ktx
sürümünü kullanmak için modül (uygulama düzeyi) Gradle dosyanıza (genellikleapp/build.gradle
) eklenen bağımlılık satırını değiştirin.
Google hizmetleri — eklenti ve yapılandırma dosyası
Android projenize Firebase eklemenin bir parçası olarak, projenize google-services
eklentisini ve bir
yapılandırma dosyasını 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 eklemelisiniz. Ancak Firebase Assistant kullanıyorsanız kurulum sırasında bu görevler sizin yerinize 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 belgelerini ziyaret edin.
Firebase Android BoM (Malzeme Listesi)
Firebase Android BoM (Malzeme Listesi), yalnızca bir sürüm, BoM'nin sürümü belirterek tüm Firebase kitaplık sürümlerinizi yönetmenize olanak tanır.
Uygulamanızda Firebase BoM'yi kullandığınızda BoM, BoM'nin sürümüyle eşlenen ayrı ayrı kitaplık sürümlerini otomatik olarak çeker. Tüm bireysel kitaplık sürümleri uyumlu olacaktır. Uygulamanızda BoM sürümünü güncellediğinizde, uygulamanızda kullandığınız tüm Firebase kitaplıkları, o 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 o BoM sürümünün sürüm notlarına bakın. Bir BoM sürümüyle eşlenen 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.
BoM platformları için Gradle desteği hakkında daha fazla bilgi edinin.
Modül (uygulama düzeyinde) Gradle dosyanızda (genellikle app/build.gradle
) bağımlılıkları bildirmek için Firebase Android BoM'yi nasıl kullanacağınız aşağıda açıklanmıştır. BoM kullanırken, bağımlılık satırlarında ayrı ayrı kitaplık versiyonları belirtmezsiniz.
dependencies { // Import the BoM for the Firebase platform implementation platform('com.google.firebase:firebase-bom:32.1.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'nin kullanımıyla ilgili bazı sık sorulan soruları burada bulabilirsiniz:
BoM'de belirlenmiş bir kitaplık sürümünü nasıl geçersiz kılacağınız aşağıda açıklanmıştır:
BoM platformunu içe aktarmak için satırı koruyun.
Kitaplığın bağımlılık satırında istediğiniz kitaplık sürümünü belirtin. Örneğin, BoM'de hangi sürüm belirlenmiş olursa olsun App Indexing v18.0.0'ı kullanmak istiyorsanız, ancak Kimlik Doğrulama ve Cloud Firestore için BoM sürümlerini kullanmak istiyorsanız bağımlılıkları nasıl beyan edeceğiniz aşağıda açıklanmıştır:
dependencies { // Import the BoM for the Firebase platform implementation platform('com.google.firebase:firebase-bom:32.1.0') // Declare the dependency for the App Indexing library and specify a version // This specified library version overrides the version designated in the BoM. implementation 'com.google.firebase:firebase-appindexing:18.0.0' // Declare the dependencies for the other Firebase libraries without specifying versions // These libraries will use the versions designated in the BoM. implementation 'com.google.firebase:firebase-auth' implementation 'com.google.firebase:firebase-firestore' }
Hayır. Uygulamanıza gerçekten Firebase kitaplıkları eklemek ve kullanmak için, her kitaplığı modülünüzde (uygulama düzeyi) Gradle dosyanızda (genellikle app/build.gradle
) ayrı bir bağımlılık satırı olarak bildirmeniz gerekir.
BoM'yi kullanmak, uygulamanızdaki tüm Firebase kitaplıklarının sürümlerinin uyumlu olmasını sağlar, ancak BoM aslında bu Firebase kitaplıklarını uygulamanıza eklemez .
Evet! Belirli Firebase kitaplığı bağımlılık satırlarınızı bildirdiğinizde, aşağıdaki gibi KTX kitaplık adını kullanın:
dependencies { // Import the BoM for the Firebase platform implementation platform('com.google.firebase:firebase-bom:32.1.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-ktx' implementation 'com.google.firebase:firebase-firestore-ktx' }
Hayır. Firebase Android BoM, yalnızca Firebase kitaplıkları için kitaplık sürümlerini yönetir. Tek istisna, Firebase uygulamalarında çok yaygın olarak kullanıldığı için Google Mobile Ads SDK'sının dahil edilmesidir.
Her bir Firebase kitaplığının sürümü bağımsız olarak oluşturulmuş olsa da her kitaplığın en son sürümünün diğerleriyle uyumlu olmasını sağlamak için birlikte oluşturulurlar.
Uygulamanızın Firebase kitaplık sürümlerini yönetmek için BoM'yi kullandığınızda, bir Firebase kitaplığının hangi sürümünün başka bir Firebase kitaplığıyla uyumlu olduğunu izlemeniz gerekmez.
Şu anda uygulamanızda yalnızca bir Firebase kitaplığı kullanıyor olsanız bile BoM'yi kullanmanızı öneririz çünkü başka bir Firebase kitaplığını ne zaman kullanmak isteyebileceğinizi asla bilemezsiniz!
Evet, BoM'u kullanmaya devam edebilirsiniz! Gradle 5.0 ve sonrası için BoM desteği otomatik olarak etkinleştirilir. Ancak, Gradle'ın önceki sürümleri için BoM özelliğini etkinleştirmeniz ve BoM'u biraz farklı şekilde içe aktarmanız yeterlidir.
settings.gradle
dosyanıza,enableFeaturePreview('IMPROVED_POM_SUPPORT')
ekleyin.Modül (uygulama düzeyi) Gradle dosyanıza (genellikle
app/build.gradle
), BoM'yi normal bir kitaplık gibi (platform
değiştirici olmadan) şu şekilde içe aktarın:dependencies { // Import the Firebase BoM implementation 'com.google.firebase:firebase-bom:32.1.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' }
GitHub'da Firebase Android SDK deposunu ziyaret edin.
Firebase BoM sürümlerini karşılaştırın
Kotlin uzantıları (KTX) kitaplıkları
Firebase Kotlin uzantıları (KTX) kitaplıkları, güzel ve deyimsel Kotlin kodu yazmanıza izin veren temel Firebase SDK'lerinin küçük yardımcılarıdır.
Uygulamanızda bir KTX kitaplığı kullanmak için bağımlılığınızı -ktx
son ekini içerecek şekilde değiştirin. Her KTX kitaplığının temel kitaplığa otomatik olarak bir bağımlılığı vardır, bu nedenle 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.1.0')// Declare the base library implementation 'com.google.firebase:firebase-analytics'// Declare the KTX library instead (which automatically has a dependency on the base library) implementation 'com.google.firebase:firebase-analytics-ktx' }
Her KTX kitaplığı, temel kitaplığın farklı sözdizimsel uzantılarını sağlar. Örneğin, Analytics KTX kitaplığı olayları günlüğe kaydetmeyi kolaylaştırır:
Önce (temel kitaplığı 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 kitaplığını kullanarak)
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 Uygulama Dizine Ekleme dışında tüm Firebase ürünleri bir KTX kitaplığı sunar.
Henüz yapmadıysanız, KTX kitaplıkları için API referans belgelerine bakın.
Özellik modülleri ve Play Özellik Teslimi
Mayıs 2021'den itibaren (Firebase BoM v28.0.0), Firebase Android SDK'ları, temel uygulama modülünüzden ayrı olarak yüklenen dinamik özellik modüllerinde kullanılabilir.
Dinamik özellik modüllerine yönelik desteği 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'
}
Artık dinamik modül desteği eklediğinize göre, uygulamanızın modüllerini öne çıkarmak için Firebase SDK bağımlılıkları (Firebase BoM ile veya olmadan) ekleyebilir ve bunları normalde yaptığınız gibi kullanabilirsiniz.
Örneğin, uygulamanız belirli bir gerçek zamanlı özelliği çalıştırmak için Gerçek Zamanlı Veritabanı kullanıyorsa, temel modül yerine özellik modülünün build.gradle
firebase-database
bağımlılığını ekleyebilirsiniz. Bu, çoğu kullanıcı için indirme boyutunu azaltacaktır.
Özellik modüllerinde Firebase SDK'larını kullanırken aşağıdaki uyarılara dikkat edin:
Analytics
first_open
etkinliğine dayanan Dinamik Bağlantılar 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, ikisini de her zaman aynı modüle dahil etmelisiniz. Bu mümkün değilse, Kimlik Doğrulamanın Cloud Firestore'dan önce yüklendiğinden emin olun; aksi halde, bazı Cloud Firestore işlemleri yanlış bir kimlik doğrulama durumuna sahip olabilir.
Bir dinamik özellik modülünün bağımlılığı olarak
firebase-crashlytics-ndk
kullanırken, Crashlytics NDK belgelerinde açıklandığı gibi uygulamanızınbuild.gradle
dosyasındaunstrippedNativeLibsDir
özelliğini ayarlamanız gerekir.
Özellik modülleri ve Play Özellik Sunumu hakkında daha fazla bilgi için Play Özellik Teslimatına Genel Bakış sayfasını ziyaret edin.
Google hizmetleri Gradle eklentisi vs Google Play hizmetleri vs Google Play Store
Google, Firebase ve Android ekosisteminin birkaç parçası benzer adlandırma kurallarına sahiptir. İşte her biri için kısa bir açıklama:
- 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ışan bir Gradle eklentisi (
com.google.gms.google-services
) - Adına rağmen, bu eklentinin Google Play hizmetleriyle hiçbir ilişkisi yoktur (bir sonraki girişe bakın) ve çalışma zamanında uygulamanızın yetenekleri üzerinde hiçbir etkisi yoktur.
- Bu eklenti, Firebase kurulumunun bir parçası olarak 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
- Bir Android cihazda çalışan ve cihazdaki uygulamalara birkaç yaygın Google API'si (Google Haritalar ve Google Oturum Açma gibi) sağlayan görünmez bir arka plan hizmeti
- Bu ortak API'leri tek bir hizmette merkezileştirerek, diğer uygulamaların boyutunu azaltır ve bir cihazın işletim sistemi güncellemesi olmadan otomatik güvenlik güncellemelerini ve özellik geliştirmelerini almasına olanak tanır. Google Play hizmetleri hakkında daha fazla bilgi edinin.
- Google Oyun mağazası
- Bir Android cihaza uygulama, film, kitap ve daha fazlasını indirmek için bir mağaza
- Bir geliştirici olarak, uygulamanızın dağıtımını, sürümlerini vb. Google Play Konsolu aracılığıyla yönetirsiniz. Bir cihazda Google Play Store varsa, Google Play hizmetlerini de çalıştırır (önceki girişe bakın). Geliştiriciler için Google Play Store hakkında daha fazla bilgi edinin.
- Google Play Oyunlar hizmetleri
- Mobil oyun geliştiricileri için bir dizi API
- Google Play Oyunlar hizmetleri ve Firebase'i Google Play Oyunlar hizmetleri projenize 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 ve topluluk katkılarını ve geri bildirimlerini teşvik ederiz.
Firebase Android SDK'ları
Çoğu Firebase Android SDK'sı, genel Firebase GitHub depomuzda açık kaynak kitaplıkları olarak geliştirilir. Kalan özel olarak geliştirilen Firebase kitaplıklarını yakında herkese açık GitHub'ımıza taşımak için aktif olarak çalışıyoruz!
hızlı başlangıç örnekleri
Firebase, Android'deki çoğu Firebase API'si için bir hızlı başlangıç örnekleri koleksiyonuna sahiptir. Bu hızlı başlangıçları genel Firebase GitHub hızlı başlangıç depomuzda bulabilirsiniz.
Her hızlı başlangıcı bir Android Studio projesi olarak açabilir, ardından bir mobil cihazda veya sanal bir cihazda (AVD) çalıştırabilirsiniz. Veya Firebase SDK'larını kullanmak için bu hızlı başlangıçları örnek kod olarak kullanabilirsiniz.
Diğer ilgi konuları
- Firebase Android SDK'larının Google Play hizmetlerine bağımlılıkları
- Firebase uygulamanızı Google Play'e bağlayın
- Play Oyunlar hizmetleri projenizle entegre edin