안드로이드로 카카오 사용자관리 SDK 사용중인데 가이드에 혼동이 와서 질문드립니다.
해당 소스로 테스트 결과는 세션이 열린뒤 requestMe() 메소드에서 id값은 정상적으로 호출이되지만
age와 gerder 정보가 호출되지 않습니다. (null값)
내 애플리케이션 설정에서 사용자관리에서 연결시 선택으로 설정해뒀습니다.
private void onKakao() {
callback = new SessionCallback();
Session.getCurrentSession().addCallback(callback);
}
private void requestMe() {
List<String> keys = new ArrayList<>();
keys.add("Kakao_account.age_range");
keys.add("kakao_account.gender");
UserManagement.getInstance().me(keys, new MeV2ResponseCallback() {
@Override
public void onFailure(ErrorResult errorResult) {
super.onFailure(errorResult);
Log.e("kakao_request_failure", String.valueOf(errorResult));
}
@Override
public void onFailureForUiThread(ErrorResult errorResult) {
super.onFailureForUiThread(errorResult);
Log.e("kakao_request_thread", String.valueOf(errorResult));
}
@Override
public void onSuccess(MeV2Response result) {
Log.e("id", String.valueOf(result.getId()));
Log.e("age", String.valueOf(result.getKakaoAccount().getAgeRange()));
Log.e("gender", String.valueOf(result.getKakaoAccount().getGender()));
}
@Override
public void onSessionClosed(ErrorResult errorResult) {
Log.e("kakao_request close", String.valueOf(errorResult));
}
});
}
class SessionCallback implements ISessionCallback {
@Override
public void onSessionOpened() {
Log.e("kakao_session", "sessionopen");
requestMe();
}
@Override
public void onSessionOpenFailed(KakaoException exception) {
if (exception != null) {
Log.e("kakao_session", String.valueOf(exception));
}
}
}