![](/img/trans.png)
[英]iOS Facebook SDK: FBSDKGraphRequest doesn't return email (Swift)
[英]Working with FBSDKGraphRequest on iOS SDK for Facebook with SWIFT
我對iOS Facebook SDK相當陌生,很快就遇到了問題。
我想從Facebook用戶那里獲取個人資料信息,例如姓名,生日和音樂。
我嘗試過跟隨“名稱”和“生日”,但是不知道如何遍歷NSDictionary。 最后,我想將所有藝術家/樂隊名稱保存在名為allMusic的字符串變量中
let graphRequest : FBSDKGraphRequest = FBSDKGraphRequest(graphPath: "me?fields=id,name,email,bio,birthday,hometown,gender,music,events", parameters: nil)
graphRequest.startWithCompletionHandler({ (connection, result, error) -> Void in
if ((error) != nil)
{
// Process error
print("Error: \(error)")
}
else
{
let userName : NSString = result.valueForKey("name") as! NSString
let userEmail : NSString = result.valueForKey("email") as! NSString
let bday : NSString = result.valueForKey("birthday") as! NSString
let bio : NSString = result.valueForKey("bio") as! NSString
let id : NSString = result.valueForKey("id") as! NSString
let music: NSDictionary = result.valueForKey("music") as! NSDictionary
var allMusic: String = ""
for val in music {
print(val.valueForKey("data"))
// allMusic += "----Value---"
}
}
})
如果我打印(音樂),這在命令行上
{
data = (
{
"created_time" = "2015-07-19T12:17:26+0000";
id = 345946458834143;
name = Wanda;
},
{
"created_time" = "2015-06-23T01:20:04+0000";
id = 119490691442848;
name = Knorkator;
}... and so on
{
"created_time" = "2013-02-11T19:13:08+0000";
id = 8811047260;
name = "Infected Mushroom";
}
);
paging = {
cursors = {
after = ODgxMTA0NzI2MAZDZD;
before = MzQ1OTQ2NDU4ODM0MTQz;
};
next = "some url...";
};
}
let array = ((result as! NSDictionary).value(forKey: "data") as! NSArray)
for myData in array{
let music = ((myData as! NSDictionary).value(forKey: "name")) as! String //you can also save this to global variable :)
}
希望這會起作用
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.