Как автоматически вставить однократный код, полученный в SMS, при вводе реагирующего текста - PullRequest
1 голос
/ 15 апреля 2020

Я использую Textinput из реактивной системы. Как можно автоматически вставить otp или код в поле ввода текста.

1 Ответ

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

Самый простой способ - использовать встроенные пакеты прослушивания SMS.

https://www.npmjs.com/package/react-native-android-sms-listener

https://www.npmjs.com/package/react-native-otp-verify

Если вы используете пакет response-native- android -SMS-listner, вы можете использовать следующий код:

let subscription = SmsListener.addListener(message => {
  let verificationCodeRegex = /Your verification code: ([\d]{6})/

  if (verificationCodeRegex.test(message.body)) {
    let verificationCode = message.body.match(verificationCodeRegex)[1]

    YourPhoneVerificationApi.verifyPhoneNumber(
      message.originatingAddress,
      verificationCode
    ).then(verifiedSuccessfully => {
      if (verifiedSuccessfully) {
        subscription.remove()
        return
      }

      if (__DEV__) {
        console.info(
          'Failed to verify phone `%s` using code `%s`',
          message.originatingAddress,
          verificationCode
        )
      }
    })
  }
})

Если вы используете response-native-otp-verify, вы можете выполнить следующее учебное пособие

https://tech.goibibo.com/building-otp-verification-component-in-react-native-with-auto-read-from-sms-2a9a400015b0

Надеюсь, это поможет

...