Я реализовал следующий метод для входа в систему с помощью номера телефона. :
Код: Выделить всё
public async signInWithPhoneNumber(options: SignInWithPhoneNumberOptions,
loading: HTMLIonLoadingElement
): Promise {
try {
console.log("Attempting to sign in with phone number:", options.phoneNumber);
const user = await FirebaseAuthentication.signInWithPhoneNumber(options);
console.log('Sign-in successful:', user);
} catch (error) {
console.error('Error during phone number verification:', error);
} finally {
await loading.dismiss();
}
}
Я ожидаю, что вызов FirebaseAuthentication.signInWithPhoneNumber(options) вернет объект с информацией пользователя или идентификатором проверки, который я могу использовать для проверки кода SMS.
Фактическое поведение
При запуске этого кода на iOS устройстве, консоль Xcode регистрирует следующее:
Код: Выделить всё
⚡️ To Native -> FirebaseAuthentication signInWithPhoneNumber 110818811
⚡️ TO JS undefined
⚡️ [log] - Sign-in successful: undefined
Код: Выделить всё
TO JSДополнительные сведения
< em>Конфигурация Firebase:
- Аутентификация телефона включена в консоли Firebase.
- GoogleService- Файл Info.plist правильно настроен и синхронизирован
с проектом. - Тестовые номера телефонов настроены в Firebase так, чтобы избежать отправки реальных
SMS-сообщений.
- Ионное: 6.x
- Угловое: ^16.x
- @capacitor-firebase/ аутентификация: ^5.x
- Конденсатор: ^5.x
[*]Конфигурация Firebase правильная (за исключением APN, которые я
не настраивал, поскольку понимаю, что они не требуются для входа в систему с телефона).
[*]Номер телефона международный. формате.
[*]Плагины конденсаторов установлены и синхронизированы правильно.
Ключевые вопросы:
- Нужно ли настраивать APN-сертификаты для работы SignInWithPhoneNumber на iOS , даже если я использую только аутентификацию по телефону?
- Что может привести к тому, что SignInWithPhoneNumber вернет неопределенное значение?
Подробнее здесь: https://stackoverflow.com/questions/793 ... eturning-u
Мобильная версия