Firebase'i kullanarak Android projenizi geliştirirken, tanıdık olmayan veya Firebase'e özgü kavramları keşfedebilirsiniz. Bu sayfa, bu soruları yanıtlamayı veya sizi daha fazla bilgi edinmenizi sağlayacak 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ı düzenli aralıklarla yeni konularla güncelleyeceğiz; bu nedenle hakkında bilgi edinmek istediğiniz konuyu ekleyip eklemediğimizi görmek için tekrar kontrol edin!
Android Studio için Firebase Asistanı eklentisi
Firebase Assistant, 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; üstelik hepsi Android Studio'nun içinden!
Firebase Assistant'ı kullanmak için Android başlangıç sayfasındaki talimatları izleyin. 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 bölümüne gidin).
Uygulamanıza eklemek üzere belirli Firebase ürünlerini seçtiğinizde Firebase Asistanı, gerekli bağımlılıkları otomatik olarak app/build.gradle
dosyanızda 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ünüzdeki (uygulama düzeyi) Gradle dosyanızdaki (genellikle
app/build.gradle
) bağımlılıkları güncelleyin. Ayrıca her Firebase kitaplığı bağımlılık satırındaki sürümleri de 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ünüze (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ı
Firebase'i Android projenize 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 eklemeniz gerekir. Ancak Firebase Assistant'ı kullanıyorsanız bu görevler kurulum sırasında sizin için otomatik olarak gerçekleştirilir.
Google hizmetleri eklentisinin 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 tek bir sürümü (BoM sürümünü) belirterek tüm Firebase kitaplık sürümlerinizi yönetmenize olanak tanır.
Uygulamanızda Firebase BoM'yi kullandığınızda BoM, BoM sürümüyle eşlenen 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ı, söz konusu BoM sürümüyle eşlenen sürümlere güncellenecektir.
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ş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ına yönelik desteği hakkında daha fazla bilgi edinin.
Modülünüzdeki (uygulama düzeyi) Gradle dosyanızdaki (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'yi kullanırken bağımlılık satırlarında ayrı kitaplık sürümlerini belirtmezsiniz.
dependencies { // Import the BoM for the Firebase platform implementation platform('com.google.firebase:firebase-bom:32.4.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 sık sorulan bazı sorular şunlardır:
BoM'de belirlenen bir kitaplık sürümünün nasıl geçersiz kılınacağı aşağıda açıklanmıştır:
BoM platformunu içe aktarmak için hattı 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 Uygulama Dizine Ekleme'nin v18.0.0 sürümünü 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 bildireceğiniz aşağıda açıklanmıştır:
dependencies { // Import the BoM for the Firebase platform implementation platform('com.google.firebase:firebase-bom:32.4.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ızda Firebase kitaplıklarını gerçekten eklemek ve kullanmak için, her kitaplığı modül (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 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 KTX kitaplığı adını şu şekilde kullanın:
dependencies { // Import the BoM for the Firebase platform implementation platform('com.google.firebase:firebase-bom:32.4.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ının kitaplık sürümlerini yönetir. Bunun tek istisnası, Firebase uygulamalarında çok yaygın olarak kullanıldığı için Google Mobile Ads SDK'sının dahil edilmesidir.
Her Firebase kitaplığı bağımsız olarak sürümlendirilse de, 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ığı sürümlerini yönetmek için BoM'yi kullandığınızda, Firebase kitaplığının hangi sürümünün başka bir Firebase kitaplığıyla uyumlu olduğunu izlemenize gerek kalmaz.
Ş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'yi hâlâ kullanabilirsiniz! Gradle 5.0 ve üzeri 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ızaenableFeaturePreview('IMPROVED_POM_SUPPORT')
ekleyin.Modülünüze (uygulama düzeyi) Gradle dosyasına (genellikle
app/build.gradle
), BoM'yi normal bir kitaplık gibi (platform
değiştiricisi olmadan) şu şekilde içe aktarın:dependencies { // Import the Firebase BoM implementation 'com.google.firebase:firebase-bom:32.4.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ık modülleri
Firebase Kotlin uzantıları (KTX) kitaplık modülleri, ana Firebase kitaplık modüllerinin küçük yardımcılarıdır ve bunları güzel ve deyimsel Kotlin kodu yazmak için kullanabilirsiniz.
Uygulamanızda bir KTX kütüphane modülü kullanmak için bağımlılığınızı -ktx
son ekini içerecek şekilde değiştirin. Her KTX modülünün otomatik olarak ana kitaplık modülüne bağımlılığı vardır, dolayısıyla uygulamanıza her iki bağımlılığı da eklemenize gerek yoktur.
dependencies { // Import the BoM for the Firebase platform (learn more) implementation platform('com.google.firebase:firebase-bom:32.4.0')// 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ü olayların 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ü 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 modülü sunar.
Henüz yapmadıysanız KTX modülleri için API referans belgelerine göz atın.
Özellik modülleri ve Play Özellik Sunumu
Mayıs 2021 (Firebase BoM v28.0.0) itibarıyla 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ını (Firebase BoM ile veya Firebase BoM olmadan) ekleyebilir ve bunları normalde yaptığınız gibi kullanabilirsiniz.
Örneğin, uygulamanız belirli bir gerçek zamanlı özelliği desteklemek için Gerçek Zamanlı Veritabanını kullanıyorsa firebase-database
bağımlılığını temel modül yerine özellik modülünün build.gradle
dosyasına ekleyebilirsiniz. Bu, çoğu kullanıcı için indirme boyutunu azaltacaktır.
Firebase SDK'larını özellik modüllerinde kullanırken aşağıdaki uyarılara dikkat edin:
Analytics
first_open
etkinliğini kullanan 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 Cloud Firestore'dan önce Kimlik Doğrulamanın yüklendiğinden emin olun; aksi halde bazı Cloud Firestore işlemlerinde yanlış kimlik doğrulama durumu bulunabilir.
firebase-crashlytics-ndk
dinamik bir özellik modülünün bağımlılığı olarak kullanırken, uygulamanızınbuild.gradle
dosyasındaunstrippedNativeLibsDir
özelliğini Crashlytics NDK belgelerinde açıklandığı gibi ayarlamanız gerekir.
Özellik modülleri ve Play Özelliği Yayını hakkında daha fazla bilgi için Play Özelliği Yayınına Genel Bakış sayfasını ziyaret edin.
Google hizmetleri Gradle eklentisi vs Google Play hizmetleri vs Google Play Store
Google, Firebase ve Android ekosisteminin birçok 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şim için doğru yapılandırmaya sahip olmasını sağlamak amacıyla derleme sırası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 (sonraki girişe bakın) ve uygulamanızın çalışma zamanındaki yetenekleri üzerinde hiçbir etkisi yoktur.
- Bu eklenti aynı zamanda 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
- Android cihazda çalışan ve cihazdaki uygulamalara çeşitli yaygın Google API'leri (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üncellemeleri ve özellik geliştirmeleri almasına olanak tanır. Google Play hizmetleri hakkında daha fazla bilgi edinin.
- Google Oyun mağazası
- Android cihaza uygulama, film, kitap ve daha fazlasını indirebileceğiniz bir mağaza
- Bir geliştirici olarak uygulamanızın dağıtımını, sürümlerini vb. Google Play Console aracılığıyla yönetirsiniz. Bir cihazın Google Play Store'u varsa, aynı zamanda Google Play hizmetlerini de çalıştırıyor demektir (ö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 kaynaklı kitaplıklar olarak geliştirilir. Geriye kalan özel olarak geliştirilen Firebase kitaplıklarını yakında 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ıç örneklerinden oluşan bir koleksiyona 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 bunları bir mobil cihazda veya sanal cihazda (AVD) çalıştırabilirsiniz. Veya bu hızlı başlangıçları Firebase SDK'larını kullanmak için örnek kod olarak kullanabilirsiniz.
Diğer ilgi çekici 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