Facebook SDK 3.0 연동 시, 토큰 및 email 주소 얻는 법

2013. 7. 30. 17:45안드로이드 개발

Facebook SDK 3.0을 이용하여 연동할 때 토큰과 email 주소를 가져오는 방법이다. 알고보면 별 것 아닌데 쓸만한 레퍼런스가 많지 않은 것이 이상하다.


Session.openActiveSession(MainActivity.this, true, new Session.StatusCallback() {

@Override

public void call(final Session session, SessionState state, Exception exception) {

if (session.isOpened()) {

facebookToken = session.getAccessToken();

if(!session.getPermissions().contains("email")) {

String[] PERMISSION_ARRAY_READ = {"email","user_birthday"};

List<String> PERMISSION_LIST=Arrays.asList(PERMISSION_ARRAY_READ);

session.requestNewReadPermissions(

new Session.NewPermissionsRequest(MainActivity.this, PERMISSION_LIST));

}

Request.executeMeRequestAsync(session, new Request.GraphUserCallback() {

@Override

public void onCompleted(GraphUser user, Response response) {

if (user != null) {

Log.i("user_email",(String)user.getProperty("email"));

Log.i("user_birthday",user.getBirthday());

}

});

}

}

});


수시로 정책이나 방법이 바뀌는 Facebook SDK 연동 구현은 늘 번거롭고 귀찮은 일이다.