3

私は自分のアプリでFirebaseプッシュ通知を実装しています。 1つのチュートリアルで私はMessaging.messaging().fcmTokenのトークンを取得し、thisの質問に私はこのアプローチを見つける:FIRInstanceID.instanceID().token()FIRInstanceID.instanceID()。token()とMessaging.messaging()の違いは何ですか?fcmToken?

これらの違いは何ですか?私の唯一の目標は、私のバックエンドの人にトークンを送って、プッシュ通知用のDBで私を認識できるようにすることです。現在のところ、トークンを生成するコードは次のとおりです。

func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: 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 }) 
     // 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() 
    let token = Messaging.messaging().fcmToken 
    setFCM(token: token ?? "UNDEFINED") //a function that saves it in user defaults. 
    print("FCM token: \(token ?? "")") 
    return true 
} 

答えて

2

いずれかを呼び出すと、同じ登録トークンが返されます。一般的には(アップストリームメッセージの送信、トピックにサブスクライブなど)複数のメソッドを提供します -

違いはMessagingnaming changes別名FIRMessagingが)ながらFIRInstanceIDのみ、登録トークン(例えばトークンを取得し、削除)に関連するメソッドを持っているということです。

関連する問題