iOS集成文档
友盟+短信验证码
概述
目前此SDK需使用xCode11才能支持。
目前SDK支持iOS8.0及更高版本。
官网下载SDK后进行解压,解压后包含三个文件是
a) iOS SDK开发接入文档
b) UMSMSDemo工程
c) UMSMS.framework
注:首选需要集成友盟基础组件,集成文档:https://developer.umeng.com/docs/119267/cate/119475
运行demo工程
解压后包含UMSMSDemo工程,您需要将bundleID,appkey,秘钥修改为您自己的。
开发环境搭建
1.添加主库
Targets->General->Linked Frameworks and Librarie中添加主库UMSMS.framework;

2.SDK方法说明
获取sdk版本号(getVersion)
/*** 获取当前SDK版本号* @return 字符串,sdk版本号*/+ (NSString *_Nonnull)getVersion;
初始化SDK(setSMSSDKInfo)
/*** 初始化SDK调用参数,app生命周期内调用一次* @param info app对应的秘钥* @param complete 结果异步回调*/+ (void)setSMSSDKInfo:(NSString * _Nonnull)info complete:(void(^_Nullable)(NSDictionary * _Nonnull resultDic))complete;
调用示例:
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {[UMConfigure initWithAppkey:@"appkey" channel:@"App Store"];[UMSMS setSMSSDKInfo:@"秘钥" complete:^(NSDictionary * _Nonnull resultDic) {}];// Override point for customization after application launch.return YES;}
获取验证码(getVerificationCodeWithPhoneNumber)
/*** 获取验证码* @param number 手机号* @param templateID 模板ID* @param complete 结果异步回调*/+ (void)getVerificationCodeWithPhoneNumber:(NSString * _Nonnull)number templateID:(NSString * _Nullable)templateID complete:(void(^_Nullable)(NSDictionary * _Nonnull resultDic))complete;
调用示例:
[UMSMS getVerificationCodeWithPhoneNumber:self.phoneNumber.text templateID:@"2" complete:^(NSDictionary * _Nonnull resultDic) {if ([resultDic[@"success"] boolValue]==true) {NSLog(@"获取成功");}
返回值success为true即为发送成功,具体可参看demo工程
提交验证码(getLoginNumberWithTimeout)
/*** 提交验证码* @param number 手机号* @param vCode 验证码* @param complete 结果异步回调*/+ (void)commitWithPhoneNumber:(NSString * _Nonnull)number vCode:(NSString * _Nonnull)vCode complete:(void(^_Nullable)(NSDictionary * _Nonnull resultDic))complete;
调用示例:
[UMSMS commitWithPhoneNumber:self.phoneNumber.text vCode:self.vCode.text complete:^(NSDictionary * _Nonnull resultDic) {if (![resultDic[@"data"] isKindOfClass:[NSNull class]] && [resultDic[@"data"][@"verifyStatus"] boolValue]==true) {[ProgressHUD showSuccess:@"验证成功"];}else{[ProgressHUD showError:@"验证失败"];}}];
返回值success为true 且 data中的verifyStatus为true 即为验证成功,具体可参看demo工程
返回码
| 返回码 | 说明 |
|---|---|
| -10001 | 手机号码不应为空 |
| -10002 | 短信模版id不应为空 |
| -10003 | 验证码不应为空 |
| -10004 | 请先集成UMCommon.framework,并初始化 |
| -10005 | 请先调用setSMSSDKInfo接口设置秘钥 |
| -10006 | Bundle Identifier不能为空 |
| -10007 | 初始化失败 |
| -10008 | 请检查网络 |
| -10009 | 手机号格式错误 |
| -3201 | 手机号码不应为空 |
| -3202 | 短信模版id不应为空 |
| -3203 | vcode不应为空 |
| -3204 | token不应为空 |
| -3301 | 参数填写错误,请检查appkey和模板id是否填写正确 |
| -3302 | 签名或模板校验错误,请检查签名、模板状态是否为审核通过 |
| -2201 | 系统异常 |
| -2202 | 请求超时 |
| -2258 | 触发设备访问额度限制,请不要频繁请求 |
| -2259 | 触发设备访问间隔限制,请不要频繁请求 |