我正在使用函数FBSDKAccessToken.currentAccessToken()来检索正常工作的FB令牌,直到我在swift 3和4.17 SDK中迁移了我的应用程序.现在,该函数已重命名为FBSDKAccessToken.current(),并且在重新加载应用程序委托时为nil.我已经执行了一些测试,并且在我重新启动应用程序后我设法获得了令牌并且我之前已经登录过FB,但这不是我期望的行为.
编辑:我恢复到4.15,它又重新工作了.
这是我的AppDelegate中的代码:
func applicationDidBecomeActive(_ application: UIApplication)
{
FBSDKAppEvents.activateApp();
}
func application(_ application: UIApplication, open url: URL, sourceApplication: String?, annotation: Any) -> (Bool)
{
let wasHandled: Bool = FBSDKApplicationDelegate.sharedInstance().application(application
,open:url
,sourceApplication:sourceApplication
,annotation:annotation)
if (wasHandled) {
if let fbtoken = FBSDKAccessToken.current() {
loginWithFacebook(fbtoken.tokenString);
}else{
print("no current token")
}
}
return wasHandled
}
func application(_ app: UIApplication, open url: URL, options: [UIApplicationOpenURLOptionsKey : Any] = [:]) -> Bool {
let wasHandled: Bool = FBSDKApplicationDelegate.sharedInstance().application(
app,
open: url as URL!,
sourceApplication: …Run Code Online (Sandbox Code Playgroud)