subscribetotopic - notificaciones firebase android studio
Cómo crear un tema en las notificaciones de FCM (4)
Estoy probando Firebase-Notification API, el servicio funciona perfectamente cuando envío un mensaje descendente desde la consola a la aplicación, pero ¿cómo enviar un mensaje a los usuarios registrados del tema?
lo hice en el lado de Android
FirebaseMessaging.getInstance().subscribeToTopic("TopicName");
pero cuando trato de enviar un mensaje aguas abajo de la consola al tema, dice
This project does not have any topics
EDITAR: descubrí que después de mapear el tema, tomar hasta 1 día para aparecer en Firebase Console
Este es un camino alternativo.
Si suscribe una aplicación cliente a un tema inexistente, el tema también se creará sin tener que llamar a ninguna solicitud de URL de Firebase.
También tardará un par de horas en aparecer en Firebase Console.
Al usar el ejemplo compartido de Google: https://github.com/firebase/quickstart-android/tree/master/messaging , puede confirmar lo mismo.
FirebaseMessaging.getInstance().subscribeToTopic("news");
Log.d(TAG, "Subscribed to news topic");
Firebase toma tiempo para crear un nuevo tema en la consola. En mi caso, se creó un nuevo tema después de 4 horas.
Primero, dado que
IID_TOKEN
es su token de registro y
TOPIC_NAME
es el tema que desea crear, debe crear el tema haciendo una solicitud
POST
para
https://iid.googleapis.com/iid/v1/IID_TOKEN/rel/topics/TOPIC_NAME
Y para verificar sus Temas creados, haga una solicitud GET en esta URL
https://iid.googleapis.com/iid/info/nKctODamlM4:CKrh_PC8kIb7O...clJONHoA?details=true
e inserte su API_KEY en su solicitud HEADERS
Authorization: key=YOUR_API_KEY
Su tema tardará hasta 1 día en aparecer en la consola de Firebase, por lo que para realizar las pruebas, puede hacer una solicitud de rizo o usar un software como el cliente REST avanzado
Puede crear un tema con http api:
https://iid.googleapis.com/iid/v1/IID_TOKEN/rel/topics/TOPIC_NAME
1. IID_TOKEN = Token de registro del dispositivo, puede encontrarlo con el siguiente comando en su dispositivo Android:
String IID_TOKEN = FirebaseInstanceId.getInstance().getToken();
2.TOPIC_NAME = nuevo nombre de un tema
3. Autorización: clave = YOUR_API_KEY . Establezca este parámetro en el encabezado. Mire la captura de pantalla: Creación de un nuevo tema a través del cliente de descanso avanzado
YOUR_API_KEY: console.firebase.google.com
y envíe la solicitud y recibirá el estado http "OK".
Luego puede obtener información sobre todos sus temas en su proyecto actual con la siguiente API:
https://iid.googleapis.com/iid/info/IID_TOKEN?details=true
aquí necesita agregar la clave de autorización al encabezado de la solicitud y recibirá su lista de temas: temas de información de respuesta
Recomiendo leer este artículo sobre ID de instancia / servidor de Google