2015-01-13 51 views
1

我使用Facebook的SDK來獲得用戶的詳細信息,權限爲:從Facebook SDK檢索國家 - IOS

[NSArray arrayWithObjects:@"user_photos",@"public_profile",@"user_location", @"user_birthday",nil]; 

我知道如何讓這個城市,但我怎麼能得到用戶的國家?

FBRequest *request = [FBRequest requestForMe]; 
[request startWithCompletionHandler:^(FBRequestConnection *connection, id result, NSError *error) 
{ 
    if (!error) 
    { 
     NSDictionary *userData = (NSDictionary *)result; 

     NSString *facebookID = userData[@"id"]; 
     NSString *name = userData[@"name"]; 
     NSString *city = userData[@"location"][@"name"]; 
    } 
    else 
    { 
     //... 
    } 
}]; 
+1

嘗試'[@「location」] [@「country」]'。所有你需要的是這裏https://developers.facebook.com/docs/graph-api/reference/v2.2/page/?locale=en – Ryan

+0

謝謝你,但它返回爲nil = \ –

回答

1

應該[@"location"][@"country"]爲@ trick14概述。如果你不能得到它的值,它可以有多種原因:

  • 要查詢的用戶已經在他的個人資料
  • 訪問令牌你使用已授予任何user_location沒有位置信息權限(請與以/me/permissions通話)
  • 還有的位置(不太可能)

你必須與你的權限字符串BTW的問題,任何國家的信息,user_location包含兩次,offline_accesspublish_stream很久以前就被棄用了。

+0

謝謝你詳細的回答 –