Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

199
Views
Obtenga puntos del usuario que actualmente está conectado desde la base de datos en tiempo real

Quiero obtener los puntos y mostrárselos al propietario de esa cuenta cuando haya iniciado sesión. Intenté leer la documentación de Firebase pero no pude. Aquí está el código que uso para asignar la clave aleatoria y guardar los datos secundarios.

 const autoid = firebase.database().ref("user").push().key; firebase.database().ref("user").child(autoid).set({ Email :email, Password : password, Points :"500" });

imagen de la base de datos

Quiero que cada vez que el usuario inicie sesión, obtenga sus puntos de la base de datos y los muestre en su perfil.

about 4 years ago · Juan Pablo Isaza
2 answers
Answer question

0

En su código, está generando una clave aleatoria y luego asignándola a una variable. Una mejor manera de hacerlo es obtener el userId de usuario y asignarlo como un ID de documentid y luego, al recuperar los datos, use el userId de usuario para obtener los datos del usuario.

Por ejemplo, para agregar los datos:

 const database = firebase.database(); const user = firebase.auth().currentUser; if (user !== null) { // Add user data in collection "users" database.ref("users").child(user.uid).set({ email :email, password : password, points :"500" }) .then(() => { console.log("data successfully written!"); }) .catch((error) => { console.error("Error writing data: ", error); }); }

Luego, después de que el usuario inicie sesión, puede hacer lo siguiente para recuperar points :

 const database = firebase.database(); const user = firebase.auth().currentUser; if (user !== null) { let ref = database.ref("users").child(user.uid); ref.get().then((snapshot) => { if (snapshot.exists()) { console.log("data:", snapshot.val()); console.log(snapshot.val().points); } }).catch((error) => { console.log("Error getting data:", error); }); }
about 4 years ago · Juan Pablo Isaza Report

0

Puedo mostrarle cómo hacerlo en Java, simplemente ajústelo a su código Kotlyn: defina la referencia que desea escuchar (arriba de onCreate):

 FirebaseDatabase FBDB = FirebaseDatabase.getInstance(); DatabaseReference refUsers=FBDB.getReference("Users"); FirebaseUser user; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_login); user=FirebaseAuth.getInstance().getCurrentUser() refUsers.child(user.getUid()).addListenerForSingleValueEvent(new ValueEventListener() { @Override public void onDataChange(@NonNull DataSnapshot dataSnapshot) { customer = dataSnapshot.getValue(Customer.class); int points = customer.getPoints(); ShowPoints(); }); } }
about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!