안드로이드 로그아웃 후 완료 후 로그인 없이 로그인이 성공됨

안드로이드 카카오톡 로그인 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

로 나오지만 최초 로그인 시도했던 로그인 정보가 표출 됩니다.

** 정리!!! **

  1. 최초 어플 실행시 커스텀 버튼을 클릭하여 카카오톡 로그인 시도
  2. 카톡자체 동의 팝업 뜸 -> 동의 후 진행
  3. 로그인이 성공되어 메인 창이 뜸
  4. 메인 창에서 카카오톡 로그아웃 처리 후 자체 로그인 창으로 보냄
  5. 자체 로그인 화면에서 커스텀 버튼 클릭하여 카카오톡 로그인 팝업창이 뜸( 이미 동의를 진행하여 동의 창은 뜨지 않는것 같음)
  6. 카카오톡 로그인 창에서 로그인 진행하지 않고 백버튼을 눌러 로그인 시도 안함
  7. 자체 로그인 창에서 커스텀 로그인 버튼을 재 클릭 하면 AccessToken 값은 널이지만 먼저 로그인 했던 로그인 정보는(이메일 등) 받아옴.

7번에서 AccessToken은 널이지만 세션은 살아있는것 같네요…
카카오톡 로그아웃 진행하면 왜 세션이 살아있을까요.??

답변 부탁드립니다.

토큰 정보가 null 인데 UserManagement.getInstance().me() 호출 시 성공적으로 정보를 받아오는 상태인건가요? 먼저 로그인 했던 로그인 정보를 받아온다는 부분을 조금 더 자세히 설명해 주시면 감사하겠습니다!

카카오톡 로그아웃 진행한 상태라

Log.e(TAG, "getAccessToken() : " + Session.getCurrentSession().getAccessToken()); ==> null 이라고 뜨고요
binding.comKakaoLogin.performClick();

public void requestMe() {

    List<String> keys = new ArrayList<>();
    keys.add("properties.nickname");
    keys.add("properties.profile_image");
    keys.add("properties.thumbnail_image");

    keys.add("kakao_account.email");
    keys.add("kakao_account.birthday");
    keys.add("kakao_account.gender");
    keys.add("kakao_account.age_range");


    UserManagement.getInstance().me(keys, new MeV2ResponseCallback() {

        @Override
        public void onSuccess(MeV2Response userProfile) {       ==> 로그아웃을 했고 token은 null 이지만 이부분 탐.

            handleScopeError(userProfile.getKakaoAccount());

    }

}

답글 남겨주신것처럼 카카오톡 로그아웃을 했으나 카카오톡 커스텀 로그인 버튼 클릭시

UserManagement.getInstance().me() 이부분이 호출되고

@override
onSuccess(MeV2Response userProfile) { ==> 이부분이 탑니다.

}

정상적인 상황은 아니네요. 해당 API 요청이 어떤 액세스토큰으로 요청한건지 확인해봐야할 것 같은데 테스트하신 계정 정보를 메시지로 보내주시겠어요?