Приложение Facebook перенаправляет на неправильное приложение - PullRequest
0 голосов
/ 24 мая 2019

У меня есть два приложения в Apple Store, оба совместно используют часть кода, но правильно настроены для работы в качестве двух разных приложений.

Вход в Facebook работал корректно на версиях FBSDKCoreKit (4.39.1) и FBSDKLoginKit (4.39.1), но когда я запустил pod update и эти модули, обновленные до версии 5.0.0, вход в систему через Facebook перестает работать правильно, даже после внесения необходимых изменений в мой логин.

Проблема в том, что если я нажму кнопку Login with Facebook первого приложения, если я решу использовать приложение Facebook, оно перенаправляется ко второму приложению, а не к первому. Но, если я захожу на веб-модал, он работает нормально.

У меня есть разные идентификаторы приложений Facebook для обоих приложений, и оба поддерживают Login with Facebook.

Мой AppDelegate.swift настроен так:

func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {

    FBSDKCoreKit.ApplicationDelegate.shared.application(application, didFinishLaunchingWithOptions: launchOptions)

    return true
}


func application(_ app: UIApplication, open url: URL, options: [UIApplication.OpenURLOptionsKey : Any] = [:]) -> Bool {

    let handle = FBSDKCoreKit.ApplicationDelegate.shared.application(app, open: url, options: options)

    return handle
}

(оба приложения совместно используют AppDelegate.swift)

И мой LoginViewController настроен:

@IBAction func loginWithFacebookClicked() {
    let fbLoginManager: LoginManager = LoginManager()

    if AccessToken.current != nil {
        fbLoginManager.logOut()
    }

    fbLoginManager.loginBehavior = .browser

    fbLoginManager.logIn(permissions: ["email"], from: self) { (result, error) in
        if (error == nil && !result!.isCancelled) {
            if let token = AccessToken.current?.tokenString {
                self.facebookLogin(token)
            }
        }
    }
}

Приложения имеют разные LoginViewController, но код тот же.

У меня нет ошибок, и оба входа работают, только обратный вызов приложения, которого нет. Пожалуйста, если кто-нибудь сможет мне помочь, я буду очень признателен.

...