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ü.

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.


Wie speichere ich Daten in Firebase in Swift Language (iOS)?

Ziele des Blogs

Nachdem Sie diesen Blog gelesen haben, können wir das Firebase SDK in Ihrem Projekt installieren und Code schreiben, um Daten zusammen mit der Erstellung des Firebase-Projekts in der Firebase-Datenbank zu speichern.

Vorteile der Verwendung der Firebase-Datenbank

Es spielt keine Rolle, ob Sie an einem kleinen Projekt arbeiten oder Ihre Augen auf ein großes gerichtet sind, Sie benötigen eine Datenbank, um all Ihre Informationen zu speichern. Wenn Sie an einem kleinen Projekt arbeiten, können Sie diese Firebase-Datenbank verwenden. Hier ist die Liste der Vorteile der Verwendung der Firebase-Datenbank: 1. Hilft Ihnen, die Daten Ihres Geschäfts mühelos zu verwalten. 2. Wenn sich Daten jederzeit ändern, erhalten alle angeschlossenen Geräte die aktualisierten Daten in ihren Geräten. 3. Die Firebase-Echtzeitdatenbank kann kostenlos verwendet werden. 4. Zeitsparend. 5. Einfach zu bedienende und plattformübergreifende Unterstützung für SDK. 6. Nützlich für Chat-Apps, Push-Benachrichtigungen, Newsfeed usw.

Die Anforderungen:

Wir müssen Swift-Code schreiben, um die Daten in Firebase zu speichern. Dazu müssen wir zuerst das Firebase-Projekt erstellen. Befolgen Sie die unten angegebenen Schritte, um das Firebase-Projekt zu erstellen – 1. Gehen Sie zu https://console.firebase.google.com

2. Klicken Sie auf “Projekt hinzufügen” Taste

 

3. Erstellen Sie dann eine iOS-App und laden Sie die Datei GoogleService-Info.plist herunter. 4. Verschieben Sie dann die Plist-Datei in das Projekt. 5. Öffnen Sie anschließend in Xcode AppDelegate.swift und fügen Sie diesen Code vor der return-Anweisung in application(_:didFinishLaunchingWithOptions:)

FirebaseApp.configure()

6.Klicken Sie dann auf “Datenbank” Option aus dem linken Menü.

 

7. Wählen “Echtzeit-Datenbank“, dort finden Sie die Datenbank-URL, die Sie im Code verwenden können, um die Daten aus der Datenbank zu holen. Im Allgemeinen werden Sie diese URL nicht benötigen, da wir sie verwenden GoogleServices-Info.plist Datei und die Datenbank-URL bereits in dieser Datei verfügbar ist, müssen wir nur die Firebase initialisieren. 8. Die Einrichtung von Firebase ist abgeschlossen. Jetzt müssen Sie das Firebase SDK schnell herunterladen. Dazu müssen Sie die folgenden Pods installieren. 1. Schote ‘Firebase/Kern‘ 2. Schote ‘Firebase/Datenbank‘ Angenommen, wir haben derzeit keine Daten in der Firebase-Datenbank und möchten die folgenden Daten im angegebenen Format in der Datenbank speichern� –

// Die Wurzel des Baums { "movies": [ "movie1": { "name": "Avengers", "addedByUser": "John" }, "movie2": { "name": "Star Wars", " addedByUser": "Jane" }, ] }

Nach erfolgreicher Installation der Pods im Projekt sind wir bereit, den Codierungsteil zu implementieren.


Codeimplementierung Bevor Sie die Referenzen erstellen, müssen Sie verstehen, was eine Firebase-Referenz ist. Eine Firebase-Referenz verweist auf einen Speicherort in Firebase, an dem Daten gespeichert werden. Selbst wenn Sie mehrere Referenzen erstellen, nutzen sie alle dieselbe Verbindung. Zuerst müssen wir eine Referenz der FIRDatabaseReference erstellen. Eine Referenz, die den Stammknoten (Lebensmittelartikel) enthält, kann mit dem folgenden Code erstellt werden:

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

oder Sie können auch den folgenden Weg verwenden –

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

Dann müssen wir einen Verweis auf die untergeordneten Elemente Milch und Pizza erstellen, damit wir die Daten in diesen Knoten hinzufügen können.

let movieRefAvengers = ref.child("movie1") let movieRefStarWars = ref.child("movie2")

Wir wissen, dass wir das Wörterbuch in diesen Schlüsseln speichern müssen. Dafür erstellen wir zwei Wörterbücher, eines für Milch und eines für Pizza.

let dictMovieRefAvengers: [String: String] = ["name": "Avengers", "addedByUser": "John"] let dictMovieRefStarWars: [String: String] = ["name": "Star Wars", "addedByUser": " Jan"]

Danach können wir die hinzufügen dictMovieRefAvengers und dictMovieRefStarWars in die movieRefAvengers und movieRefStarWars und diese werden als untergeordnete Elemente dieser Referenzen hinzugefügt. Es gibt zwei Methoden zum Speichern von Daten in der Firebase-Datenbank: setValue und updateChildValues. Wenn Sie wissen möchten, wann Ihre Daten übertragen wurden, können Sie einen Vervollständigungsblock hinzufügen. Sowohl setValue als auch updateChildValues ​​verwenden einen optionalen Abschlussblock, der aufgerufen wird, wenn der Schreibvorgang an die Datenbank übertragen wurde. Dieser Listener kann nützlich sein, um zu verfolgen, welche Daten gespeichert wurden und welche Daten noch synchronisiert werden.

 

// Speichern der Werte im movie1-Knoten movieRefAvengers.setValue(dictMovieRefAvengers) { (error:Error?, ref:DatabaseReference) in if let error = error { print("Daten konnten nicht gespeichert werden: \(error).") } else { print("Daten erfolgreich gespeichert!") } } // Speichern der Werte im Pizzaknoten movieRefStarWars.setValue(dictMovieRefStarWars) { (error:Error?, ref:DatabaseReference) in if let error = error { print("Daten konnten nicht werden gespeichert: \(Fehler).") } else { print("Daten erfolgreich gespeichert!") } }

 

Nachdem Sie den oben gezeigten Code ausgeführt haben, erhalten Sie dieselbe Struktur in der Firebase-Datenbank, die bereits gezeigt wird.

Zusammenfassung

Nachdem Sie das obige Verfahren befolgt haben, können Sie die Daten schnell in der Firebase-Datenbank speichern.

Lesen Sie auch diese Artikel:

Wie liest man Daten aus einer lokalen JSON-Datei in Swift?

Einführung

Wir gehen davon aus, dass wir eine JSON-Datei in unser Projekt einfügen und in schneller Sprache auf ihre Daten zugreifen möchten.

Kode

Sie können eine JSON-Datei in Xcode erstellen, indem Sie zu gehen Datei > Neue Datei > Leer und geben Sie der Datei einen beliebigen Namen (z. B. example.json). Die Datei wird hinzugefügt und dann können wir einen JSON-String in der Datei hinzufügen. dh –

{“Tier”:”Löwe”, “Vogel”:”Spatz”}

Sie können den oben genannten String direkt in die von uns erstellte JSON-Datei einfügen. Mit der folgenden Funktion können die JSON-Daten aus der JSON-Datei gelesen werden, damit sie in Swift abgerufen werden können –

  static func readJSONFromFile(fileName: String) -> Any? { var json: Irgendwelche? if let path = Bundle.main.path(forResource: fileName, ofType: "json") { do { let fileUrl = URL(fileURLWithPath: path) // Abrufen von Daten aus der JSON-Datei unter Verwendung der Datei-URL let data = try Data(contentsOf : fileUrl, Optionen: .mappedIfSafe) json = try? JSONSerialization.jsonObject(with: data) } catch { // Fehler hier behandeln } } json zurückgeben } Empfohlener Lesevorgang: Durchlaufen Sie jedes Element der JSON-Zeichenfolge in Android und iOS

Empfohlen zu lesen: ,warWie migriere ich den Magento Store von Localhost auf den Server?

Durchlaufen Sie jedes Element der JSON-Zeichenfolge in Android und iOS

Einführung

Wir gehen davon aus, dass wir JSON-Zeichenfolge als Eingabezeichenfolge verwenden, und wir werden den Vorgang zum Zugriff auf jedes Element der JSON-Zeichenfolge in Android und iOS untersuchen.

androide

String jsonString = "{\" animal \ ": \" Lion \ ", \" bird \ ": \" Sparrow \ "}"; "; JSONObject jsonObject = neues JSONObject (jsonString); Iterator <? > keys = jsonObject.keys (); while (keys.hasNext ()) {String key = (String) keys.next (); String value = jsonObject.getString (Schlüssel); // Hier erhalten wir den Wert aus dem JSON-String justify; }

iOS

Wir konvertieren den JSON-String in ein JSON-Objekt mithilfe der unten angegebenen Erweiterung

Erweiterungsstring {func toJSONObject () -> Any? {guard let data = self.data (using: .utf8, allowLossyConversion: false) else {return nil} return try? JSONSerialization.jsonObject (mit: Daten, Optionen: .mutableContainers)}}

Wir verwenden die oben genannte Erweiterung als

let jsonString = "{\" animal \ ": \" Löwe \ ", \" Vogel \ ": \" Sparrow \ "}"; "; wenn jsonObject = jsonString.toJSONObject () als? [String: String] {for (Schlüssel, Wert) in jsonObject {print ("\ (Schlüssel): \ (Wert)") // Hier erhalten wir alle Schlüssel und Werte aus dem JSON-String}}