我希望我的应用程序的用户能够在其运行时取消Firebase登录过程。但是我在Firebase SDK中没有看到直接的处理程序。Sign-In方法返回Task<AuthResult>,这是不可取消的。我可以用来取消的最佳方法是什么?有没有比拟订额外的可取消异步任务更好的方法?
我的代码与Firebase指南中的代码完全相同。
public class LoginActivity extends AppCompatActivity{
private FirebaseAuth mFirebaseAuth;
private FirebaseAuth.AuthStateListener mFirebaseAuthListener;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(...);
mFirebaseAuth = FirebaseAuth.getInstance();
mFirebaseAuthListener = new FirebaseAuth.AuthStateListener() {
@Override
public void onAuthStateChanged(@NonNull FirebaseAuth firebaseAuth) {
FirebaseUser user = firebaseAuth.getCurrentUser();
if (user != null) {
// User is signed in
onSignIn();
} else {
// User is signed out
onSignOut();
}
// ...
}
};
}
private void signIn(String email, String password){
mFirebaseAuth
.signInWithEmailAndPassword(email, password) // returns …Run Code Online (Sandbox Code Playgroud)