Связь аккаунта с разными электронными письмами - PullRequest
0 голосов
/ 05 апреля 2020

Я использую Firebase Auth на iOS (Swift). В моем приложении есть только 2 способа создания учетной записи:

  1. Электронная почта (электронная почта / пароль)
  2. Вход через Apple

Вот пример, который я не уверен, что делать в отношении привязки аккаунта:

  1. Пользователь создает аккаунт с опцией # 1 (электронная почта) и регистрируется с jake@gmail.com
  2. Пользователь выходит из учетной записи и закрывает приложение
  3. Пользователь открывает приложение и вместо использования опции 1 (электронная почта) для входа в уже созданную учетную запись, он пытается войти с опцией # 2 (Войти через Apple). Однако его адрес электронной почты Apple ID jakeApple@gmail.com и не совпадает с jake@gmail.com

Примечание. Все это происходит на одном телефоне

Это создает 2 учетных записи в Firebase, потому что электронные письма разные. У меня 1 учетная запись на электронную почту включена в панели инструментов Firebase по умолчанию, и я хочу сохранить эту опцию, поскольку она рекомендуется. Есть ли способ связать эти 2 аккаунта вместе? Кроме того, они должны быть связаны друг с другом?

1 Ответ

0 голосов
/ 06 апреля 2020

Вы действительно не знаете, что это одни и те же пользователи, если их электронные письма различаются (любой может создать электронное письмо, похожее на другое). Поэтому вам не следует создавать функциональность, которая автоматически связывает двух пользователей.

При этом вы можете вручную использовать API linkWithCredential, чтобы связать учетные данные Apple с пользователем электронной почты / паролем, если пользователь уже вошли в систему, но я думаю, что вам не нужно этого делать, если только пользователь электронной почты / пароль не хочет этого сделать (с помощью какой-либо кнопки для привязки своей учетной записи Apple).

...