readPermissionsuser_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 アカウントで試してください。
テスト目的で、警告メッセージ (下のスクリーンショットを参照) で位置情報を取得できます。ただし、アプリをアプリストアに送信する前に、Facebook からのログイン レビューを通過する必要がありますuser_location
。これは、事前承認された許可ではありません。
詳細については、Graph API Explorer にアクセスしてください
Graph API エクスプローラーに移動して、アプリを試すことができます。Get TokenとGet User Access Tokenをクリックしてトークンを生成します。クリックすると、許可チェックボックスが開きます。user_locationをチェックしたままにしてください。
次に、次のGet Parametersを使用して Submit をクリックします。locationパラメーターが存在することを確認してください。次のような JSON が表示されます。あなたの国と都市名で構成される名前キーを持つ場所辞書
があります。
{
"id": "338058996547981",
"name": "Rajan Maheshwari",
"birthday": "04/29/1990",
"location": {
"id": "106517799384578",
"name": "New Delhi, India"
}
}
注: - また、Facebook プロフィールに場所を入力し、それを公開していることを確認する必要があります。
パーミッションでアプリを実行すると、このような警告画面で Facebook 認証が取得されます。
一部の権限はここで確認する必要があるため、ログインの確認が求められます。レビューを必要としない Facebook が無料で提供する基本的な権限は次のとおりです。
ただし、テスト目的であれば、レビューなしで場所を取得できます。ただし、iOS アプリを appstore に送信する前に、その警告メッセージを回避し、ユーザーの場所を取得するために、Facebook のログイン レビューに合格する必要があります。