Question: How do you work around the bug outlined below?
Overview: I have three (3) types of unique (non-anonymous) authentication available for my app.
- Email/Password
App Behavior (steps to reproduce error):
- In the initial sign in, no error is thrown.
- App saves the initial sign in method programmatically.
- Clear data of App from within Android Settings.
- Secondary sign in, the following errors (or none) are thrown.
- Clear data again of App from within Android Settings.
- Tertiary sign in, the following errors (or none) are thrown.
Cases:
- Google - Facebook: UserCollisionError
- Google - Email/Password: InvalidCredentialsError
- Facebook - Email/Password: InvalidCredentialsError
- Facebook - Google: NO ERROR
- Facebook - Google - Facebook: UserCollisionError
- Facebook - Google - Email/Password: InvalidCredentialsError
- Email/Password - Google: NO ERROR
- Email/Password - Google - Email/Password: InvalidCredentialsError
- Email/Password - Google - Facebook: UserCollisionError
- Email/Password - Facebook: UserCollisionError
Note: As for cases 7-10 with initial Email/Password sign, a user account needs to be created from within Firebase console prior to the initial sign in.
Google Sign In seems to overwrite Firebase Auth user account with corresponding email address.