Android 多次调用 firebase 身份验证状态侦听器
Android firebase auth state listener called multiple times
我正在使用 Firebase android sdk v.9.0.2,目前无法通过注册。我正在添加一个身份验证状态侦听器并在成功注册后将其删除。然而它被多次调用。这就是我在日志中得到的内容:
D/FirebaseAuth: Notifying listeners about a sign-out event.
D/FirebaseApp: Notifying auth state listeners.
D/FirebaseApp: Notified 0 auth state listeners.
D/ActivityRegister: auth listener called
D/FirebaseAuth: Notifying listeners about user ( bwVX8jBbZvYcIj28hYsGZCcbzxi1 ).
D/FirebaseApp: Notifying auth state listeners.
D/FirebaseApp: Notified 0 auth state listeners.
D/ActivityRegister: auth listener called
D/FirebaseAuth: Notifying listeners about user ( bwVX8jBbZvYcIj28hYsGZCcbzxi1 ).
D/FirebaseApp: Notifying auth state listeners.
D/FirebaseApp: Notified 1 auth state listeners.
"D/ActivityRegister: auth listener called" 日志在侦听器本身内。可以看到,当 Firebase 通知 0 个监听器时,它实际上被调用了。当它显示 1 个听众时,听众根本不会被调用。
有什么解决方法吗?
预计不会修复。那个封闭的问题。
https://github.com/firebase/quickstart-android/issues/80
您可以在此处找到何时触发此方法:
Firebase Reference - AuthStateListener
我用 switch
处理这个函数触发器,只使用 "Login_Attempt" 和 "Register_Attempt"(发送验证电子邮件)忽略其余案例。只需创建一个 String
变量(即当用户点击 Sign_In 按钮时,将其设置为 "Login_Attempt")
BR
我正在使用 Firebase android sdk v.9.0.2,目前无法通过注册。我正在添加一个身份验证状态侦听器并在成功注册后将其删除。然而它被多次调用。这就是我在日志中得到的内容:
D/FirebaseAuth: Notifying listeners about a sign-out event.
D/FirebaseApp: Notifying auth state listeners.
D/FirebaseApp: Notified 0 auth state listeners.
D/ActivityRegister: auth listener called
D/FirebaseAuth: Notifying listeners about user ( bwVX8jBbZvYcIj28hYsGZCcbzxi1 ).
D/FirebaseApp: Notifying auth state listeners.
D/FirebaseApp: Notified 0 auth state listeners.
D/ActivityRegister: auth listener called
D/FirebaseAuth: Notifying listeners about user ( bwVX8jBbZvYcIj28hYsGZCcbzxi1 ).
D/FirebaseApp: Notifying auth state listeners.
D/FirebaseApp: Notified 1 auth state listeners.
"D/ActivityRegister: auth listener called" 日志在侦听器本身内。可以看到,当 Firebase 通知 0 个监听器时,它实际上被调用了。当它显示 1 个听众时,听众根本不会被调用。 有什么解决方法吗?
预计不会修复。那个封闭的问题。 https://github.com/firebase/quickstart-android/issues/80
您可以在此处找到何时触发此方法:
Firebase Reference - AuthStateListener
我用 switch
处理这个函数触发器,只使用 "Login_Attempt" 和 "Register_Attempt"(发送验证电子邮件)忽略其余案例。只需创建一个 String
变量(即当用户点击 Sign_In 按钮时,将其设置为 "Login_Attempt")
BR