私は、認証オプションを提供するブラウザーで動作するSPAを構築しました。私はgoogle signinをクリックし、認証トークンfirebase authはAndroidデスクトップにインストールされたPWAで動作しません
これで、PWAを切り替えて通常どおりに使用できます。しかし、私がログアウトすると、Google認証を使って再びアプリケーションにログインすることはできません.AppleまたはChromeでGoogle Signinのポップアップを実行させても、確認は一切なくなり、クラッシュするようです。
この問題はGoogleログインの追加タブの読み込みと関係があります。画面上のダイアログによれば、AndroidはこのタブをPWAまたはChromeで開くかどうかを尋ねます。どんなオプションを選んでも、フローは完了しません(そして、切断のために、私はdevtoolsで有用なものを見ることができません)。
動作するように見える唯一の流れは、クロムのログインを継続し、完了したときだけAppバージョンに切り替えることです。それは私にとってはStackOverflowで書いても大丈夫ですが、私のユーザにとっては非常に複雑です。
この状況のデバッグを開始するにはどうすればいいですか: - firebase authをPWAから実行できるようにする必要があります。そして/または - ユーザーがブラウザにログインした後、ホーム画面に追加するためにAndroidのポップアップが遅れることがありますか?
これはgooglesignin関数です。通常、コード内でonAuthStateメッセージを待つため、必要なすべての情報が含まれているため、何もしません。 @jasanパー
function signinGoogle() {
var provider = new firebase.auth.GoogleAuthProvider();
firebase.auth().signInWithPopup(provider).then(function(result) {
// This gives you a Google Access Token. You can use it to access the Google API.
var token = result.credential.accessToken;
// The signed-in user info.
var user = result.user;
// ...
}).catch(function(error) {
// Handle Errors here.
var errorCode = error.code;
var errorMessage = error.message;
// The email of the user's account used.
var email = error.email;
// The firebase.auth.AuthCredential type that was used.
var credential = error.credential;
// ...
});
}
をPWAは、たくさんのことを意味することができます。その詳細をご記入ください。 signInWithRedirectを使用してみてください。signInWithPopupには、多くのPWA環境/フレームワークで問題があります。 – bojeil
@ simon-hこの問題を解決しましたか?私は同じ正確な問題を抱えていると信じています。私もあなたの質問を最初に見たことがなく、https://stackoverflow.com/questions/47122645/でも投稿しました。 – jasan