2017-12-14 9 views
4

Androidアプリ内では、匿名ユーザーを作成し、後でユーザーがサインインすることを決定すると、このユーザーのデータをGoogle/Facebook認証アカウントに移行します。updateProfile()メソッドを呼び出した後のFirebaseユーザーはもはや匿名ではありません

これはFirebaseAuth updateProfile()メソッドを使用するまでうまくいきました。その後、isAnonymous()メソッドを呼び出すと、ユーザはもはや匿名ではなくなりました。 Firebase APIドキュメントから

- https://developers.google.com/android/reference/com/google/firebase/auth/FirebaseUser.html#isAnonymous()

isAnonymous():ユーザーが匿名の場合

trueを返します。つまり、ユーザアカウントはsignInAnonymously()で作成された で、linkWithCredential(AuthCredential)を持つ別の アカウントにリンクされていませんでした。

FirebaseUser updateProfile()メソッド:

FirebaseAuth.getInstance().currentUser?.updateProfile(
       UserProfileChangeRequest.Builder() 
       .setDisplayName("Anonymous User") 
       .build()) 

後のアプリで、私は、匿名ユーザーの表示名を確認することができますし、それをデータベースに書き込むように、上記のメソッドが呼び出されるなど

linkWithCredential()が呼び出されるか、ユーザーが認証プロバイダメソッドでサインインするような段階になるまで、APIドキュメントによると、ユーザーは匿名とみなされます。そのため、updateProfile( )メソッドを使用すると、匿名ユーザーはもはや匿名になりませんか?ここ

+1

* firebaser here *ユーザーの表示名を設定するだけで、匿名状態を変更しないでください。これはバグかもしれません。私たちは、どこから来たのかを知るために掘り下げています。 –

+0

フランク!助けてうれし!バグをチェックする時間をとってくれてありがとう。 – YodaScholtz

答えて

4

firebaser

これはFirebaseのAndroid SDKのバグです。 I/O 2016を中心にバージョン9.0がリリースされて以来、存在しています。私たちはそれについて知っているので、今後のバージョンで修正される予定です(まだどのバージョンがリリースされるかわかりませんが)。

関連する問題