2016-06-15 8 views
0

이전 버전의 Firebase에서는 을 제어 할 수 있었고 인증 후 토큰은으로 유효합니다. 새 버전에서는이 컨트롤이 없습니다. 문서에서 무슨 일이 일어나는지 명확한 설명을 찾을 수 없습니다.Firebase 인증에서 토큰의 유효성 검사 기간을 제어하는 ​​방법은 무엇입니까?

전자 메일 및 암호 인증을 사용하고 있습니다. sdks 9.0.2에서는 더 이상 문제가없는 것처럼 보입니다. 하지만 내 사용자가 얼마나 오래 인증 될지 잘 모르겠습니다.. 나는 사용자를받을 수 있습니다 위의 리스너에

mAuth.signInWithEmailAndPassword(email, pwd) ... 

:

public FirebaseManager() { 
    // allow offline capability 
    FirebaseDatabase.getInstance().setPersistenceEnabled(true); 
    mAuth = FirebaseAuth.getInstance(); 

    FirebaseAuth.AuthStateListener authStateListener = firebaseAuth -> { 
     FirebaseUser user = firebaseAuth.getCurrentUser(); 
     Log.v(TAG, "authStateListener, user: " + (user == null ? "is null" : user.getUid())); 
    }; 
    mAuth.addAuthStateListener(authStateListener); 
} 

이 내가 사용하는 로그인 한 경우 :

나는 상태를 수신 싱글 FirebaseManager 있습니다. 다음에 앱을 열면 사용자는 계속 로그인되며 여전히 청취자에게 사용자가 표시됩니다.

얼마나 오래 동안입니까? firebase가 그것을 어떻게 처리합니까? 다시 로그인해야 할 때까지 얼마나 걸립니까? "user == null"을 수신 할 때마다 동일한 기능으로 다시 로그인해야합니까?

사용자에게 == null을 제공한다는 사실은 많은 정보를 제공하지 않으며 한 사용자가 앱을 장기간 사용하기 위해 구현하는 방법을 잘 모르며 사용자 세션을 유효하게 유지해야합니다. 다시 로그인 할 필요가 없습니다.

답변

0

사용자가 이메일/비밀번호 인증을 사용하여 로그인 한 경우 사용자가 계정을 로그 아웃하거나 로그 아웃 할 때까지 계속 로그인 상태를 유지합니다.

로그 아웃하려면이 항목을 사용하십시오. mAuth.signOut();

+0

문서에 언급 된 내용을 보았습니까? 아니면 가정입니까? 나는 의사가 지금까지 말하고있는 것을 찾을 수 없다. 내 애플 리케이션 생산에 가서, 그리고 내가 확신해야합니다. – drevlav

+0

나는 또한 firebase n 고도를 사용하는 프로젝트에서 일년 내내 말할 수있다. 문제가 있다면 알려 주어야한다. –

+0

새로운 sdks가 상당히 시장에 나와있다. 최근에는 아무도 그것에 대한 경험이 많지 않습니다. 나는 그것을 시도 할 것이지만, 나는 그 문제에 대한 문서의 부족에 관해 아직도 혼란 스럽다. – drevlav