FacebookSDKとスタックオーバーフローとチュートリアルを統合していますが、正しく動作しません。プロファイルデータを取得できません。このメソッドは呼び出されません。 「完全ログイン」のみが表示されます。ログインプロセスは機能していますが、ログアウトオプションはボタンには表示されません。私はどんなヒントにも感謝しています。ここでFacebookSDKとの統合時にプロファイル情報を取得する
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)
})
}
}
コンソールログの私の一部です:(。私はのInfo.plistするfbauthを追加した)
RecipeMaster [19428:630625] -canOpenURL:URLに失敗しました: "fbauth2:/" - エラー: "操作は完了できなかった(OSStatusエラー-10814)" 完了ログイン
2017年2月8日22:48:23.308043 RecipeMaster [19428:640928] PACがエラーで失敗したフェッチ[NSURLErrorDomain :-1003]
2017年2月8日22:48:23.308482 RecipeMaster [19428:641029]は[] PAC評価エラーnw_proxy_resolver_create_parsed_array:NSURLErrorDomain:-1003
[iOS 10でFacebook iOS SDKを使用する方法](http://stackoverflow.com/questions/38689631/how -to-use-facebook-ios-sdk-on-ios-10) – i6x86
実際、ターゲットの機能でキーチェーンの共有を有効にすることはできません。それでも同じ問題。 – Vuko