안녕하세요 카카오톡 로그인을 하려고 하는데
각 정보들을 긁어오는데 카카오톡 로그인을 진행하면 2번이나 3번 세션을 호출해서 각 정보들을 2~3번 불러오는데 어떻게 해야 할까요?? ㅠㅠ
밑에는 사용된 코드입니다.
kakaoLoginBtn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
isKakaoLogin();
}
});
private void isKakaoLogin() {
mKakaocallback = new SessionCallback();
com.kakao.auth.Session.getCurrentSession().addCallback(mKakaocallback);
Log.d(“하이”, “addCallback(mKakaocallback)”);
com.kakao.auth.Session.getCurrentSession().checkAndImplicitOpen();
Log.d(“하이”, “checkAndImplicitOpen”);
com.kakao.auth.Session.getCurrentSession().open(AuthType.KAKAO_TALK_EXCLUDE_NATIVE_LOGIN, SignInActivity.this);
Log.d(“하이”, “getCurrentSession().open(AuthType.KAKAO_TALK_EXCLUDE_NATIVE_LOGIN, SignInActivity.this)”);
}
private class SessionCallback implements ISessionCallback {
@Override
public void onSessionOpened() {
Log.d("하이", "세션오픈 됨");
KakaoRequestMe();
}
@Override
public void onSessionOpenFailed(KakaoException exception) {
if (exception != null) {
Log.d("하이", exception.getMessage());
}
}
}
protected void KakaoRequestMe() {
UserManagement.requestMe(new MeResponseCallback() {
@Override
public void onSessionClosed(ErrorResult errorResult) {
Log.d("하이", "오류");
}
@Override
public void onNotSignedUp() {
Log.d("하이", "onNotSignedUp");
}
@Override
public void onSuccess(UserProfile userProfile) {
profileUrl = userProfile.getProfileImagePath();
userId = String.valueOf(userProfile.getId());
userName = userProfile.getNickname();
setLayoutText();
Intent intent = new Intent(getBaseContext(), WriteActivity.class);
startActivity(intent);
}
});
}