2016-06-04 18 views
4

Ich habe gefunden, nur Code-Schnipsel der aktuell angemeldeten Benutzers zu laden:Firebase/Android - Load User von UID

FirebaseUser user = FirebaseAuth.getInstance().getCurrentUser();

Aber was, wenn ich eines anderen Benutzers Daten geladen werden müssen, wie die Bildpfad und Name? Ich möchte sie mit ihrer UID laden.

ich natürlich könnten die Daten selbst wie folgt speichern:

-> users 
    -> UID 
     -> imagePath 
     -> name 

Aber ich dachte, es könnte ein Weg sein, um die FirebaserUser Klasse zu verwenden.

ich es tatsächlich denken hat eine Möglichkeit zu sein, it's just not written in the docs.

Antwort

2

Es gibt keine Möglichkeit, dies mit FirebaseUser Klasse direkt zu tun. Die alten Dokumente von Firebase 1.0 (bevor es von Google übernommen wurde) erwähnten genau dieses Szenario und die mögliche Lösung. Das aktuelle Dokument ist noch nicht vollständig.

Die Lösung war, die Daten des Benutzers in der Real-time database zu speichern, die uid als den Schlüssel zu behalten. Wenn Sie also die Daten eines anderen Benutzers benötigen, müssen Sie sich nur an ihre UID erinnern und können nach ihren Daten suchen (genau wie Sie in der Fragebeschreibung erwähnt haben).

Ich suchte den anderen Weg, um dies zu tun, ohne Echtzeit-Datenbank zu verwenden, als ich anfing, an meiner eigenen App zu arbeiten, aber nachdem ich keine andere Methode gefunden und das alte Dokument gelesen hatte, gab ich auf und nutzte die Datenbank. Vertrauen Sie mir, dass es einfacher und flexibler ist, die Datenbank zu verwenden, anstatt sich den Weg zu hacken, um es nicht zu benutzen.

Verwandte Themen