web-dev-qa-db-fra.com

Vérification automatique d'OTP sous IOS?

Existe-t-il un moyen d'accéder aux données de la boîte de réception de l'iPhone (SMS) vers l'application ios pour effectuer une vérification automatique du protocole OTP comme celle d'Android? Je serai reconnaissant pour votre aide.

13
Rinshad Kammath

Dans iOS 12, Apple a introduit une fonctionnalité appelée Security Code AutoFill.

Pour l'utiliser dans votre application, il vous suffit de définir la propriété UITextField de la vue d'entrée textContentType de oneTimeCode

otpTextField.textContentType = .oneTimeCode

NOTE: le code de sécurité La saisie automatique ne fonctionne qu'avec le clavier système, mais pas avec le clavier personnalisé.

Vidéo WWDC

Lorsque vous obtiendrez OTP, cela ressemblera à ceci:

 enter image description here

11
iVarun

METTRE À JOUR

Ceci est maintenant possible dans iOS 12 avec Security Code Autofill

Apple l'utilise dans la vérification de la carte de paiement Apple depuis iOS 11

 enter image description here

5
Ted

METTRE À JOUR

Depuis iOS 12, Apple prend en charge le remplissage automatique du mot de passe sur UITextField, UITextView et toute vue personnalisée qui adopte le protocole UITextInput. Le clavier système définit le textContentType sur .oneTimeCode

1) Utilisation du code

singleFactorCodeTextField.textContentType = .oneTimeCode

2) Utilisation de Storyboard/XIB

Sélectionnez UITextFieldUITextView dans storyboard/XIB. Cliquez sur Attribute inspecteur. Accédez au trait de saisie de texte, cliquez sur Type de contenu et sélectionnez un code de temps et fait.

Le système d'exploitation détectera automatiquement les codes de vérification de Messages avec cet ensemble UITextContentType.

Attention

Si vous utilisez une vue d'entrée personnalisée pour un champ de texte de saisie du code de sécurité, iOS ne peut pas afficher l'interface utilisateur AutoFill nécessaire.

 WWDC 2018 iPhoneX Device

Pour plus d'informations, vous pouvez le vérifier sur le développeur Apple _/oneTimeCode

Et passez également en revue WWDC 2018 Session 204 - Mots de passe forts automatiques et saisie automatique du code de sécurité et passez à 24:28 pour pré-remplir automatiquement le mot de passe à usage personnel.

5
Ramkrishna Sharma

Dans Xamarin iOS, pour> = iOS 12:

Tout d’abord, il est nécessaire que SMS ait le mot clé "code" ou "mot de passe" dans son message et que n’utilise pas d’espace après le code. si vous avez reçu le SMS et que vous avez le bouton "Copier le code", cela fonctionnera 

 enter image description here

Ensuite, vous devez placer ceci:

_txtField = new UITextField()
{
   UserInteractionEnabled = true,
};
if (UIDevice.CurrentDevice.CheckSystemVersion(12, 0))
{
  _txtField.TextContentType = UITextContentType.OneTimeCode;          
}
_txtFieldDelegate = new UITextFieldDelegate();
_txtField.Delegate = _txtFieldDelegate;
_txtField.BecomeFirstResponder();

REMARQUE: la saisie automatique du code de sécurité ne fonctionne qu'avec le clavier système (non personnalisé).

4
El0din

vous pouvez facilement définir cela dans Storyboard

 Click on Attribute inspector. Go to text input trait, click on Content type and select one time code

2
king_T

Vous pouvez obtenir OTP à partir de votre message.

otptextField.textContentType = .oneTimeCode

Pouvez s'il vous plaît obtenir le projet de son lien.

https://github.com/karthickkck315/Automatic-OTP

0
Karthickkck