Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 与FacebookSDK集成时获取配置文件信息_Ios_Swift_Facebook - Fatal编程技术网

Ios 与FacebookSDK集成时获取配置文件信息

Ios 与FacebookSDK集成时获取配置文件信息,ios,swift,facebook,Ios,Swift,Facebook,我已经将FacebookSDK与stack overflow和一些教程集成在一起,但是它对我来说并不正常。我无法获取配置文件数据。这个方法甚至没有被调用。仅显示“完全登录”。登录过程正在运行,但“注销”选项从未按应有的方式出现在按钮上。我很感谢你给我的提示 import Foundation import UIKit import FBSDKLoginKit import FBSDKCoreKit class mainView: UIViewController, FBSDKLo

我已经将FacebookSDK与stack overflow和一些教程集成在一起,但是它对我来说并不正常。我无法获取配置文件数据。这个方法甚至没有被调用。仅显示“完全登录”。登录过程正在运行,但“注销”选项从未按应有的方式出现在按钮上。我很感谢你给我的提示

 import Foundation
 import UIKit
 import FBSDKLoginKit
 import FBSDKCoreKit



 class mainView: UIViewController, FBSDKLoginButtonDelegate {

@IBOutlet weak var navigationBar: UINavigationBar!
@IBOutlet weak var mainImage: UIImageView!
@IBOutlet weak var getRecipeBtn: UIButton!
@IBOutlet weak var addImageBtn: UIButton!

let loginButton: FBSDKLoginButton = {
    let button = FBSDKLoginButton()
    button.readPermissions = ["email"]
    return button
}()

override func viewDidLoad() {
     super.viewDidLoad()

    view.addSubview(loginButton)
    loginButton.center = view.center
    loginButton.delegate = self

    if let token = FBSDKAccessToken.current() {
        fetchProfile()
    }
}

func loginButton(_ loginButton: FBSDKLoginButton!, didCompleteWith result: FBSDKLoginManagerLoginResult!, error: Error!) {
    print("completed login")
}

func loginButtonWillLogin(_ loginButton: FBSDKLoginButton!) -> Bool {
    return true
}

func loginButtonDidLogOut(_ loginButton: FBSDKLoginButton!) {

}


func fetchProfile() {
    print("fetch profile")

    FBSDKGraphRequest(graphPath: "me", parameters: ["fields": "email, first_name, last_name, id"]).start(completionHandler:  { (connection, result, error) in guard

        let result = result as? NSDictionary,
        let email = result["email"] as? String,
        let user_name = result["fist_name"] as? String,
        let user_id = result["id"] as? String

            else {
                return
        }
        print(email)


       })
   }
}
这是我的控制台日志部分:(我已将fbauth添加到info.plist。)

RecipeMaster[19428:630625]-canOpenURL:因URL:“fbauth2:/”失败-错误:“操作无法完成。(OSStatus错误-10814)。” 完成登录

2017-02-08 22:48:23.308043 RecipeMaster[19428:640928]PAC获取失败,出现错误[NSURLErrorDomain:-1003]


2017-02-08 22:48:23.308482 RecipeMaster[19428:641029][]nw_proxy_resolver_create_parsed_array PAC评估错误:nsurErrorDomain:-1003

您可能必须转到目标->功能并启用密钥链共享(它允许您的应用程序访问密钥链),

我已修复了第一个错误-canOpenURL:URL失败:“fbauth2:/在我的AppDelegate中设置不同的方法(使用3.0实现的答案)->

实际上,在Target的功能中启用密钥链共享对我不起作用。还是一样的问题。事实上,在Target的功能中打开钥匙链共享对我来说不起作用。还是同样的问题。您是否将func应用程序(application:UIApplication,didFinishLaunchingWithOptions launchOptions:[UIApplicationLaunchOptions:[UIApplicationLaunchOptions:Any]?)->Bool{//应用程序启动后的自定义覆盖点。FBSDKApplicationDelegate.sharedInstance().application(应用程序,didFinishLaunchingWithOptions:launchOptions)返回true}on app.delegateYes,现在发布了答案。但是,我无法打印个人资料信息。我无法获取和打印我的个人资料信息。此错误[NSURErrorDomain:-1003]仍然出现。