Estava tudo funcionando até aqui no tutorial. Tive que pausar a parte de Firebase para mexer com uns refreshs de tabelas e voltei agora ao FCM. O token e a mensagem (enviada pelo console do firebase) vêm no console, mas a notificação/push não aparece, nem background, nem foreground. Ja gerei um novo certificado APN e atualizei em todos lugares. Na aba Capabilities, Push Notification e Remote Notification estão ligadas. O celular não está no silencioso e tem permissao para notificacoes no meu app.
Como faço para aparecer a notificação? Alguma ajuda, por favor?
Meu App Delegate:
import UIKit
import CoreData
import UserNotifications
import Firebase
import FirebaseMessaging
@UIApplicationMain
class AppDelegate: UIResponder, UIApplicationDelegate, UNUserNotificationCenterDelegate, MessagingDelegate {
var window: UIWindow?
let defaults = Defaults()
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
let appDelegate = UIApplication.shared.delegate as! AppDelegate
appDelegate.window?.rootViewController = rootVC
let autorizacao: UNAuthorizationOptions = [.badge, .alert, .sound]
UNUserNotificationCenter.current().requestAuthorization(options: autorizacao) { ( _, _ )in
Messaging.messaging().delegate = self
Messaging.messaging().shouldEstablishDirectChannel = true
}
application.registerForRemoteNotifications()
FirebaseApp.configure()
return true
}
func messaging(_ messaging: Messaging, didReceiveRegistrationToken fcmToken: String) {
print("token: \(fcmToken)")
if defaults.getTokenFCM() == "" {
defaults.setTokenFCM(fcmToken)
}
}
func messaging(_ messaging: Messaging, didReceive remoteMessage: MessagingRemoteMessage) {
print(remoteMessage.appData)
}