iOS UITextContentTypeOneTimeCode 无效问题
简而言之,短信内容格式有问题。
iOS在12后加了自动识别短信功能,简单方便。代码如下:
if (@available(iOS 12.0, *)) {
_tfCode.textContentType = UITextContentTypeOneTimeCode;
}
然后我加了代码测试发现,一直无法自动获取短信验证码,最后发现是短信内容问题。
原来的短信使用英文标点符号:
您好,您的验证码是2671,10分钟内有效,如非本人操作,请忽略!
这里验证码前后如果有英文符号,要改成中文的,或者换个格式。
修改后的短信:
您好,您的验证码是2671,10分钟内有效,如非本人操作,请忽略!
这样就可以识别了。
短信测试的方法
测试方法也简单,用系统的短信看下,如果验证码有添加下划线,可以点击复制,那代码中也就可以识别到。
END