web-dev-qa-db-fra.com

Lire OTP de SMS Flutter

Je sais sur le paquet flutter_sms utilisé pour la lecture, l'écriture et l'envoi de SMS.

Mais comme je peux le constater, il demandera à l'utilisateur Send_SMS autorisation également qui n'est pas nécessaire et Google ne permet pas de demander cette autorisation si votre application ne dépend pas uniquement de cette fonctionnalité.

Quelqu'un peut-il m'aider à lire OTP de SMS avec flotter?

Ou peut vous aider à écrire de manière native la fonctionnalité pour les deux IOS et Android et l'intégrant à flotter.

9
CodeGeek

J'ai utilisé ce plugin pour lire OTP de SMS automatiquement

Découvrez ce plugin. https://pub.dev/packages/sms_otp_auto_verify

Vous avez d'abord inclure SMS_OTP_AUTO_VERIFY: ^ 1.2.2 dans PUBSPEC.YAML

Aucun besoin d'une autorisation Ajouter dans le fichier manifeste

Ici, obtenez le code de signature (en appelant _getappsignature) d'abord, ce qui est nécessaire pour serveur pour inclure le code dans votre SMS FORMAT (SMS entrant), par exemple:

<#> 12345 Votre OTP doit-il vous connecter à votre nom d'application. C'est valable 30 minutes. Ne partagez-le avec personne. xyzabcd2efg

  ///Controller
  TextEditingController textController;

      @override
      void initState() {
        super.initState();
        /// State initialization code here..
     textController = TextEditingController();
        _getAppSignature();
        _startListeningSms();
      }

     @override
      void dispose() {
        super.dispose();
        ///stopListening
        SmsRetrieved.stopListening();
      }

 /// Get signature code
  _getAppSignature() async {
    String signature = await SmsRetrieved.getAppSignature();
    print("App Hash Key:  $signature");
  }

///Here ListeningSms
_startListeningSms() async {
    String otp = await SmsRetrieved.startListeningSms();
    if (otp.isNotEmpty || otp != null) {
      textController.text= otp.split(" ")[1];
    }
  }
0
Abhijit Rajmane