Simulator FirebaseAuth works! But not a physical device. Error 'Token Mismatch'

Viewed 463

Im trying to implement the Phone-Auth for iOS app.

I get error from error.localizedDescription: Token mismatch.

What does this mean? "Token mismatch" says nothing to me...

Also, I get this error: "This fake notification should be forwarded to Firebase Auth."

Code:

PhoneAuthProvider.provider().verifyPhoneNumber(phoneNumber, uiDelegate: nil) { (verificationID, error) in
                if let error = error {
                    print(error.localizedDescription)

                    return
                }
                // Sign in using the verificationID and the code sent to the user
                // ...

AppDelegate:

func application(_ application: UIApplication, didRegisterForRemoteNotificationsWithDeviceToken deviceToken: Data) {
        let firebaseAuth = Auth.auth()
        firebaseAuth.setAPNSToken(deviceToken, type: AuthAPNSTokenType.prod)

    }

    func application(_ application: UIApplication, didReceiveRemoteNotification userInfo: [AnyHashable: Any],
                     fetchCompletionHandler completionHandler: @escaping (UIBackgroundFetchResult) -> Void) {

        let firebaseAuth = Auth.auth()
        if (firebaseAuth.canHandleNotification(userInfo)){
            print(userInfo)
            return
        }

        // Print full message.
        print(userInfo)

        completionHandler(UIBackgroundFetchResult.newData)
    }
1 Answers

I solved the problem, After enabling phone Authentication, we must download GoogleService-Info.plist again to override the old one

Related