2017-01-12 12 views
0

私は、電子メールベースの認証を使用してFirebaseデータベースとストレージにアクセスするアプリを持っています。私のアプリを使っているすべてのユーザーに単一の電子メールID /パスワードを使用することは可能ですか?電子メールIDとパスワードは、onCreateから呼び出される以下のメソッドでharcodedされます。これは、1つのデバイスでテストしている間は正常に動作します。私は認証の問題を見てきましたが、異なるAPIバージョンの異なるAndroidデバイスから試してみると一貫性はありません。私はただ一つの電子メールID/passwdを使用して異なるデバイスからアプリケーション/データベースにアクセスすることに何らかの制限がある場合は除外したいと思っていましたか?単一のメールIDを使用するすべてのアプリユーザーのAndroid Firebase認証

mAuth.signInWithEmailAndPassword("email ID", "password") 
      .addOnCompleteListener(this, new OnCompleteListener<AuthResult>() { 
       @Override 
    public void onComplete(@NonNull Task<AuthResult> task)  { 
    System.out.println("AUTH signInWithEmail:onComplete:" + task.isSuccessful()); 

    if (!task.isSuccessful()) { 
    System.out.println("AUTH signInWithEmail:failed" + task.getException()); 
    } 
    } 
}); 
+0

達成しようとしているものは何ですか? Firebase上のリソースにアクセスするためだけに、ユーザがアカウントを作成したり、ログオンしたりするようにしますか? – hotrod

+0

私は自分のデータベースをfirebaseでホストしています。ユーザーはデータにアクセスする必要があります。私はユーザーアカウントを作成する必要はありません。 – dacscan3669

+0

私は1分で答えを書くつもりです。 – hotrod

答えて

2

ユーザID /パスワードをハードコードする代わりに、 Firebaseの匿名アカウントをお勧めします。将来、Gmail、Facebook、Twitterなどの他のAuthプロバイダのサポートを追加するとき。等;匿名アカウントとサインインクレデンシャルをリンクすることができます。

それは

あなたは一時的な を作成して使用することFirebase認証を使用することができます
https://firebase.google.com/docs/auth/android/anonymous-auth

、以下の匿名アカウントの詳細を参照してください永久アカウントに匿名アカウントを変換するために、超簡単ですFirebaseで認証するための匿名アカウントこれらの暫定的な 匿名アカウントを使用すると、セキュリティールールで保護されたデータを使用して、アプリまでの にまだ署名していないユーザーに対応できます。 匿名ユーザーがアプリケーションにサインアップすることを決定した場合は、 サインイン資格情報を匿名アカウントにリンクし、 が将来のセッションで保護されたデータを処理できるようにすることができます。

mAuth.signInAnonymously() 
     .addOnCompleteListener(this, new OnCompleteListener<AuthResult>() { 
      @Override 
      public void onComplete(@NonNull Task<AuthResult> task) { 
       Log.d(TAG, "signInAnonymously:onComplete:" + task.isSuccessful()); 

       // If sign in fails, display a message to the user. If sign in succeeds 
       // the auth state listener will be notified and logic to handle the 
       // signed in user can be handled in the listener. 
       if (!task.isSuccessful()) { 
        Log.w(TAG, "signInAnonymously", task.getException()); 
        Toast.makeText(AnonymousAuthActivity.this, "Authentication failed.", 
          Toast.LENGTH_SHORT).show(); 
       } 

       // ... 
      } 
     }); 

役に立てば幸い!

関連する問題