Henüz yapmadıysanız Firebase'i Android projenize ekleyin.
Veritabanı Oluşturma
Firebase Konsolu'nun Realtime Database bölümüne gidin. Mevcut bir Firebase projesi seçmeniz istenir. Veritabanı oluşturma iş akışını uygulayın.
Firebase Security Rules cihazınız için bir başlangıç modu seçin:
- Test modu
Mobil ve web istemci kitaplıklarını kullanmaya başlamak için iyi bir seçenektir ancak herkesin verilerinizi okumasına ve verilerinizin üzerine yazmasına izin verir. Testten sonra Firebase Gerçek Zamanlı Veritabanı Kurallarını Anlama bölümünü inceleyin.
Web, Apple veya Android SDK'yı kullanmaya başlamak için testmode'u seçin.
- Kilitli mod
Mobil istemcilerden ve web istemcilerinden tüm okuma ve yazma işlemlerini reddeder. Kimliği doğrulanmış uygulama sunucularınız, veritabanınıza erişmeye devam edebilir.
Veritabanı için bir konum seçin.
Seçtiğiniz düzenleme moduna veritabanının konumunu değiştiriyorsanız Yeni veritabanının URL'si aşağıdaki biçimlerden birinde olur:
(DATABASE_NAME.firebaseio.com
us-central1
konumundaki veritabanları) (diğer tüm konumlardaki veritabanları için)DATABASE_NAME.REGION.firebasedatabase.app
Bitti'yi tıklayın.
Realtime Database hizmetini etkinleştirdiğinizde, API'yi Cloud API Yöneticisi.
Realtime Database SDK'sını uygulamanıza ekleyin
Modül (uygulama düzeyinde) Gradle dosyanızda (genellikle<project>/<app-module>/build.gradle.kts
veya
<project>/<app-module>/build.gradle
),
Android için Realtime Database kitaplığına bağımlılığı ekleyin. Şunu kullanmanızı öneririz:
Firebase Android BoM
Kitaplık'ta sürüm oluşturmayı kontrol etmek için
dependencies { // Import the BoM for the Firebase platform implementation(platform("com.google.firebase:firebase-bom:33.2.0")) // Add the dependency for the Realtime Database library // When using the BoM, you don't specify versions in Firebase library dependencies implementation("com.google.firebase:firebase-database") }
Firebase Android BoM kullanıldığında, Uygulamanız her zaman Firebase Android kitaplıklarının uyumlu sürümlerini kullanacaktır.
(Alternatif) Firebase kitaplığı bağımlılıklarını kullanmadan BoM
Firebase BoM kullanmamayı seçerseniz her Firebase kitaplığı sürümünü belirtmeniz gerekir değerini alır.
Uygulamanızda birden çok Firebase kitaplığı kullanıyorsanız, kitaplık sürümlerini yönetmek için BoM kullanmanızı öneririz. Bu, tüm sürümlerin uyumlu olduğundan emin olun.
dependencies { // Add the dependency for the Realtime Database library // When NOT using the BoM, you must specify versions in Firebase library dependencies implementation("com.google.firebase:firebase-database:21.0.0") }
Realtime Database Security Rules ürününü yapılandır
Realtime Database, verilerinizin nasıl yapılandırılması, nasıl dizine eklenmesi ve ne zaman okunup yazılabileceğini tanımlamanıza olanak tanıyan açıklayıcı bir kural dili sağlar.
Veritabanınıza yazma
getInstance()
ve komutlarını kullanarak veritabanınızın bir örneğini alın
yazmak istediğiniz konumu belirtin.
Kotlin+KTX
// Write a message to the database val database = Firebase.database val myRef = database.getReference("message") myRef.setValue("Hello, World!")
Java
// Write a message to the database FirebaseDatabase database = FirebaseDatabase.getInstance(); DatabaseReference myRef = database.getReference("message"); myRef.setValue("Hello, World!");
Bu şekilde, Java da dahil olmak üzere çeşitli veri türlerini veritabanına kaydedebilirsiniz nesneler'i tıklayın. Bir nesneyi kaydettiğinizde, alıcılardan gelen yanıtlar bu konumun çocukları için geçerli.
Veritabanınızdan veri okuma
Uygulama verilerinizin gerçek zamanlı olarak güncellenmesini sağlamak için yeni oluşturduğunuz referansa bir ValueEventListener
eklemeniz gerekir.
Bu sınıftaki onDataChange()
yöntemi, işleyici şu durumda bir kez tetiklenir:
eklenir ve alt yayıncılar da dahil olmak üzere veriler her değiştiğinde tekrar eklenir.
Kotlin+KTX
// Read from the database myRef.addValueEventListener(object : ValueEventListener { override fun onDataChange(dataSnapshot: DataSnapshot) { // This method is called once with the initial value and again // whenever data at this location is updated. val value = dataSnapshot.getValue<String>() Log.d(TAG, "Value is: $value") } override fun onCancelled(error: DatabaseError) { // Failed to read value Log.w(TAG, "Failed to read value.", error.toException()) } })
Java
// Read from the database myRef.addValueEventListener(new ValueEventListener() { @Override public void onDataChange(@NonNull DataSnapshot dataSnapshot) { // This method is called once with the initial value and again // whenever data at this location is updated. String value = dataSnapshot.getValue(String.class); Log.d(TAG, "Value is: " + value); } @Override public void onCancelled(@NonNull DatabaseError error) { // Failed to read value Log.w(TAG, "Failed to read value.", error.toException()); } });
İsteğe bağlı: ProGuard'ı yapılandırma
Uygulamanızda Firebase Realtime Database uygulamasını ProGuard ile birlikte kullanırken şunları yapmanız gerekir:
sonrasında model nesnelerinizin nasıl serileştirileceğini ve seri durumdan çıkarılacağını
kod karartma. Veri okumak ve yazmak için DataSnapshot.getValue(Class)
veya DatabaseReference.setValue(Object)
kullanıyorsanız proguard-rules.pro
dosyasına kural eklemeniz gerekir:
# Add this global rule
-keepattributes Signature
# This rule will properly ProGuard all the model classes in
# the package com.yourcompany.models.
# Modify this rule to fit the structure of your app.
-keepclassmembers class com.yourcompany.models.** {
*;
}
ProGuard ile ilgili sorularınız veya sorunlarınız için yardım almak için şu sayfayı ziyaret edin: Guardsquare Topluluk forumları kullanarak bir uzmandan yardım alabilirsiniz.
Lansmana Hazırlanın
Uygulamanızı kullanıma sunmadan önce, lansman kontrol listesini inceleyerek uygulamanızın başlamaya hazır!
App Check özelliğini etkinleştirdiğinizden emin olun: veritabanlarınıza yalnızca sizin uygulamalarınız erişebilir.