WebView上不会保留用户身份验证

时间:2017-10-10 23:08:12

标签: android firebase webview firebase-authentication firebase-hosting

我正在创建一个Android应用程序,其中包含一个WebView,可访问使用Firebase Hosting托管的网站。

如果我使用电子邮件/密码凭据登录网站,然后刷新或导航到其他网页,Firebase会丢失我的登录信息。

我尝试使用firebase.auth().setPersistence(firebase.auth.Auth.Persistence.LOCAL)强制Firebase保留我的凭据,但它会在WebView控制台中抛出此错误:

  

未捕获错误:当前环境不支持指定的持久性类型。

作为旁注,我尝试登录其他服务,例如YouTube和Google,看看它是否是浏览器缓存问题,但会话仍然正常,即使我刷新页面,导航或重新打开Android应用

我还使用模拟器(运行Android 8.0)和手机(Android 6.0)测试了Android应用。

有人知道这里发生了什么吗?

1 个答案:

答案 0 :(得分:6)

您需要在webview中启用DOM存储,因为Firebase Auth依赖于Web存储(localStorage / indexedDB)来存储Auth状态。

{{1}}