내 새로운 Android App (MVP 아키텍처 사용)에서 Firebase Authentication 및 Real Time Database (RTDB)를 현재 구현하고 있습니다. 내 MainActivity View 클래스에 AuthStateListener 논리를 추가하는 대신. 저는 Presenter 클래스에 배치했습니다. Presenter 클래스는 뷰 수명주기에 응답하여 리스너를 부착하거나 분리합니다 (onResume 호출자에서 수신기를 연결하는 호출, onPause 호출 자에서 수신기에서 수신기를 분리).Firebase 인증 문제 getGoogleApiForMethod()가 GMS를 반환했습니다
문제 : 기기가 비활성 상태 (서버가 연결을 종료했을 가능성이 높음)가 지나면 다시 활성화됩니다. 사용자는 여전히 로그 인한 상태입니다 (예상되는 동작). 그러나 예기치 않게 로그인 한 사용자는 Firebase RTDB에 더 이상 액세스 할 수 없지만 RTDB는 읽기/쓰기 권한 거부 오류를 발생시키지 않습니다. 그 시점부터 모든 데이터베이스 읽기/쓰기 작업은 작동하지 않으며 Firebase 콘솔에서 확인됩니다.
이 문제가 발생하면 log cat은 반복적으로 로그인 시도 전략을 사용하고있는 것처럼 보입니다.
12-10 14:09:23.671 13076-13271/appname W/BiChannelGoogleApi: [FirebaseAuth: ] getGoogleApiForMethod() returned Gms
12-10 14:09:27.191 13076-13271/ appname W/BiChannelGoogleApi: [FirebaseAuth: ] getGoogleApiForMethod() returned Gms
12-10 14:09:28.182 13076-13271/ appname W/BiChannelGoogleApi: [FirebaseAuth: ] getGoogleApiForMethod() returned Gms
12-10 14:09:29.659 13076-13271/ appname W/BiChannelGoogleApi: [FirebaseAuth: ] getGoogleApiForMethod() returned Gms
사용자가 로그 아웃 한 다음 다시 로그인하면 문제가 해결됩니다. 사용자가 활성화되어 있으면 새로운 읽기/쓰기 작업은 진행되지만 이전 작업은 지속되거나 재 시도되지 않습니다.
내가 사용 관련 버전
는// Firebase
implementation "com.firebaseui:firebase-ui-auth:3.1.0"
implementation "com.google.firebase:firebase-database:11.6.2"
implementation "com.google.firebase:firebase-auth:11.6.2"
, 안드로이드 앱에서 MVP 구조 내에서 데이터베이스와 중포 기지 인증을 구현하기위한 최선의 방법에 어떤 도움과 팁을 주시면 감사 드리겠습니다
이다. 고맙습니다.
실패를 확인하고 예외 메시지를 기록하는'set()'또는'update()'호출에 리스너가 있습니까? 아니면 Firebase 콘솔 DB보기에서 변경이없는 경우에만 장애를 판단하고 있습니까? –