먼저 구성은 안드로이드 클라이언트 앱과 데이터 db가 있는 서버가 있습니다.
https://developers.google.com/identity/sign-in/android/start-integrating?hl=ko
위 링크를 참고하여 add sign in 과정 까지 완료를 하였습니다.
sign in과 sign out이 정상적으로 작동 되고 sign in 상태에서 앱을 종료 후 다시 실행 해도 자동 로그인 처럼 sign in 상태로 접속이 잘되더라구요.
이제 백단, 즉 db 서버가 있는 부분 처리를 어떻게 해야 하나 싶어서 찾다가
위 링크의 authenticate with a backend server 메뉴를 참고하여 클라이언트에서 id token을 받아 서버에 전송하여 토큰을 매칭하고 확인하는 과정까지 완료 하였습니다.
그런데 이 과정이 들어가면 앱에서 재접속을 하면 자동 로그인 하듯 자동으로 sign in 이 되던 것이
아래 소스의 GoogleSignInResult 객체가 fail이 되어 버립니다.
private void handleSignInResult(GoogleSignInResult result) {
if (result.isSuccess()) {
// success
} else {
// fail
Status status = result.getStatus();
Log.w(TAG, "google sign in failed! " + status.toString());
}
}
서버에서 토큰 인증과정없이는 정상 작동하는데 왜 서버에서 토큰 확인 하는 과정만 거치면 앱에서 로그인 상태 끊기는 것인지 궁금합니다. 해결 하기가 힘드네요 ㅠㅠ 아예 연동방법이 잘못된것인지.. 구글 로그인을 거치고 DB 서버 사용 하시는분 계시면 해결 방법 부탁드립니다!!