topic subscribetotopic getidtoken expiration example create firebase react-native firebase-cloud-messaging firebase-admin

firebase - getidtoken - subscribetotopic



¿Cómo obtener todos los tokens de dispositivo de Firebase? (2)

¿Cómo obtener tokens de dispositivo (tokens de registro de FCM) de Firebase?

Estoy haciendo una aplicación móvil usando firebase y su servidor usando node.js.

Deseo enviar push notification mensaje de push notification desde el servidor, pero no sé cómo obtener el token de dispositivos.

  1. ¿Cómo obtener tokens de dispositivo desde un servidor externo? Estoy usando el SDK de administración de Firebase ahora.

  2. ¿El token del dispositivo solo se genera cuando la aplicación está conectada al servidor fcm?

  3. ¿Debo guardar el token en otra base de datos cuando el usuario ejecuta por primera vez la aplicación y registra el servidor FCM?


El token del dispositivo se genera cuando la aplicación se conecta por primera vez, este token debe almacenarse en su base de datos y reemplazarse si se asigna un token nuevo

public class MyAndroidFirebaseInstanceIdService extends FirebaseInstanceIdService { private static final String TAG = "MyAndroidFCMIIDService"; @Override public void onTokenRefresh() { //Get hold of the registration token String refreshedToken = FirebaseInstanceId.getInstance().getToken(); //Log the token Log.d(TAG, "Refreshed token: " + refreshedToken); } private void sendRegistrationToServer(String token) { //Implement this method if you want to store the token on your server } }

Vea el siguiente Tutorial


1. ¿Cómo obtener tokens de dispositivo desde un servidor externo? Estoy usando el SDK de administración de Firebase ahora.

Actualmente no hay API para recuperar todos los tokens de registro de su aplicación desde el lado del servidor. Es responsabilidad del desarrollador enviar y almacenar el token de registro en su servidor de aplicaciones, que se genera desde la aplicación del cliente.

2. ¿El token del dispositivo solo se genera cuando la aplicación está conectada al servidor FCM?

La documentación prácticamente cubrió esto (ver también mi respuesta aquí ):

En el inicio inicial de su aplicación, FCM SDK genera un token de registro para la instancia de la aplicación cliente.

No se conecta técnicamente a los servidores FCM. Se conecta al servicio FirebaseInstanceID (a través del SDK), que a su vez genera el token de registro.

3. ¿Debo guardar el token en otra base de datos cuando el usuario ejecuta por primera vez la aplicación y registra el servidor FCM?

Como mencioné en el n. ° 1, debe guardarlo donde pueda acceder fácilmente para enviar un mensaje.