Firebase Cloud Messaging на iOS не работает должным образом - PullRequest
0 голосов
/ 23 марта 2020

Я добавил в свой проект Firebase Cloud Messaging для получения и отправки pu sh уведомлений. Я следовал шагам в оригинальном уроке от Google. Результат был потрясающим: Я могу получить уведомление pu sh на моем устройстве - я опубликовал его на TestFlight - возникла проблема .

Я понимаю, что мне нужно создать другой сертификат. (???) Затем я удаляю свой ключ (.p8) из сообщений Firebase Cloud и воссоздаю его (также разработку) + Я воссоздаю тот же профиль обеспечения разработки (старые, которые я отменяю), Я повторил процесс из учебника, но теперь я я не могу получить уведомление pu sh даже на моем устройстве , ни на TestFlight.

Кто-нибудь может мне помочь с этими вопросами?

  1. Какой сертификат / профиль мне следует Создайте? На данный момент я создал ключ .p8 для разработки и обеспечения профиля для разработки (больше не работает)
  2. Должен ли я что-то изменить в своем коде? Я нашел где-то, что я должен изменить URL с песочницы на Prod, Firebase сделать это автоматически? Это проблема в токене устройства? Я не могу получить даже тестовое уведомление, когда копирую / вставляю токен FCM в консоль.
  3. Можно ли отправить тихое уведомление pu sh из консоли Firebase Messaging? (Могу ли я установить все необходимые заголовки в консоли Firebase?)
  4. Разница между .p8 и .p12? Возможно ли иметь ключ .p8 для производства?

Пожалуйста, помогите мне в этом. Спасибо!

[ОБНОВЛЕНИЕ] [решено] После выполнения шагов из этого ответа и изменения идентификатора команды в Firebase на тот же идентификатор команды из Apple Developer я смог получать уведомления на мое устройство и на все устройства TestFlight.

1 Ответ

1 голос
/ 23 марта 2020

Firebase не имеет ничего общего с разработкой и производством. Это будет на вашей стороне, если вы используете два разных приложения Firebase, одно для разработки и другое для производства. В этом случае вы просто измените GoogleService-Info.plist для соответствующих сред. Вот мои шаги, которые вы должны выполнить, чтобы правильно внедрить Firesbase Pu sh Уведомления.

1) Go в свою учетную запись разработчика Apple и создать новый ключ для APNS. ( Ссылка )

2) Создайте проект firebase и добавьте приложение iOS, затем на вкладке Cloud Messaging в настройках приложения добавьте ключ, который вы только что создали на 1-м шаге, с помощью KeyID и TeamID.

3) Добавьте GoogleService-Info.plist в root вашего проекта и добавьте уведомление Pu sh от возможностей в Xcode.

4) Затем инициализировать firebase в вашем приложении ( Reference )

5) Добавьте код, чтобы запрашивать разрешения на уведомления при запуске приложения.

6) И, наконец, получите fcmToken из этого метода

func messaging(_ messaging: Messaging, didReceiveRegistrationToken fcmToken: String)

и отправьте уведомление на этот токен из firesbase.

Примечание: Для обеспечения профилей включите автоматическую c подпись в XCode, и XCode выполнит сам процесс подписи. Теперь нам не нужно создавать профили инициализации вручную.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...