android_sms_retriever 1.2.3 android_sms_retriever: ^1.2.3 copied to clipboard
Flutter plugin for retrieving OTP code sent in sms automatically and without getting SMS permission in Android.
Android Sms Retriever #
Flutter plugin for retrieving OTP code sent in sms automatically and without getting SMS permission in Android. This package has support for Smart Lock credentials, you can use for storing user's phone number and retrieving whenever you want. Read more here
Example #
Getting Started #
Install
dependencies:
android_sms_retriever: ^1.2.3
Import
import 'package:android_sms_retriever/android_sms_retriever.dart';
App signature #
Use this function to get application signature. App signature should be placed at end of SMS so SmsRetriever API can verify SMS is sent from your server.
String appSignature = await AndroidSmsRetriever.getAppSignature();
Request phone number #
You can request android to open a dialog with user's phone numbers, then user can select one.
String? phoneNumber = await AndroidSmsRetriever.requestPhoneNumber();
Store phone number #
You can store user's phone number to use later, For example: When user uninstalls application and installs again. You should pass your application's website URL and phone number to this function.
await AndroidSmsRetriever.storePhoneNumber('https://arsam.me','09027777254');
Retrieve stored phone number #
To retrieve stored phone number use this function. You should pass your application's website URL to this function.
String? phoneNumber = await AndroidSmsRetriever.retrieveStoredPhoneNumber('https://arsam.me');
Delete stored phone number #
To delete stored phone number use this function. You should pass your application's website URL and phone number to this function.
await AndroidSmsRetriever.deleteStoredPhoneNumber('https://arsam.me','09027777254');
Start listening for SMS #
Use this function to start listening for an incoming SMS. When sms received message will be returned.
String? message = await AndroidSmsRetriever.startSmsListener();
Close receiver after getting SMS #
Stop listening for SMS. It's better to stop listener after getting message.
AndroidSmsRetriever.stopSmsListener();
Request one time SMS consent #
Using this function, when sms received android will ask user to let application use message and extract code, even if sms message does not contain application signature. You can pass sender phone number in order to detect messages sent from specific sender.
String? smsCode = await AndroidSmsRetriever.requestOneTimeConsentSms('+9850003001');
Note
SMS format should be like this :
Your example code is: 123456
appSignature