otp_autofill 0.0.1-dev.5 copy "otp_autofill: ^0.0.1-dev.5" to clipboard
otp_autofill: ^0.0.1-dev.5 copied to clipboard

outdated

Android implementation of OTP autofill with using User Consent API and Retriever API. Add possibility to receive OTP code from another input.

otp_autofill #

SurfGear

For sms autofill plugin use SMS User Consent API and SMS Retriever API on Android. IOS sms autofill built in TextField widget.

You could use autofill from another input by using OTPStrategy. (e.g. from push-notification)

For testing you could create TestStrategy.

iOS #

in iOS OTP autofill is built in TextField. Code from sms store for 3 minutes.

Rules for sms #

  1. Sms must contain the word code or it translation to ios supported localizations.
  2. Must be only one digit sequence in sms.

Testing #

iOS can receive number from any other number.

Android #

OTPInteractor.hint - show system dilog to select saved phone numbers (recommendation from google) OTPInteractor.getAppSignature - create hash-code of your application, that used in SMS Retriever API OTPInteractor.startListenUserConsent - BroadcastReceiver start listen for code from Google Services for 5 minutes. Above 5 minutes raise timeout exception. Using SMS User Consent API OTPInteractor.startListenRetriever - BroadcastReceiver start listen for code from Google Services for 5 minutes. Above 5 minutes raise timeout exception. Using SMS Retriever API OTPInteractor.stopListenForCode - use in dispose

Plugin receive full sms text, need parser for sms.

If you use SMS User Consent API then system ask for permission to reed incomming message.

  1. The message contains a 4-10 character alphanumeric string with at least one number.
  2. The message was sent by a phone number that's not in the user's contacts.
  3. If you specified the sender's phone number, the message was sent by that number.

Rules for sms. SMS Retriever API #

  1. Be no longer than 140 bytes
  2. Contain a one-time code that the client sends back to your server to complete the verification flow
  3. Include an 11-character hash string that identifies your app (documentation for server, for testing you can get in from OTPInteractor.getAppSignature)

Testing #

OTPInteractor.startListenForCode has senderPhone argument. Application start receiving code from this number.

Usage #

You could user OTPInteractor to interact with OTP.

For easy implementation you could use OTPTextEditController as a controller to your TextField.

OTPTextEditController.startListenUserConsent - use SMS User Consent API, and custom strategies. OTPTextEditController.startListenRetriever - use SMS Retriever API, and custom strategies. OTPTextEditController.startListenOnlyStrategies - listen only custom strategies. OTPTextEditController.stopListen - use in dispose.

244
likes
0
points
22.1k
downloads

Publisher

verified publishersurf.ru

Weekly Downloads

Android implementation of OTP autofill with using User Consent API and Retriever API. Add possibility to receive OTP code from another input.

License

unknown (license)

Dependencies

flutter

More

Packages that depend on otp_autofill