gpt4 book ai didi

ios - facebook swift sdk 0.2.0 swift 3.1 登录页面保持打开状态

转载 作者:搜寻专家 更新时间:2023-10-30 22:00:42 25 4
gpt4 key购买 nike

我正在使用;

  • swift SDK 0.2.0 和
  • swift 3.1

所以,在我的 viewcontroller (initial.swift) 上我已经

import UIKit
import FacebookCore
import FacebookLogin
...
override func viewDidLoad() {
if let accessToken = AccessToken.current {
print("User is already logged in")
...
}
else {
let loginButton = LoginButton(readPermissions: [ .publicProfile, .email ])
loginButton.center = view.center

//AFTER ACTION
let loginManager = LoginManager()
loginManager.logIn([ .publicProfile, .email ], viewController: self)
{ loginResult in
switch loginResult {
case .failed(let error):
print(error)
break
case .cancelled:
print("User cancelled login.")
case .success(let grantedPermissions, let declinedPermissions, let accessToken):
print("Logged in!")
}
}
}

登录按钮按预期显示,但在权限页面后,白页保持打开状态,当我手动单击“完成”时,应用程序认为用户取消了登录。
有类似的线程建议缺少应用程序 delegate 函数(34734885),但我猜这是 FBSDKCoreKitFBSDKLoginKit 的解决方案,而不是新的Facebook swift SDK。再一次,我猜。有什么建议吗?

编辑
我也试过这个;

let myLoginButton = UIButton()
myLoginButton.backgroundColor = UIColor.darkGray
myLoginButton.frame = CGRect(0, 0, 180, 40);
myLoginButton.center = view.center;
myLoginButton.setTitle("My Login Button", for: UIControlState.normal)
// Add the button to the view
view.addSubview(myLoginButton)
// Handle clicks on the button
myLoginButton.addTarget(self, action: #selector(self.FBloginButtonClicked), for: UIControlEvents.touchUpInside)


@objc func FBloginButtonClicked() {
//AFTER ACTION
let loginManager = LoginManager()
loginManager.logIn([ .publicProfile, .email ], viewController: self)
{ loginResult in
switch loginResult {
case .failed(let error):
print(error)
break
case .cancelled:
print("User cancelled login.")
case .success(let grantedPermissions, let declinedPermissions, let accessToken):
print("Logged in!")
}
}
}

最佳答案

据我了解,您根据 facebook guide? 做了所有事情

包括这部分:

// Handle clicks on the button
myLoginButton.addTarget(self, action: @selector(self.loginButtonClicked) forControlEvents: .TouchUpInside)

// Once the button is clicked, show the login dialog
@objc func loginButtonClicked() {
let loginManager = LoginManager()
...
}

关于ios - facebook swift sdk 0.2.0 swift 3.1 登录页面保持打开状态,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43831728/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com