안드로이드 카카오톡 로그인 api 연동 중입니다.
우선 커스텀 로그인 버튼으로 진행하고 있구요.
onCrate 에서
if(KakaoSDK.getAdapter() == null) {
KakaoSDK.init(new GlobalApplication.KakaoSDKAdapter());
}
callback = new SessionCallback();
Session.getCurrentSession().addCallback(callback);
커스텀 버튼 클릭에서는
Log.e(TAG, "getAccessToken() : " + Session.getCurrentSession().getAccessToken());
binding.comKakaoLogin.performClick();
로그아웃은 다른 화면에서
private void onClickLogout() {
UserManagement.getInstance().requestLogout(new LogoutResponseCallback() {
@Override
public void onCompleteLogout() {
Intent intent = new Intent(getApplicationContext(), LoginActivity.class);
startActivity(intent);
finish();
}
});
}
진행하고 있습니다.
최초 어플 설치후 커스텀 로그인 버튼 클릭시 카카오톡 동의화면 팝업이 뜨고 동의후 실행하기 인가 버튼 누르면 별 문제 없이 로그인이 되어 이메일 또는 프사를 불러오는데요.
로그아웃 처리 후 커스텀 로그인 버튼 클릭시 카카오톡 로그인 창이 뜨지만 로그인 정보 입력 없이 뒤로가기 백버튼을 클릭하고 커스텀 로그인 버튼을 다시 누르정
Log.e(TAG, "getAccessToken() : " + Session.getCurrentSession().getAccessToken()); 부분에서
getAccessToken() : null
로 나오지만 최초 로그인 시도했던 로그인 정보가 표출 됩니다.
** 정리!!! **
- 최초 어플 실행시 커스텀 버튼을 클릭하여 카카오톡 로그인 시도
- 카톡자체 동의 팝업 뜸 -> 동의 후 진행
- 로그인이 성공되어 메인 창이 뜸
- 메인 창에서 카카오톡 로그아웃 처리 후 자체 로그인 창으로 보냄
- 자체 로그인 화면에서 커스텀 버튼 클릭하여 카카오톡 로그인 팝업창이 뜸( 이미 동의를 진행하여 동의 창은 뜨지 않는것 같음)
- 카카오톡 로그인 창에서 로그인 진행하지 않고 백버튼을 눌러 로그인 시도 안함
- 자체 로그인 창에서 커스텀 로그인 버튼을 재 클릭 하면 AccessToken 값은 널이지만 먼저 로그인 했던 로그인 정보는(이메일 등) 받아옴.
7번에서 AccessToken은 널이지만 세션은 살아있는것 같네요…
카카오톡 로그아웃 진행하면 왜 세션이 살아있을까요.??
답변 부탁드립니다.