Как создать тему в уведомлениях FCM
Я пытаюсь Firebase-Notification API служба работает идеально, когда я отправляю нисходящее сообщение из консоли в приложение, но как отправить сообщение в тему зарегистрированные пользователи ?
Я сделал в android стороне
FirebaseMessaging.getInstance().subscribeToTopic("TopicName");
но когда я пытаюсь отправить нисходящее сообщение из консоли в тему, это говорит
This project does not have any topics
изменить :
я понял, что после сопоставления темы требуется до 1 дня, чтобы появиться в консоли Firebase
4 ответов:
Это альтернативный путь.
Если вы подписываете клиентское приложение на несуществующую тему, то тема также будет создана без необходимости вызывать какой-либо запрос url firebase.
это также займет несколько часов, чтобы появиться на консоли Firebase.
используя общий пример google:https://github.com/firebase/quickstart-android/tree/master/messaging вы можете подтвердить то же самое.
FirebaseMessaging.getInstance().subscribeToTopic("news"); Log.d(TAG, "Subscribed to news topic");
во-первых, учитывая, что
IID_TOKEN- Это ваш регистрационный знак аTOPIC_NAME- это тема, которую вы хотите создать, вам нужно создать тему, внеся POST запросhttps://iid.googleapis.com/iid/v1/IID_TOKEN/rel/topics/TOPIC_NAMEи чтобы проверить ваши созданные темы сделать GET запрос по этому URL
https://iid.googleapis.com/iid/info/nKctODamlM4:CKrh_PC8kIb7O...clJONHoA?details=trueи вставьте свой API_KEY в заголовки запроса
Authorization: key=YOUR_API_KEYваша тема займет до 1 день чтобы показать в консоли Firebase, так что для тестирования вы можете сделать завиток запрос или использовать программное обеспечение, как расширенный клиент REST
военнослужащих занимает время, чтобы создать новую тему в консоли. В моем случае новая тема была создана через 4 часа.
вы можете создать тему с http api:
https://iid.googleapis.com/iid/v1/IID_TOKEN/rel/topics/TOPIC_NAME1. IID_TOKEN = маркер регистрации устройства, вы можете найти его с помощью следующей команды на вашем устройстве android:
String IID_TOKEN = FirebaseInstanceId.getInstance().getToken();2.TOPIC_NAME = новое название темы
3.Авторизация: key=YOUR_API_KEY. Установите этот параметр в заголовке. Посмотрите на скриншот: создание новой темы с помощью Advanced rest клиент
YOUR_API_KEY: console.firebase.google.com
и отправьте запрос, и вы получите статус http "OK".
затем вы можете получить информацию обо всех ваших темах в текущем проекте с помощью следующего api:
https://iid.googleapis.com/iid/info/IID_TOKEN?details=trueздесь нужно добавить ключ авторизации в заголовок запроса, и вы получите свой список тем: информация об ответе темы
я рекомендую прочитать эту статью об экземпляре ID / Server от Google
Comments