第一步 获取短信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:^(idresponseObject) {

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

intresCode = [resultCodeintValue];


if(resCode ==SMSResponseStateSuccess) {

NSMutableArray*array = [[NSMutableArrayalloc]init];

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


for(NSDictionary*attributesinresult) {

SMSAddressBook*bookFriend = [[SMSAddressBookalloc]init];

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

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


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

[arrayaddObject: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顶层类。

*/

@interfaceSMSSDK :NSObject<MFMessageComposeViewControllerDelegate>

/**

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

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

*/

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


/**

*@brief获取通讯录数据

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

*/

+(NSMutableArray*)addressBook;


/**

*@brief发送短信。

*@param要发送短信的号码

*@param要发送的信息

*@paramViewController指针

*/

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


/**

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

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

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

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

*/

+(void)getAppContactFriends:(int)choose

Success:(void(^)(idresponseObject))success

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


/**

*@brief获取验证码。

*@param电话号码

*@param区号

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

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

*/

+(void)getVerifyCodeByPhoneNumber:(NSString*) phone

AndZone:(NSString*) zone

Success:(void(^)(idresponseObject))success

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


/**

*@brief提交验证码。

*@param验证码

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

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

*/

+(void)commitVerifyCode:(NSString*)code

Success:(void(^)(idresponseObject))success

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