Firebase Messaging не отправляет тематическое сообщениеIOS

Программируем под IOS
Ответить Пред. темаСлед. тема
Anonymous
 Firebase Messaging не отправляет тематическое сообщение

Сообщение Anonymous »

Я пытаюсь отправить push-уведомления из кода vs (сервера администратора Firebase) на свое устройство iOS, используя темы Firebase. Я следовал каждому шагу руководства Google, и когда я запускаю код Python, на мое устройство iOS не отправляется сообщение, и ничего даже не появляется на панели управления сообщениями Firebase, и я получаю такой вывод:
Сообщение успешно отправлено: проекты//сообщения/

В моем приложении Swift на моем реальном устройстве iPhone (iOS 18) я добавил делегат приложения ниже, и я протестировал его и Токен FCM успешно создан. После того, как токен FCM сгенерирован в функции делегата, я вызываю Messaging.messaging().subscribe(toTopic: "info") { error in, который завершается успешно, и я не получаю никаких ошибок.
На моем сервере администратора Firebase Python я аутентифицируюсь с помощью служебного json-файла (я знаю, что это работает, потому что я могу писать/читать из базы данных), ниже я добавлю изображение для разрешений для этой учетной записи службы из IAM. Кроме того, если я возьму токен FCM, который генерирует мой iPhone, и попытаюсь отправить сообщение непосредственно на токен, я получу эту ошибку:

requests.Exceptions.HTTPError : 401 Ошибка клиента: Не авторизован для URL-адреса: https://fcm.googleapis.com/v1/projects/ ... sages:send firebase_admin._messaging_utils.ThirdPartyAuthError: ошибка аутентификации от APNS или службы Web Push

Буду признателен за любую помощь в работе этих push-уведомлений Firebase.

Код: Выделить всё

class AppDelegate: UIResponder, UIApplicationDelegate, MessagingDelegate, UNUserNotificationCenterDelegate {
func application(
_ application: UIApplication,
didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?
) -> Bool {
FirebaseApp.configure()

Messaging.messaging().delegate = self

UNUserNotificationCenter.current().delegate = self
let authOptions: UNAuthorizationOptions = [.alert, .badge, .sound]
UNUserNotificationCenter.current().requestAuthorization(options: authOptions) { _, _ in }
application.registerForRemoteNotifications()

return true
}

func application(
_ application: UIApplication,
didRegisterForRemoteNotificationsWithDeviceToken deviceToken: Data
) {
Messaging.messaging().apnsToken = deviceToken
}

func messaging(_ messaging: Messaging, didReceiveRegistrationToken fcmToken: String?) { }
}

Код: Выделить всё

import firebase_admin
from firebase_admin import messaging, credentials

cred = credentials.Certificate("credsAhmed.json")
firebase_admin.initialize_app(cred)

message = messaging.Message(
notification=messaging.Notification(
title = "New Release",
body = "Nike Book 1 The Nightmare Before Christmas",
),
topic = 'info',
)

response = messaging.send(message)
print('Successfully sent message:', response)
Изображение


Подробнее здесь: https://stackoverflow.com/questions/792 ... ic-message
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «IOS»