Я пытаюсь использовать функцию CLI для отправки уведомления pu sh на устройства android и iOS. Когда я использую версию iOS, при отправке из моей функции уведомление не приходит. Однако, когда я отправляю их из консоли Firebase, он получит уведомление, но только пока приложение открыто. Я думаю, что мне не хватает одного или нескольких важных шагов в настройке, или моя функция не имеет всех необходимых данных в полезной нагрузке.
Моя функция отправляет следующее:
return Promise.all([token]).then(result=>{
const payload = {
notification: {
title : likename + " liked your post!",
"priority" : "high"
}
};
console.log(token);
return admin.messaging().sendToDevice(token,payload);
});
У меня есть приложение iOS, настроенное с сертификатом, и мой делегат APP реализован следующим образом:
import UIKit
import Flutter
@UIApplicationMain
@objc class AppDelegate: FlutterAppDelegate {
override func application(
_ application: UIApplication,
didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?
) -> Bool {
if #available(iOS 10.0, *) {
// For iOS 10 display notification (sent via APNS)
UNUserNotificationCenter.current().delegate = self
let authOptions: UNAuthorizationOptions = [.alert, .badge, .sound]
UNUserNotificationCenter.current().requestAuthorization(
options: authOptions,
completionHandler: {_, _ in })
} else {
let settings: UIUserNotificationSettings =
UIUserNotificationSettings(types: [.alert, .badge, .sound], categories: nil)
application.registerUserNotificationSettings(settings)
}
application.registerForRemoteNotifications()
GeneratedPluginRegistrant.register(with: self)
return super.application(application, didFinishLaunchingWithOptions: launchOptions)
}
}
Любая помощь приветствуется, и, пожалуйста, дайте мне знать, если вам нужна дополнительная информация.