第一步 获取短信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;