В моем проекте firebase у меня есть 2 приложения. Один для пользователя и один для водителя. Я использую аутентификацию по телефону / sms + адрес электронной почты и пароль для регистрации пользователя.
Он работает нормально, если пользователь использует другой телефон / номер телефона для регистрации в двух разных приложениях.
Однако, когда я регистрируюсь с использованием одного и того же телефона / номера телефона в обоих приложениях (в случае, когда я могу быть пользователем, а также водителем), он выдает мне эту ошибку:
Signup error: Error Domain=FIRAuthErrorDomain Code=17015 "[ERROR_PROVIDER_ALREADY_LINKED] - User can only be linked to one identity for the given provider." UserInfo = {NSLocalizedDescription=[ERROR_PROVIDER_ALREADY_LINKED] - User can only be linked to one identity for the given provider., error_name=ERROR_PROVIDER_ALREADY_LINKED}





Это потому, что аутентификация по телефону позволяет только один сеанс для каждого пользователя. Вы не можете войти в систему на 2 устройствах одновременно из соображений безопасности.
Если вы хотите разрешить своим пользователям входить в оба приложения одновременно, вам следует подумать об использовании другого поставщика аутентификации. Может быть, электронная почта / пароль.
В одном приложении, в которое одновременно может войти только один пользователь. Но если это отдельные приложения, это должно быть возможно.
ERROR_PROVIDER_ALREADY_LINKED выдается, когда вы можете попытаться связать учетные данные с пользователем Firebase, когда у этого пользователя уже есть учетные данные, связанные с этим типом провайдера.
Я предполагаю, что в вашей ситуации у пользователя уже есть номер телефона, и вы пытаетесь связать другие учетные данные телефона с тем же пользователем.
Да ... пользователь сначала регистрируется в "пользовательском приложении", используя номер телефона (# 1) и адрес электронной почты + пароль (# 1). Затем он решил, что он тоже хочет стать водителем, загрузив «приложение для водителя», используя номер телефона (№1) и адрес электронной почты + пароль (№1). Оба приложения находятся на одном телефоне. Как учесть этот сценарий? Итак, прежде чем связывать адрес электронной почты + пароль с телефоном, нам нужно проверить, является ли текущий номер телефона ссылкой на адрес электронной почты и пароль?
Я использую 1 устройство с 2 приложениями и 1 номером телефона. Значит, телефон не может быть пользователем и водителем?