Как использовать response-native-otp-auto-verify для автоматического обнаружения OTP в React Native (Android)IOS

Программируем под IOS
Ответить
Anonymous
 Как использовать response-native-otp-auto-verify для автоматического обнаружения OTP в React Native (Android)

Сообщение Anonymous »

Вот сообщение, готовое к переполнению стека, которое вы можете опубликовать.

Я использую react-native-otp-auto-verify для автоматического определения OTP из SMS в моем приложении React Native. Ниже приведено полное руководство по настройке для Android с использованием официального API SMS Retriever.

Что такое response-native-otp-auto-verify?

Код: Выделить всё

react-native-otp-auto-verify
 — это библиотека React Native, которая обеспечивает автоматическое обнаружение OTP на Android с использованием официального API Google SMS Retriever.
Она: Шаг 1 — Установить

Код: Выделить всё

npm install react-native-otp-auto-verify
Для iOS:

Код: Выделить всё

cd ios && pod install
Шаг 2. Получите хэш приложения (очень важно)
Ваша серверная часть должна добавить хэш для конкретного приложения в конце OTP SMS.
Получите хэш внутри вашего приложения:

Код: Выделить всё

import { getHash } from 'react-native-otp-auto-verify';
import { useEffect } from 'react';

useEffect(() => {
getHash().then(hash => {
console.log('App Hash:', hash);
});
}, []);
Отправьте этот хэш своей серверной команде.

Шаг 3. Требуемый формат SMS
Ваше OTP SMS должно выглядеть следующим образом:

Код: Выделить всё

 Your verification code is 123456
FA+9qCX9VSu
⚠️ Без хэша автоматическое обнаружение НЕ будет работать.

Шаг 4. Использование Hook API (рекомендуется)

Код: Выделить всё

import React, { useEffect } from 'react';
import { Text } from 'react-native';
import { useOtpVerification } from 'react-native-otp-auto-verify';

export default function OtpScreen() {
const { otp, startListening, stopListening } =
useOtpVerification({ numberOfDigits: 6 });

useEffect(() => {
startListening();
return () => stopListening();
}, []);

return OTP: {otp};
}
При поступлении SMS:
  • OTP извлекается автоматически
  • обновления состояния
  • Вы можете автоматически отправить подтверждение
Шаг 5. Альтернативный императивный API

Код: Выделить всё

import {
startOtpListener,
removeListener,
} from 'react-native-otp-auto-verify';

useEffect(() => {
startOtpListener(message => {
const otp = message.match(/\d{6}/)?.[0];
console.log('OTP:', otp);
removeListener();
});

return () => removeListener();
}, []);
Примечание для iOS
iOS НЕ позволяет приложениям автоматически читать SMS.
Вместо этого используйте: Это включает предложение автозаполнения OTP с клавиатуры.

Код: Выделить всё

Feature               Android iOS
Automatic OTP detection ✅   ❌
SMS Permission Required ❌   ❌
Keyboard OTP Autofill   ❌   ✅
Эта настройка обеспечивает безопасный процесс автоматической проверки OTP без разрешения для Android с использованием официального механизма SMS Retriever.
https://www.npmjs.com/package/react-nat ... Tab=readme


Подробнее здесь: https://stackoverflow.com/questions/798 ... -react-nat
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «IOS»