Wenn wir uns die run-Methode des runnable ansehen, können wir sehen, dass der zurückkehrende Typ void ist.
Das bedeutet, dass sie nichts zurückgeben wird.
Wenn wir die Methode zum Abrufen aller Kontakte verwenden.
Wir können dies nicht im Hintergrund ausführen, da der Lauf zunächst nichts zurückgibt und ich eine Liste von
Kontakten zurückgeben muss.
Und der zweite Grund ist, dass ich die Kontakte veröffentlichen muss, um alle Kontakte zu erhalten und sie in der Benutzeroberfläche zu veröffentlichen.
So wird dies im Hintergrund ausgeführt und der Kontakt hinzugefügt.
Die Einfügemethode wird in einem separaten Thread und im Hintergrund ausgeführt.
Aber dies muss ich ausgeführt werden und veröffentlicht die UI mit den neuen Kontakten aus der Datenbank erhalten.
Deshalb werde ich die Live-Daten verwenden.
Live-Daten werden häufig sowohl im Repository als auch in der Dao verwendet, um die Beobachtung von Datenbankänderungen zu erleichtern
und die Benutzeroberfläche in Echtzeit zu aktualisieren.
Der erste Schritt besteht darin, zum Dao zu gehen, und ich muss diese Liste aktualisieren.
Ich werde diese Liste innerhalb des Live-Datenobjekts vom Typ Liste von Kontaktobjekten kapseln.
Importieren Sie die Klasse der Live-Daten.
Wenn Sie Methoden haben, die mit Query annotiert sind und Sie etwas mit dem Select-Operator
in SQL anzeigen wollen.
Verwenden Sie immer die Live-Daten, indem Sie Daten als Live-Daten zurückgeben.
Die Raumbibliothek stellt sicher, dass die Daten vom Repository oder ViewModel beobachtet werden, so dass sie in Echtzeit aktualisiert
werden können, wenn sich die zugrunde liegenden Daten ändern.
Und wenn Sie Probleme beim Live-Datenimport aus dem Lebenszyklus haben, können Sie die Abhängigkeit dafür importieren.
Durch die Verwendung dieser Live-Daten implementieren Station und die Live-oder die Ansicht Modell hier.
Ich werde also diese Implementierung für das ViewModel und die Live-Daten kopieren.
Im nächsten Video werden wir über ViewModel sprechen, damit ich es hier importieren kann.
Neueste Versionen von Android X, Der Lebenszyklus ist enthalten.
Wie Sie also sehen können, habe ich Android X dot lifecycle dot live data ohne Probleme und ohne Verwendung dieser Abhängigkeit
importiert.
Auch die Live-Daten und ich müssen die Lebenszyklus-Version Variable synchronisieren jetzt verwenden, so dass ich ViewModel und die Live-Daten in meiner
Anwendung verwenden können.
Wenn ich ein Problem habe, füge ich einfach die Abhängigkeit hinzu.
Wenn wir jetzt zum Repository gehen, muss ich den Rückgabetyp dieser Methode in Live-Datenobjekt ändern.
Dies ist der Typ der Live-Daten und dies ist der Typ der Liste im Repository.
Live-Daten werden in der Regel verwendet, um Daten aus der Raumdatenbank an das ViewModel und schließlich an die UI-Komponenten,
Aktivitäten oder Fragmente weiterzuleiten.
Das Repository interagiert mit der Raumdatenbank, um Daten abzurufen, und es verpackt die Daten in ein Live-Datenobjekt,
bevor es sie an das ViewModel weitergibt.
Durch die Verwendung von Live-Daten stellt das Repository sicher, dass die Daten vom ViewModel beobachtet werden können und alle Änderungen
an den zugrunde liegenden Daten automatisch in der Benutzeroberfläche widergespiegelt werden, ohne dass explizite Aktualisierungen erforderlich
sind.
Ein letzter Schritt im Repository besteht darin, diesen Parameter zu ändern.
Eine Anwendung übergeben alt+ enter.
Und hier muss ich die Kontextdatenbank initialisieren, so dass die Kontaktdatenbank dem Kurs oder der Kontaktdatenbank dot get instance
entspricht.
Und hier muss ich den Kontext übergeben, der in diesem Fall die Anwendung ist.
Und dieser Kontakt Dao dieser Punkt Kontakt Dao gleich Kontakt Datenbank Punkt erhalten Kontakt Dao.
So initialisieren wir die Datenbank im Repository und die Dao im Repository
und führen die Methoden und die Hintergrund-Threads aus.