您的readPermissions user_location
是正確的,但國家/地區的參數名稱不是user_location
。
這是location
。
let parameters = ["fields": "id,location,name,first_name,last_name,picture.type(large),email,birthday,gender,bio,relationship_status"]
確保您已在Facebook帳戶中添加一個地方並作出公共在您的登錄,您將完成。嘗試使用您創建Facebook應用的同一個Facebook帳戶。
出於測試目的,您可以通過警告消息(如後面所示的截圖所示)獲取您的位置。但在將您的應用程序提交到appstore之前,您需要通過Facebook的登錄審覈,因爲user_location
不是預先批准的許可。
對於更多信息,請到圖形API瀏覽器
你可以去Graph API Explorer,並嘗試與您的應用程序。點擊獲取令牌和獲取用戶訪問令牌生成令牌。點擊它將打開權限複選框。請檢查user_location。
接下來只要按一下有以下提交獲取參數。確保位置參數在那裏,您可以看到如圖所示的JSON。
有位置字典與名稱鍵包括您的國家和城市的名稱。
{
"id": "338058996547981",
"name": "Rajan Maheshwari",
"birthday": "04/29/1990",
"location": {
"id": "106517799384578",
"name": "New Delhi, India"
}
}
注: - 此外,你必須確保你已經在你的Facebook個人資料中輸入的地方,做出公開。
當你將運行具有權限的應用程序,你會得到一個警告屏幕這樣的Facebook驗證。
它會要求一個登錄評論一些權限的需要審查這裏。基本權限被Facebook這不需要任何審查提供了免費的: -
但是出於測試目的,你可以得到的位置沒有任何審查。但在您將iOS應用程序提交到appstore之前,您需要通過Facebook的登錄審查,以避免該警告消息並獲取用戶的位置。
您好,感謝答案拉詹。這很奇怪,它在Graph API Explorer中有效,但在我的應用程序中不起作用(儘管我將其更改爲「位置」。嗯,還有什麼我忘記了? – askaale
@askaale在我的應用程序中工作,請確保您的位置是公開的,並嘗試使用您創建應用程序的相同帳戶登錄 –
我仍然無法解決此問題,我注意到我的位置不公開,但我改變了這一點,但它並沒有幫助。 ,它會是一個簡單的方法來獲取用戶的國家名稱嗎?或者我必須通過簡單地用逗號分隔字符串來獲得此信息嗎? – askaale