Autofill OTP to the TextField when I receive messa

2020-03-13 06:02发布

问题:

While registering from my app I was sending OTP to the registered mobile number I want to retrieve that OTP in my app without opening SMS app...When the user received OTP message I need to display that OTP here ...How can I achieve this in iOS? I also have user Phone number with me.

On search, I have found this but I am not clear how to initiate this. Can anyone help me from this?

回答1:

You cannot access messages on ios and hence you cannot autofill the OTP in ios apps by reading sms.

The answers in the link that you have posted do not read the sms messages. They just create a custom url scheme and the otp is filled in when the user clicks the custom url in the sms.



回答2:

UPDATE

From iOS 12 Apple will allow the support to read One Time Code(OTP - One Time Password) which you will get in the iPhone device.

iOS supports Password AutoFill on UITextField, UITextView, and any custom view that adopts the UITextInput protocol. System keyboard set the textContentType on it to .oneTimeCode

1) Using Code

singleFactorCodeTextField.textContentType = .oneTimeCode

2) Using Storyboard/XIB

Select UITextField/UITextView in storyboard/XIB click Click on Attribute inspector. Go to text input trait, click to Content type and select one time code and done.

The operating system will detect verification codes from Messages automatically with this UITextContentType set.

Check out the official documentation for Enabling Password AutoFill on a Text Input View