2014-03-31 6 views
0

이메일을 제외한 사용자 정보를 얻으려는 코드가 있습니다. 내가 권한을 넣어 방식에 대한 우려 해요안드로이드 facebook sdk에서 이메일 받기

GraphObject{graphObjectClass=Map, state={"id":"10000xxxxxxx","first_name":"xxxx","username":"xxxxxx","timezone":x,"locale":"en_US","link":"https:\/\/www.facebook.com\/xxxxxx","name":"xxxxx","last_name":"xxxxx","gender":"male","education":[{"type":"xxxx","school":{"id":"xxxxx","name":"xxxxx"}}],"updated_time":"xxxxxxx"}} 

: 내가

Request.executeMeRequestAsync(session, 
    new Request.GraphUserCallback() { 
    @Override 
    public void onCompleted(GraphUser user, Response response) { 
     if (null != user) { 
      C.trace("user name: " + user.getName()); 
      C.trace("user gender: " + user.asMap().get("gender")); 
     } 
    } 
}); 

내 그래프 결과 어떤 이메일 사용자 정보를 얻을 여기

private void requestLoginFb() { 
    Session session = Session.getActiveSession(); 
    if (!session.isOpened() && !session.isClosed()) { 
     session.openForRead(new Session.OpenRequest(this).setPermissions(
       Arrays.asList("basic_info", "email")).setCallback(
       fbCallback)); 
    } else { 
     Session.openActiveSession(act, true, fbCallback); 
    } 
} 

이 내 요청 코드입니다. 그럼 기본 정보와 이메일을 세션에 넣었습니다. 이것이 올바른지 모르겠다.

UPDATE 여기

스크린 샷을 페이스 북에 요청하면서. 심지어 허락을받지 않은 친구 목록이 있습니다. 내 그래프에는 아직 이메일이 없습니다.
enter image description here

답변

0

권한을 한 번 부여한 후에 권한을 추가했다고 생각합니다. 그래서 모든 응용 프로그램에 here을 클릭하여 사용 권한을 확인해보십시오.

email 권한이 설정되어 있지 않으면 앱을 로그 아웃하거나 설정에서 앱을 제거한 다음 다시 로그인 할 수 있습니다. 따라서 귀하는 email 권한이 포함 된 권한을 다시 부여받을 수 있습니다.

+0

나는 페이스 북에 대한 요청을하기 시작하는 동안 허가를했다. 허가를 받아야하는 곳에서 샘플을 줄 수 있어요? btw, 나는 내 질문을 이미지로 업데이트했다. 그리고 내 페이스 북 응용 프로그램에서 "이 응용 프로그램이 필요 : 귀하의 기본 정보, 귀하의 이메일 주소"그래서 내 권한은 잘 작동하지만, 페이스 북은 내게 그래프에 이메일을주지 않았다고 쓰여진 –

+0

이메일 권한을 볼 수 있습니까 대답에서 언급 한 링크? –

+0

네, 그걸 보았습니다. 제 앱의 기본 정보와 이메일 주소가 필요하다는 것을 알았습니다. –

0

페이 스북에서 이메일을 받으려면 다음과 같이하십시오.

String email = user.asMap().get("email").toString(); 
Textview mEmail = (TextView) findViewById(R.id.textView1); 
mEmail.setText(email); 

위의 코드를 사용하면 성공적으로 facebbok 사용자의 이메일을받을 수 있습니다. 시도해보고 문제가 계속되면 알려주십시오.

+0

문제는 이메일 매개 변수에 관한 것이 아니라 내 그래프에 이메일이 없습니다. 내 그래프 결과를 확인하십시오. –

1

이것은 잘 알려진 문제입니다. 일부 계정의 경우 페이스 북은 코드가 정확할 때에도 이메일을 반환하고 싶지 않습니다. 다른 계정으로 시도해 주시겠습니까?