0

J'ai implémenté Firebase Cloud Messaging conformément aux instructions fournies sur leur site Web. Alors, quand je produis notification ici: enter image description heredidReceiveRemoteNotification ne reçoit pas de notifications via FCM

Et dans AppDelegate.swift J'ai ajouté la fonction didReceiveRemoteNotification comme:

func application(_ application: UIApplication, didReceiveRemoteNotification userInfo: [AnyHashable: Any], 

    fetchCompletionHandler completionHandler: @escaping (UIBackgroundFetchResult) -> Void) { 

     Messaging.messaging().appDidReceiveMessage(userInfo) 
     print(userInfo) 

     completionHandler(UIBackgroundFetchResult.newData) 
    } 

D'autres méthodes que j'ai mis en place sont
func messaging(_ messaging: Messaging, didRefreshRegistrationToken fcmToken: String)
func messaging(_ messaging: Messaging, didReceive remoteMessage: MessagingRemoteMessage) func application(_ application: UIApplication, didRegisterForRemoteNotificationsWithDeviceToken deviceToken: Data)

Attendu que mon didFinishLaunchingWithOptions a:

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 }) 
      // For iOS 10 data message (sent via FCM 
      Messaging.messaging().delegate = self 
     } else { 
      let settings: UIUserNotificationSettings = 
       UIUserNotificationSettings(types: [.alert, .badge, .sound], categories: nil) 
      application.registerUserNotificationSettings(settings) 
     } 

     application.registerForRemoteNotifications() 

     FirebaseApp.configure() 

     NotificationCenter.default.addObserver(self, selector: #selector(self.tokenRefreshNotification), name: NSNotification.Name.InstanceIDTokenRefresh, object: nil) 

     return true 

Répondre

1

S'il vous plaît un coup d'oeil ce fichier essentiel AppDelegate file for FCM

Dans XCode Goto Cibles> Capacités & assurez-vous que vos notifications Push est activée. enter image description here J'espère que ça aide.