2

Firebase Hostingを使用してホストされているWebサイトにアクセスするWebViewを持つAndiodアプリケーションを作成しています。WebViewでユーザー認証が維持されない

電子メール/パスワードの資格情報を使用してWebサイトにサインインし、別のページに更新または移動すると、Firebaseは自分のログイン情報を失います。

私はfirebase.auth().setPersistence(firebase.auth.Auth.Persistence.LOCAL)を使用して、私の資格情報を維持するためにFirebaseを強制しようとしたが、それはWebViewのコンソールでこのエラーがスローされます。

Uncaught Error: The current environment does not support the specified persistence type.

側の注意点として、私は、YouTubeやGoogleのようなその他のサービス、にログインしようとしましたそれがブラウザキャッシュの問題であるかどうかを確認するために、ページをリフレッシュしてAndroidアプリをナビゲートまたは再オープンしても、セッションは正常に維持されました。

私は、エミュレータ(Android 8.0を実行中)と電話(Android 6.0)を使用してAndroidアプリもテストしました。

ここで何が起こっているのか誰かが知っていますか?

+0

あなたは)( 'firebase.authを使用しています。onAuthStateChanged'認証の状態を取得するには? – bojeil

+0

@bojeilはい私は – wm1sr

+0

webviewでウェブストレージを無効にしましたか? localStorageは有効ですか? – bojeil

答えて

4

Auth状態を保存するには、Firebase AuthがWebストレージ(localStorage/indexedDB)に依存するため、WebviewでDOMストレージを有効にする必要があります。

webview.getSettings().setDomStorageEnabled(true);

+1

ありがとう!私はこれを2回upvoteすることができたらいいと思う。 – Rbar

関連する問題