次のコードを使用して、ユーザーの電子メールを取得しています。
AccessToken accessToken = AccessToken.getCurrentAccessToken();
GraphRequest.newMeRequest(accessToken, new GraphRequest.GraphJSONObjectCallback() {
@Override
public void onCompleted(JSONObject jsonObject, GraphResponse graphResponse) {
// Obtaining
}
}).executeAsync();
以下は、デバッガーを介してチェックされます。
- AccessToken インスタンスには、権限「email」と「public_profile」が含まれています
- AccessToken インスタンスが拒否された権限セットが空です
- 結果の JSONObject には、ユーザー ID と名前のみが含まれますが、電子メールは含まれません
Profile has email — メールで認証しています。
Facebook SDK 4.5 を使用しています
編集:直接 HTTP グラフ API 呼び出しを介した要求は、電子メールを返します。しかし、Android SDK はそうではありません。
修正方法は?