Android'de Kurulum ve Kurulum

Uygulamanızı Firebase'e bağlayın

Eğer henüz yapmadıysanız, Android projeye Firebase ekleyin .

Veritabanı Oluştur

  1. Gerçek Zamanlı Veri Tabanı bölümüne gidin Firebase konsoluna . Mevcut bir Firebase projesini seçmeniz istenecektir. Veritabanı oluşturma iş akışını izleyin.

  2. Firebase Güvenlik Kurallarınız için bir başlangıç ​​modu seçin:

    Test modu

    Mobil ve web istemci kitaplıklarını kullanmaya başlamak için iyidir, ancak herkesin verilerinizi okuyup üzerine yazmasına olanak tanır. Test ettikten sonra, mutlaka inceleyin anlayın Firebase Gerçek Zamanlı Veri Tabanı Kuralları bölümüne.

    Web, iOS veya Android SDK'yı kullanmaya başlamak için test modunu seçin.

    Kilitli mod

    Mobil ve web istemcilerinden gelen tüm okuma ve yazma işlemlerini reddeder. Kimliği doğrulanmış uygulama sunucularınız yine de veritabanınıza erişebilir.

  3. Veritabanı için bir bölge seçin. Bölgenin seçiminize bağlı olarak, veritabanı ad biçimde olacaktır <databaseName>.firebaseio.com veya <databaseName>.<region>.firebasedatabase.app . Daha fazla bilgi için, bkz projeniz için belirli konumları .

  4. Bitti tıklayın.

Gerçek Zamanlı Veritabanı etkinleştirdiğinizde, aynı zamanda API sağlayan Bulut API Yöneticisi .

Gerçek Zamanlı Veritabanı SDK'sını uygulamanıza ekleyin

Kullanılması Firebase Android Bom , senin modülü (uygulama düzeyinde) Gradle dosyası (genellikle Gerçek Zamanlı Veri Tabanı Android kütüphanesi için bağımlılık beyan app/build.gradle ).

Java

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

    // Declare 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'
}

Kullanarak Firebase Android Bom , uygulamanızın her zaman Firebase Android kütüphanelerin uyumlu versiyonlarını kullanacak.

(Alternatif) Bom kullanmadan Firebase kütüphane bağımlılıklarını beyan

Firebase Malzeme Listesini kullanmamayı seçerseniz, her bir Firebase kitaplık sürümünü bağımlılık satırında belirtmeniz gerekir.

Eğer uygulamanızda birden Firebase kitaplıkları kullanırsanız, biz çok tüm versiyonlar uyumlu olmasını sağlar kütüphane sürümlerini yönetmek için Bom kullanmanızı öneririz olduğunu unutmayın.

dependencies {
    // Declare 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:20.0.1'
}

Kotlin+KTX

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

    // Declare 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-ktx'
}

Kullanarak Firebase Android Bom , uygulamanızın her zaman Firebase Android kütüphanelerin uyumlu versiyonlarını kullanacak.

(Alternatif) Bom kullanmadan Firebase kütüphane bağımlılıklarını beyan

Firebase Malzeme Listesini kullanmamayı seçerseniz, her bir Firebase kitaplık sürümünü bağımlılık satırında belirtmeniz gerekir.

Eğer uygulamanızda birden Firebase kitaplıkları kullanırsanız, biz çok tüm versiyonlar uyumlu olmasını sağlar kütüphane sürümlerini yönetmek için Bom kullanmanızı öneririz olduğunu unutmayın.

dependencies {
    // Declare 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-ktx:20.0.1'
}

Gerçek Zamanlı Veritabanı Kurallarını Yapılandırın

Realtime Database, verilerinizin nasıl yapılandırılması gerektiğini, nasıl indekslenmesi gerektiğini ve verilerinizin ne zaman okunup yazılabileceğini tanımlamanıza izin veren bildirimsel bir kurallar dili sağlar.

Veritabanınıza yazın

Kullanarak veritabanı örneği Al getInstance() ve yazmak için istediğiniz konumu referans.

Java

// Write a message to the database
FirebaseDatabase database = FirebaseDatabase.getInstance();
DatabaseReference myRef = database.getReference("message");

myRef.setValue("Hello, World!");

Kotlin+KTX

// Write a message to the database
val database = Firebase.database
val myRef = database.getReference("message")

myRef.setValue("Hello, World!")

Java nesneleri de dahil olmak üzere bir dizi veri türünü bu şekilde veritabanına kaydedebilirsiniz. Bir nesneyi kaydettiğinizde, herhangi bir alıcıdan gelen yanıtlar bu konumun çocukları olarak kaydedilecektir.

Veritabanınızdan okuyun

Gerçek zamanlı olarak uygulama verileri güncelleme yapmak için, bir eklemek gerekir ValueEventListener yeni oluşturduğunuz referansa.

onDataChange() Bu sınıfta yöntemi tetiklenir kez dinleyici her seferinde tekrar çocuk olmak üzere veri değişikliklerini, ekli ve ne zaman.

Java

// Read from the database
myRef.addValueEventListener(new ValueEventListener() {
    @Override
    public void onDataChange(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(DatabaseError error) {
        // Failed to read value
        Log.w(TAG, "Failed to read value.", error.toException());
    }
});

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())
    }
})

İsteğe bağlı: ProGuard'ı yapılandırın

Uygulamanızda ProGuard ile birlikte Firebase Gerçek Zamanlı Veritabanını kullanırken, şaşırtma sonrasında model nesnelerinizin nasıl serileştirileceğini ve seri durumdan çıkarılacağını düşünmeniz gerekir. Eğer kullanırsanız DataSnapshot.getValue(Class) veya DatabaseReference.setValue(Object) okuma ve yazma veri için, size kural eklemek gerekir proguard-rules.pro dosyası:

    # 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 ilgili sorular veya sorunlar için yardım almak ziyaret etmek Guardsquare Topluluk forumları bir uzmandan yardım almak için.

Lansmana Hazırlanın

Uygulamanızı başlatmadan önce, bizim aracılığıyla yürüyüş tavsiye fırlatma kontrol listesi sizin uygulaması kullanıma hazır olduğundan emin olmak için!

Etkinleştirdiğinizden emin olun Uygulama Kontrolü sadece uygulamalarınızın veritabanlarına erişebilir sağlamak yardımına.

Sonraki adımlar