0
に設定しました。私はSwift 3.0のプロジェクトで作業していますが、Facebookを使用した認証サインアップ手順があります。だから、基本的に私はFBの統合部分を行って、一度アカウントにログインした結果、私はそれらを要求して以来、私はユーザーのメールアドレス、名前、ID、プロファイルの写真のURLを得ています。私は私のコンソールに入る)。私が以下のように受け取る形式。フェイスブックの統合結果をラベル
Optional({
email = "[email protected]";
id = xxxxxxxxxx;
name = "xxxxxx xxxx";
picture = {
data = {
"is_silhouette" = 0;
url = "https://scontent.xx.fbcdn.net/v/t1-1/c2.0.50.50/p50x50/10441341_10201209786847369_5426097469926927988_n.jpg?oh=1b4d8709be17338bc7e877d411b96eee&oe=58CE5B13";
};
};
})
私の要件は、これらの電子メール、名前、IDフィールドをラベルに割り当てて印刷することです。
私の関連するView Controllerのコードは次のとおりです。私は何を追加すべきですか?
import UIKit
import FBSDKLoginKit
class ViewController: UIViewController,FBSDKLoginButtonDelegate{
@IBOutlet weak var displayLabel: UILabel!
@IBOutlet weak var loginButton: UIButton!
override func viewDidLoad() {
super.viewDidLoad()
let loginButton = FBSDKLoginButton()
view.addSubview(loginButton)
//frame's are obselete, please use constraints instead because its 2016 after all
loginButton.frame = CGRect(x: 16, y: 50, width: view.frame.width - 32, height: 50)
loginButton.delegate = self
loginButton.readPermissions = ["email", "public_profile"]
}
func loginButtonDidLogOut(_ loginButton: FBSDKLoginButton!) {
print("Did log out of facebook")
}
@IBAction func loginButtonPressed(_ sender: AnyObject) {
FBSDKLoginManager().logIn(withReadPermissions: ["email"], from: self) { (result, err) in
if err != nil {
print("Custom FB Login failed:", err)
return
}
print("FB login Sucess")
print(result?.token.tokenString)
self.showEmailAddress()
}
}
func showEmailAddress() {
FBSDKGraphRequest(graphPath: "/me", parameters: ["fields": "id, name, email,picture"]).start { (connection, result, err) in
if err != nil {
print("Failed to start graph request:", err)
return
}
print(result)
// self.displayLabel.text = result["email"]as? NSMutableArray
}
}
}
'result [" email "] as? NSMutableArrayなぜNSMutableArrayとして? 「文字列として」、いいえ?あなたが置いているにもかかわらず、 – Larme
には、「タイプAnyにサブスクリプションメンバーがありません」というエラーメッセージが表示されます。それは私がその行の行為をコメントした理由です。私は試して失敗したので、その結果をラベルに代入したいのです – danutha
'result'は辞書です(私たちの場合は' [String:Any] ')。 – Larme