文档章节

聚合数据短息验证码iOS SDK 演示示例

王航-聚合数据
 王航-聚合数据
发布于 2014/10/10 09:31
字数 808
阅读 21
收藏 0

第一步 获取短信SDK

在http://www.juhe.cn/docs/sdk/id/67下载最新版本的SDK,下载回来后解压,可以看到下面的文件结构:


其中SMSSDK.framework 为依赖库文件 SMSSDKDemo 为示例demo ,其中保存了短信SDK的演示项目代码。


第二步 导入聚合数据免费短信验证码SDK

短信SDK 使用如下方式完成集成。具体步骤如下: 将SMSSDK.framework 文件直接拖入项目中

 


第三步 添加SDK依赖库文件

 

第四步 添加代码

1 在appDelegate 添加 #import <SMSSDK/SMS_SDK.h>

2 在- (BOOL)application:(UIApplication *)applicationdidFinishLaunchingWithOptions:(NSDictionary *)launchOptions 添加//初始化短信SDK

demo并未提供短信SDK key 请用户到 http://www.juhe.cn 这里申请注意:是在申请数据 –>聚合SDK - > 免费短信验证码SDK中申请


 

 

[SMSSDKinitSMSSDK:@"短信验证码Key"];


第五步 添加UI事件响应 弹出注册界面和通讯录好友界面

1 弹出注册页面

-(IBAction)registerUser:(id)sender{

   RegViewController* reg=[[RegViewControlleralloc] init];    [self presentViewController:reganimated:YES completion:^{           }];   

}

2 弹出通讯录好友界面

-(IBAction)getAddressBookFriends:(id)sender{

      SectionsFriendsViewController* friends=[[SectionsFriendsViewControlleralloc]init];

    _friendsController=friends;

   

    [_friendsControllersetMyBlock:_friendsBlock];

   

    [SMSMBProgressHUDshowMessag:@"正在加载中..." toView:self.view];

   

    [SMSSDKgetAppContactFriends:falseSuccess:^(id responseObject) {

        NSNumber *resultCode =[responseObjectobjectForKey:@"error_code"];

        int resCode = [resultCodeintValue];

 

        if (resCode ==SMSResponseStateSuccess) {

            NSMutableArray *array = [[NSMutableArrayalloc]init];

            NSArray *result = [responseObjectobjectForKey:@"result"];

           

            for (NSDictionary *attributesin result) {

                SMSAddressBook *bookFriend = [[SMSAddressBookalloc]init];

                bookFriend.nickname = [attributesvalueForKeyPath:@"disPlayName"];

                bookFriend.phones = [attributesvalueForKeyPath:@"phoneNumber"];

               

                NSLog(@"%@:%@", bookFriend.nickname, bookFriend.phones);

                [array addObject:bookFriend];

            }

           

            [_friendsControllersetMyData:array];

            [self.navigationControllerpushViewController:friendsanimated:YES];

        } elseif (resCode ==SMSResponseStateFail) {

 

        }

    } Failure:^(NSError *error) {

        NSLog(@"网络出错!");

    }];

}

附录: UI介绍

1 注册界面RegViewController, 用户在注册页面输入手机号码之后点击下一步服务端 会发送短信验证码 界面会跳转到短信验证界面 该界面对应的控制器为VerifyViewController主要处理短信的验证功能

2 通讯录好友界面SectionsFriendsViewController,在事件响应中弹出该好友控制器即可 进入该界面后 会把通讯录的好友分为两类:

1 已加入的用户:可以点击添加按钮直接去添加已加入该app的通讯录好友

2 待邀请的用户:可以点击按钮发送短信 邀请好友加入该app

API介绍

/**

 * @brief短信SDK顶层类。

 */

@interface SMSSDK :NSObject <MFMessageComposeViewControllerDelegate>

/**

 * @brief注册应用,此方法在应用启动时调用一次并且只能在主线程调用。

 * @param key ,应用key,Juhe官网中注册的应用key

 */

+(void)initSMSSDK:(NSString*)key;

 

/**

 * @brief获取通讯录数据

 * @return返回的数组里面存储的数据类型是SMS_AddressBook

 */

+(NSMutableArray*)addressBook;

 

/**

 * @brief发送短信。

 * @param要发送短信的号码

 * @param要发送的信息

 * @param ViewController指针

 */

+(void)sendSMS:(NSString*)tel AndMessage:(NSString*)msg ViewController:(UIViewController* )vc;

 

/**

 * @brief向服务端请求获取通讯录好友信息。

 * @param调用参数默认填choose=1

 * @param请求成功结果回调block

 * @param请求失败结果回调block

 */

+(void)getAppContactFriends:(int)choose

                    Success:(void(^)(id responseObject))success

                    Failure:(void(^)(NSError *error))failure;

 

/**

 * @brief获取验证码。

 * @param电话号码

 * @param区号

 * @param请求成功结果回调block

 * @param请求失败结果回调block

 */

+(void)getVerifyCodeByPhoneNumber:(NSString*) phone

                          AndZone:(NSString*) zone

                          Success:(void(^)(id responseObject))success

                          Failure:(void(^)(NSError *error))failure;

 

/**

 * @brief提交验证码。

 * @param验证码

 * @param请求成功结果回调block

 * @param请求失败结果回调block

 */

+(void)commitVerifyCode:(NSString *)code

                Success:(void(^)(id responseObject))success

                Failure:(void(^)(NSError *error))failure;

© 著作权归作者所有

共有 人打赏支持
王航-聚合数据
粉丝 2
博文 12
码字总数 10969
作品 0
苏州
私信 提问
【AR】开始使用Vuforia开发iOS(2)

原 设置iOS开发环境 安装Vuforia iOS SDK 如何安装Vuforia iOS示例 编译并运行Vuforia iOS示例 支持iOS金属 iOS 64位迁移 设置iOS开发环境 适用于iOS的Vuforia引擎目前支持运行iOS 9及更高版...

lichong951
2018/06/11
0
0
第三方短信验证码系统

MOB短信验证码 http://sms.mob.com/#/sms IOS版: App Key:d2091eb7a2d8 App Secret:9dbd2c68e3858dd0d65f318f09c0cf16 http://wiki.mob.com/ios%E7%9F%AD%E4%BF%A1sdk%E9%9B%86%E6%88%90%E......

coolsir
2015/12/08
1
0
极光开发者沙龙 JIGUANG MEETUP——iOS 技术综合实践

活动背景 相信各位 iOSer 已经在 WWDC 结束后亲身体验过相关的技术。今年 WWDC 后,开发者们要适配的工作并不像以前那么繁重,在各大论坛中也可以搜到相关的技术实战分享。但因为每个公司的技...

极光推送
2017/10/24
1
0
快速搭建一个“微视”类短视频 App

欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~ 本文由腾讯云视频发表于云+社区专栏 关注公众号“腾讯云视频”,一键获取 技术干货 | 优惠活动 | 视频方案 “爱就像蓝天白云晴空...

腾讯云加社区
2018/10/26
0
0
(转)直接拿来用!最火的iOS开源项目(一)

AFNetworking 在众多iOS开源项目中,AFNetworking可以称得上是最受开发者欢迎的库项目。AFNetworking是一个轻量级的iOS、Mac OS X网络通信类库,现在是GitHub上第三大Objective-C库。它建立在...

孙启超
2013/06/21
0
0

没有更多内容

加载失败,请刷新页面

加载更多

nginx日志自动切割

1.日志配置(Nginx 日志) access.log----记录哪些用户,哪些页面以及用户浏览器,IP等访问信息;error.log------记录服务器错误的日志 #配置日志存储路径:location / {      a...

em_aaron
昨天
0
0
java 反射

基本概念 RTTI,即Run-Time Type Identification,运行时类型识别。RTTI能在运行时就能够自动识别每个编译时已知的类型。   要想理解反射的原理,首先要了解什么是类型信息。Java让我们在运...

细节探索者
昨天
1
0
推荐转载连接

https://www.cnblogs.com/ysocean/p/7409779.html#_label0

小橙子的曼曼
昨天
3
0
雷军亲自打造的套餐了解下:用多少付多少

12月28日消息,小米科技创始人兼CEO雷军微博表示,小米移动任我行套餐方案,原则上就是明明白白消费,用多少付多少,不用不花钱!上网、电话和短信都是一毛钱,上网0.1元/M,电话0.1元/分钟,...

linuxCool
昨天
6
0
协议简史:如何学习网络协议?

大学时,学到网络协议的7层模型时,老师教了大家一个顺口溜:物数网传会表应。并说这是重点,年年必考,5分的题目摆在这里,你们爱背不背。 考试的时候,果然遇到这个问题,搜索枯肠,只能想...

Java干货分享
昨天
10
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部