sms_consent_for_otp_autofill 1.0.3
sms_consent_for_otp_autofill: ^1.0.3 copied to clipboard
Flutter plugin for otp auto fill, used SMS Consent API to retrieve the otp of a single SMS message if the user gives permission.
sms_consent_for_otp_autofill #
Flutter plugin for otp auto fill, used SMS Consent API to retrieve the otp of a single SMS message if the user gives permission.No permission required in manifest. For Android, that's where this package is useful. No need for iOS, using Android's SMS User Consent API
Screenshots #
Steps to use #
1] Create an instance, optionally supply phone number listener and sms listener
import 'package:sms_consent_for_otp_autofill/sms_consent_for_otp_autofill.dart';
SmsConsentForOtpAutofill smsConsentForOtpAutoFill = SmsConsentForOtpAutofill(
// optionally, do something when user selects a number.
// You can even add/update this listener later on by simply
// calling smsUserConsent.updatePhoneNumberListener(updatedListener)
phoneNumberListener: (number) {},
// optionally, do something when user receives sms.
// You can even add/update this listener later on by simply
// calling smsUserConsent.updateSmsListener(updatedListener)
smsListener: (otpcode) {}
);
2a] OPTIONAL : Request user's phone number
smsConsentForOtpAutoFill.requestPhoneNumber();
Once the user selects a phone number, it can be accessed as
smsConsentForOtpAutoFill.selectedPhoneNumber;
2b] OPTIONAL : Request to receive SMS
smsConsentForOtpAutoFill.requestSms();
or you can specify the phone number you wish to capture the SMS from
smsConsentForOtpAutoFill.requestSms(senderPhoneNumber: sender_number);
Once the user receives a SMS and the user taps Allow, it can be accessed as
smsConsentForOtpAutoFill.receivedSms;
3] Finally, dispose the instance
smsConsentForOtpAutoFill.dispose();
Note #
As per the SMS User Consent API, otp will be received by the plugin only if it meets these criteria:
- The message contains 6-10 numbers.
- The message was sent by a phone number that's not in the user's contacts.
- If you specified the sender's phone number, the message was sent by that number.