Wie kann ich in Swift Language (iOS) Daten von Firebase abrufen?

Ziele des Blogs

Nach dem Lesen dieses Blogs werden wir in der Lage sein, den Vorgang zum Abrufen von Daten aus Firebase zu verstehen. Dieser Prozess umfasst die Installation des Firebase SDK und die Implementierung von Code zum Abrufen von Daten aus Firebase.

Die Anforderungen:

Wir müssen schnellen Code schreiben, um die Daten von Firebase abzurufen. Dazu müssen wir zuerst das Firebase-Projekt erstellen. Führen Sie die folgenden Schritte aus, um das Firebase-Projekt zu erstellen:

1. Gehe zu https://console.firebase.google.com

2. Dann müssen Sie ein Firebase-Projekt erstellen, indem Sie auf "Projekt hinzufügen" Taste

add-project: Wie rufe ich Daten aus Firebase in Swift Language (iOS) ab?

3. Sie benötigen die Datei GoogleService-Info.plist für iOS SDK, da diese Datei die Details des Firebase-Projekts enthält, die von Firebase SDK verwendet werden

4. Fügen Sie dann die plist-Datei in das Projekt ein

5. Fügen Sie den folgenden Code vor der return-Anweisung in der Anwendung ein(_: didFinishLaunchingWithOptions 🙂 in der Datei AppDelegate.swift

FirebaseApp.configure ()

6. Dann geh zu "Datenbank"Option aus dem linken Menü.

goto-database: Wie rufe ich Daten aus Firebase in Swift Language (iOS) ab?

7. Wählen "Echtzeit-Datenbank"und das ist die Datenbank für das Firebase – Projekt. Alle Daten, die in diesem Verzeichnis gespeichert oder von dort abgerufen werden, stammen von diesem Verzeichnis.

8. Das Firebase-Setup ist abgeschlossen. Jetzt müssen Sie das Firebase-SDK im Handumdrehen herunterladen. Dazu müssen Sie die folgenden Pods installieren.

  1. Pod 'Firebase / Core'
  2. Pod 'Firebase / Database'

Angenommen, Sie haben die folgenden Daten in der angegebenen Struktur in der Firebase-Datenbank:

// Die Wurzel des Baumes {// Lebensmittel "Lebensmittel": {// Lebensmittel / Milch "Milch": {// Lebensmittel / Milch / Name "Name": "Milch", / / grocery-items / milk / addedByUser "addedByUser": "David"}, "pizza": {"name": "Pizza", "addedByUser": "Alice"},}}

Nach erfolgreicher Installation der Pods können wir mit dem Codierungsteil fortfahren.

Code-Implementierung

Alle Datenpunkte / Knoten werden verwendet, um auf Daten aus der Firebase-Datenbank zuzugreifen. Wir erstellen Verweise auf die Knoten und rufen dann Daten von diesem Knoten ab. Mit anderen Worten, eine Firebase-Referenz verweist auf einen Ort in Firebase, an dem Daten gespeichert sind. Zuerst müssen wir einen Verweis auf den Wurzelknoten der Datenbankstruktur erstellen –

let ref = Database.database (). reference (withPath: "Lebensmittel")

oder der folgende Weg kann verwendet werden –

let rootRef = Database.database (). reference () let ref = rootRef.child ("Lebensmittel")

Der Verweis auf den untergeordneten Knoten "milk" kann mit dem folgenden Code erstellt werden:

let milkRef = ref.child ("milk")

Der asynchrone Listener kann an eine Referenz angehängt werden, um Daten von Firebase mit abzurufen beobachte (_: mit 🙂 Methode. Mit dem folgenden Code werden die Daten abgerufen und die Datenänderungen in der Datenbank überwacht. Sobald Änderungen in der Datenbank vorgenommen werden, wird der neue Snapshot des Knotens / der Referenz abgerufen und die aktualisierten Daten werden abgerufen, sobald Änderungen in der Datenbank vorgenommen werden.

ref.observe (.value, with: {snapshot in // Dies ist die Momentaufnahme der Daten in der Firebase-Datenbank // Um ​​den Wert aus der Momentaufnahme zu erhalten, verwenden wir snapshot.value print (snapshot.value as Any) })

Anschließend können die Snapshot-Werte analysiert und in der App verwendet werden. Ein großer Vorteil der Verwendung beobachten Methode vorbei observSingleEvent Die Methode besteht darin, dass Sie die Funktion nicht immer wieder aufrufen müssen, wenn die aktualisierten Daten aus der Datenbank abgerufen werden, sobald ein Wert in der Datenbank geändert wird.

Zusammenfassung

Jetzt sollten Sie in der Lage sein, die Daten mit dem Firebase SDK in kürzester Zeit aus der Firebase-Datenbank abzurufen.


Leave a Reply

Your email address will not be published. Required fields are marked *