Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

192
Vistas
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 Respuestas
Responde la pregunta

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 Denunciar

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 Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda