首页 > 技术文章 > iOS使用技能 - 短信,语言验证码的获取与验证小结

somethingWithiOS 2016-07-01 21:55 原文

最近有学习一个小技能,这里小结一下,分享给大家,互相交流。

首先是大体步骤:

  1. mob官网注册,然后添加短信验证的应用
  2. 使用cocoapods导入框架
Podfile文件:
platform :ios, "6.0"
target '短信验证'do
# Mob产品公共库
pod 'MOBFoundation_IDFA'
# SMSSDK必须
pod 'SMSSDK'
end
 

3.在AppDelegate注册应用AppKey

4.获取验证码

5.提交验证码

6.注意点:适配要记得开启https


1.在AppDelegate

 

//  注册AppKey

 [SMSSDK registerApp:@"14810905c09b0" withSecret:@"fbea3e77174d8c9da1d0839b1f0bdc82"];

 

如:

 

2.短信和语言各一个简单方法即可实现

/**
 *  短信验证码
 */
- (IBAction)messageVerify {

    //  验证电话号码是否合法
    NSString *phoneNumber = self.phoneNumber.text;
    if (![phoneNumber isPhone]) {
        NSLog(@"你输入电话号码不正确");
        return;
    }

    self.savePhoneNumber = phoneNumber;
    //  获取短信验证码
    [SMSSDK getVerificationCodeByMethod:SMSGetCodeMethodSMS phoneNumber:phoneNumber zone:@"86" customIdentifier:nil result:^(NSError *error) {
        if (error) {
            NSLog(@"获取验证码失败:%@",error);
        }else{
            NSLog(@"获取验证码成功");
        }
    }];

}
/**
 *  语言验证码
 */
- (IBAction)voiceVerify {
    //  验证电话号码是否合法
    NSString *phoneNumber = self.phoneNumber.text;
    if (![phoneNumber isPhone]) {
        NSLog(@"你输入电话号码不正确");
        return;
    }
    self.savePhoneNumber = phoneNumber;
    //  获取语音验证码
    [SMSSDK getVerificationCodeByMethod:SMSGetCodeMethodVoice phoneNumber:phoneNumber zone:@"86" customIdentifier:nil result:^(NSError *error) {
        if (error) {
            NSLog(@"获取验证码失败:%@",error);
        }else{
            NSLog(@"获取验证码成功");
        }
    }];
}

/**
 *  验证
 */
- (IBAction)verifyResult {
    //  验证验证码是否合法
    NSString *verifyCode   = self.verifyLabel.text;
    if (verifyCode.length != 4) {
        NSLog(@"验证输入错误");
        return;
    }
    //  提交验证码
    [SMSSDK commitVerificationCode:verifyCode phoneNumber:self.savePhoneNumber zone:@"86" result:^(NSError *error) {
        if (!error) {
            NSLog(@"验证成功");
        }else{
            NSLog(@"错误信息:%@",error);
        }
    }];
}

上例是使用mob默认的短信格式,也可以自定义,可根据自身情况来选择。

其他还有一些修改,大家可以阅读mob上的sdk文档来集成自己需要的形式。

 

 

推荐阅读