Diese Seite wurde von der Cloud Translation API übersetzt.
Switch to English

Installation & amp; Setup auf Android

Verbinden Sie Ihre App mit Firebase

Wenn Sie dies noch nicht getan haben, fügen Sie Firebase zu Ihrem Android-Projekt hinzu .

build.gradle in Ihrer build.gradle Datei auf Projektebene sicher, dass das Maven-Repository von Google sowohl in Ihrem buildscript als auch in Ihrem allprojects Abschnitt enthalten ist.

Erstellen Sie eine Datenbank

  1. Wenn Sie dies noch nicht getan haben, erstellen Sie ein Firebase-Projekt: Klicken Sie in der Firebase-Konsole auf Projekt hinzufügen und befolgen Sie die Anweisungen auf dem Bildschirm, um ein Firebase-Projekt zu erstellen oder einem vorhandenen GCP-Projekt Firebase-Dienste hinzuzufügen.

  2. Navigieren Sie zum Abschnitt " Datenbank " der Firebase-Konsole . Sie werden aufgefordert, ein vorhandenes Firebase-Projekt auszuwählen. Folgen Sie dem Workflow zur Datenbankerstellung.

  3. Wählen Sie einen Startmodus für Ihre Firebase-Sicherheitsregeln:

    Testmodus

    Gut für den Einstieg in die mobilen und Web-Client-Bibliotheken, ermöglicht es jedoch jedem, Ihre Daten zu lesen und zu überschreiben. Lesen Sie nach dem Testen den Abschnitt Grundlegendes zu Firebase-Echtzeitdatenbankregeln .

    Wählen Sie den Testmodus aus, um mit dem Web, iOS oder Android SDK zu beginnen.

    Gesperrter Modus

    Verweigert alle Lese- und Schreibvorgänge von Mobil- und Webclients. Ihre authentifizierten Anwendungsserver können weiterhin auf Ihre Datenbank zugreifen.

  4. Klicken Sie auf Fertig .

Wenn Sie die Echtzeitdatenbank aktivieren, wird auch die API im Cloud API Manager aktiviert.

Fügen Sie Ihrer App das Realtime Database SDK hinzu

Fügen Sie die Abhängigkeit für die Android-Bibliothek der Echtzeitdatenbank zu Ihrer Gradle-Datei (normalerweise app/build.gradle ) Ihres Moduls (App-Ebene) app/build.gradle :

Java

 implementation 'com.google.firebase:firebase-database:19.3.1'
 

Kotlin + KTX

 implementation 'com.google.firebase:firebase-database-ktx:19.3.1'
 

Konfigurieren Sie Echtzeit-Datenbankregeln

Die Echtzeitdatenbank bietet eine deklarative Regelsprache, mit der Sie festlegen können, wie Ihre Daten strukturiert werden sollen, wie sie indiziert werden sollen und wann Ihre Daten gelesen und beschrieben werden können.

Standardmäßig ist der Lese- und Schreibzugriff auf Ihre Datenbank eingeschränkt, sodass nur authentifizierte Benutzer Daten lesen oder schreiben können. Um zu beginnen, ohne die Authentifizierung einzurichten, können Sie Ihre Regeln für den öffentlichen Zugriff konfigurieren . Dadurch wird Ihre Datenbank für jedermann geöffnet, auch für Personen, die Ihre App nicht verwenden. Stellen Sie daher sicher, dass Sie Ihre Datenbank beim Einrichten der Authentifizierung erneut einschränken.

Schreiben Sie in Ihre Datenbank

getInstance() Sie mit getInstance() eine Instanz Ihrer Datenbank ab und verweisen Sie auf den Speicherort, an den Sie schreiben möchten.

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!")

Auf diese Weise können Sie eine Reihe von Datentypen in der Datenbank speichern, einschließlich Java-Objekten. Wenn Sie ein Objekt speichern, werden die Antworten aller Getter als untergeordnete Elemente dieses Speicherorts gespeichert.

Lesen Sie aus Ihrer Datenbank

Damit Ihre App-Daten in Echtzeit aktualisiert werden, sollten Sie der soeben erstellten Referenz einen ValueEventListener hinzufügen.

Die onDataChange() -Methode in dieser Klasse wird einmal ausgelöst, wenn der Listener angehängt wird, und jedes Mal, wenn sich die Daten ändern, einschließlich der onDataChange() Daten.

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

Optional: Konfigurieren Sie ProGuard

Wenn Sie Firebase Realtime Database in Ihrer App zusammen mit ProGuard verwenden, müssen Sie berücksichtigen, wie Ihre Modellobjekte nach der Verschleierung serialisiert und deserialisiert werden. Wenn Sie zum Lesen und Schreiben von Daten < DataSnapshot.getValue(Class) oder DatabaseReference.setValue(Object) verwenden, müssen Sie der Datei proguard-rules.pro Regeln proguard-rules.pro :

     # Add this global rule
    -keepattributes Signature

    # This rule will properly ProGuard all the model classes in
    # the package com.yourcompany.models. Modify to fit the structure
    # of your app.
    -keepclassmembers class com.yourcompany.models.** {
      *;
    }
 

Bereiten Sie sich auf den Start vor

Bevor Sie Ihre App starten, empfehlen wir Ihnen, unsere Start-Checkliste durchzugehen , um sicherzustellen, dass Ihre App betriebsbereit ist!

Nächste Schritte