2017-10-13 16 views
1

ReactネイティブアプリケーションでFirebase email + pwサインインを使用していますが、アプリケーションを閉じて再度開いてもログインが維持されないようです。私はドキュメントでデフォルトが持続することを読んでいるので、なぜそれがそのように動作していないのか分かりません。Firebase Auth Persistance in Reactネイティブ

私はcomponentWillMountで次のように使用してい

this.state.dbh.auth().onAuthStateChanged(function(user) { 
     if (user) { 
      this.state = { 
       user: user 
      } 
     } 

私も開発に万博を使用している - これは、ログインを永続化に影響を与えるのでしょうか?

+0

私は同じ問題があります。私は 'setPersistence'を試みましたが、Firebase SDKは' firebase.auth.Auth.Persistence.NONE'だけを受け入れます。そうでなければエラーを返します。 '{code:" auth/unsupported-persistence-type "、message:"現在の環境は指定された永続性タイプ。 "}'。 – phusick

+0

上記はExpoとvanilla反応ネイティブアプリの両方に適用されます。したがって、万博は起こりそうもない。 – phusick

答えて

3

これは、hereと記載されているように、Firebase v4.5.1で導入された回帰です。

ソリューション:npm start -- --reset-cache

編集とFirebaseのv4.5.0

  • 再起動エキスポへ

    1. ダウングレード:問題はFirebase v4.5.2に固定されている

      1. Firebase v4.5.2へのアップグレード
      2. 変更Firebase輸入

        // from 
        import * as firebase from 'firebase/app'; 
        import 'firebase/auth'; 
        
        // to 
        import firebase from 'firebase'; 
        

      としてはhereを説明しました。

  • +1

    ありがとう!私はまた、ログイン/サインインメソッドを次のようにラップしました: firebase.auth()。setPersistence(firebase.auth.Auth.Persistence.LOCAL).then(()=> {// Do login/sign in} – McD

    関連する問題