And*_*son 5 android google-api firebase google-oauth firebase-authentication
最近,我注意到 Firebase 数据库没有为我们的一些用户正确地将本地更改与我们的 Android 应用程序中的远程数据库同步。监视.info/connected
路径表明从未为这些用户正确建立连接,并且通过FirebaseAuth.addAuthStateListener
返回非空当前用户来侦听身份验证状态。
我已经调试了这个问题,FirebaseDatabase.setLogLevel(Logger.Level.DEBUG)
当应用程序处于活动状态时,这些消息似乎每隔一秒左右就会重复一次:
D PersistentConnection: pc_0 - Trying to fetch auth token
W BiChannelGoogleApi: [FirebaseAuth: ] getGoogleApiForMethod() returned Gms
D PersistentConnection: pc_0 - Error fetching token: An internal error has occurred. [ TOKEN_EXPIRED ]
D PersistentConnection: pc_0 - Scheduling connection attempt
D ConnectionRetryHelper: Scheduling retry in 767ms
Run Code Online (Sandbox Code Playgroud)
查看 Google API 控制台内部,我可以看到400 Bad Request
Android 应用程序使用的凭据的“令牌服务 API”有很多错误。API 方法是google.identity.securetoken.v1.SecureToken.GrantToken
. 这不是由我们的应用手动调用 - 我相信 Firebase Auth 在内部使用它来保持令牌最新。
在我看来,FirebaseAuth 库在尝试刷新过期的身份验证令牌时正在执行错误的请求。有没有人遇到过类似的问题?我很难找到此问题的根本原因,因为它无法立即重现(仅适用于使用 Google 和电子邮件提供商的某些用户)。我不确定是否可以通过某种方式挖掘令牌服务 API 日志以获取更详细的消息?使用 Firebase 身份验证(iOS 和 Web)的其他客户端正常工作,没有任何问题。
Bob*_*Bob 12
我有同样的错误;通过以下方式解决了它:
归档时间: |
|
查看次数: |
1017 次 |
最近记录: |