我正在开发一款互联网交易应用程序,其移动端和 iPhone 应用程序已经推出。随着市场趋势的变化,我们正在考虑添加双因素认证功能。为此,我们将会向用户注册的手机号码发送一次性密码作为短信。
有没有方法可以让 iPhone 应用程序自动从用户的消息框中填充 OTP?我应该使用什么算法来使我的应用读取用户的消息框?
提前感谢 :)
有没有方法可以让 iPhone 应用程序自动从用户的消息框中填充 OTP?我应该使用什么算法来使我的应用读取用户的消息框?
提前感谢 :)
简单明了的答案是不行
由于iOS中的应用程序是沙盒化
的,这意味着你不能从用户的手机外部读取任何内容,因此目前无法以编程方式读取短信。
myApp://register/<OTP>
的操作,然后提取该网址中的 OTP 并使用它。只需在短信中使用该网址,iOS 将完成其余工作。- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation
方法中解析应用网址。-(BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation
{
if (!url) {
UIApplication * yourapplication =[UIApplication sharedApplication];
NSString *outputpath =@"appname://data/";
NSURL *url =[NSURL URLWithString:outputpath];
[yourapplication openURL:url];
return NO;
}
NSUserDefaults *defaultString =[NSUserDefaults standardUserDefaults];
NSString * commonString =[url absoluteString];
if (commonString.length<=15) {
//
}
else
{
[defaultString setObject:commonString forKey:@"urlString"];
}
//send info to the screen you need and can navigate
return YES;
}