我在Apple Store上有两个应用程序,它们都共享部分代码,但已正确配置为可以用作两个不同的应用程序。
Facebook登录在版本FBSDKCoreKit (4.39.1)
和FBSDKLoginKit (4.39.1)
上正常工作,但是当我运行pod update
时,这些用facebook登录到5.0.0
版本的Pod停止正常运行,即使我对登录流程进行了必要的更改。
问题在于,如果我按下第一个应用程序的按钮Login with Facebook
,并且选择使用Facebook App,它将重定向到第二个应用程序,而不是第一个。但是,如果我以网络模式登录,就可以正常工作。
两个应用程序都有一个不同的Facebook应用程序ID,并且都实现了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
,但代码相同。
我没有任何错误,并且两次登录均有效,只是回调了应用程序而没有。拜托,如果有人可以帮助我,我将非常感激。