北京中投视讯 iOS用户SDK1.1.5
1. 产品概述
北京中投视讯 iOS 用户 SDK 集成了十分完善的用户系统,为 iOS 开发者提供简单、便捷的接口。
2.版本更新说明
-
2016.12.08(版本号:1.1.3)
(1). 新增第三方账号绑定功能;
(2). 上传头像接口返回数据新增头像地址;
(3). 注册、登录、快捷登录及第三方登录,登录成功后新增部分字段信息;
-
2017.3.23(版本号:1.1.4)
(1). 添加查看多个用户接口;
-
2017.06.06(版本号:1.1.5)
(1). 添加通过邮箱修改密码接口;
(2). 添加通过原密码修改密码接口;
(3). 添加注册前校验手机验证码接口;
(4). 添加快捷登录前校验手机验证码接口;
(5). 添加验证第三方账号并登录接口;
(6). 添加第三方注册强制绑定手机号登录接口;
3.SDK功能说明
- 注册
- 账号登录
- 快捷登录
- 第三方登录
- 获取验证码(注册或修改手机号、快捷登录、找回或修改密码前获取验证码)
- 更新手机号
- 修改用户信息(昵称、性别、邮箱、联系方式)
- 修改密码
- 更新用户附加信息
- 上传头像
- 查询用户信息
- 查询多个用户信息(new)
- 绑定第三方账号
- 用户反馈
- 通过邮箱修改密码
- 通过原密码修改密码
- 注册前校验手机验证码
- 快捷登录前校验手机验证码
- 验证第三方账号并登录
- 第三方注册强制绑定手机号登录
4.运行环境
最低支持iOS系统8.0 支持的CPU架构:armv7 、x86_64、 arm64
5.SDK集成方式
将CNLiveUserSystemSDK.framework引入到工程中,导入头文件:#import<CNLiveUserSystemSDK/CNLiveUserSystemCenter.h>
6.系统权限
<key>NSCameraUsageDescription</key>
<string>App需要您的同意,才能访问相机</string>
<key>NSPhotoLibraryUsageDescription</key>
<string>此 App 需要您的同意才能读取媒体资料库</string>
7.SDK 使用方法
- 初始化
必须在APP启动的时候将SDK进行初始化,请登录 中国网+视讯云开放平台注册账号信息获取AppId/AppKey/AppSceret .
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
[CNLiveUserSystemCenter setAppId:AppId appKey:AppKey appSecret:AppSceret];
}
- 注册
/**
@abstract 注册
@param userName 邮箱或手机
@param password 密码
@param verificationCode 手机验证码(手机号注册时必填)
@param invitationCode 邀请码(非必填)
@param frmId 渠道ID(非必填)
@param success 成功回调
@param failure 失败回调
*/
+ (void)registerWithUserName:(NSString *)userName
password:(NSString *)password
verificationCode:(NSString *)verificationCode
invitationCode:(NSString *)invitationCode
frmId:(NSString *)frmId
success:(void (^)(id result))success
failure:(void (^)(NSDictionary *errorDic))failure;
返回数据格式:
{
data = {
email = "";
extInfo = "";
faceUrl = "https://y1.cnliveimg.com/mobile/images/mobilehead/default/face_60X60.jpg";
gender = n;
hUid = "";
location = "";
mobile = 13161679011;
nickName = "131xxxx9011_6224";
qqUid = "";
renrenUid = "";
sinaUid = "";
token = "gV0hemajp4R0Cr/dhXehb1v5uRlO0QQDiqOxxxxxxxOnvtyCU5ng4wEU";
uid = 10389412;
wxUid = "";
};
errorCode = 0;
errorMessage = "\U6210\U529f";
}
注意: token有效期为一个月 , token失效后无法登陆,需要重新登陆生成新的token。
- 登录
/**
@abstract 登录
@param userName 手机号或邮箱
@param password 密码
@param frmId 渠道ID(非必填)
@param success 成功回调
@param failure 失败回调
*/
+ (void)loginWithUserName:(NSString *)userName
password:(NSString *)password
frmId:(NSString *)frmId
success:(void (^)(id result))success
failure:(void (^)(NSDictionary *errorDic))failure;
注意: token有效期为一个月 , token失效后无法登陆,需要重新登陆生成新的token。
- 快捷登录
/**
@abstract 快捷登录
@param userName 手机号
@param verificationCode 验证码
@param frmId 渠道ID(非必填)
@param success 成功回调
@param failure 失败回调
*/
+ (void)shortcutLoginWithUserName:(NSString *)userName
verificationCode:(NSString *)verificationCode
frmId:(NSString *)frmId
success:(void (^)(id result))success
failure:(void (^)(NSDictionary *errorDic))failure;
注意: token有效期为一个月 , token失效后无法登陆,需要重新登陆生成新的token。
- 第三方登录
/**
@abstract 第三方登录
@param plat 第三方平台编号(如plat: 1:sina weibo 2:qq 3:weixin 4:renren 注:如qq登录,plat=@"2")
@param thirdPartyId 第三方用户ID
@param nickName 用户昵称
@param gender 性别,m:男、f:女、n:未知(非必填)
@param location 用户所在地(非必填)
@param faceUrl 头像,约100*100(非必填)
@param frmId 渠道ID(非必填)
@param success 成功回调
@param failure 失败回调
*/
+ (void)thirdPartyLoginWithThirdPartyPlatType:(NSString *)plat
thirdPartyId:(NSString *)thirdPartyId
nickName:(NSString *)nickName
gender:(NSString *)gender
location:(NSString *)location
faceUrl:(NSString *)faceUrl
frmId:(NSString *)frmId
success:(void (^)(id result))success
failure:(void (^)(NSDictionary *errorDic))failure;
注*token有效期为一个月 , token失效后无法登陆,需要重新登陆生成新的token。
- 获取验证码(快捷登录、找回或修改密码、注册或修改手机号)
/**
@abstract 发送验证码
@param mobile 手机号
@param type 发送验证码类型(详见VerificationCodeType)
@param success 成功回调
@param failure 失败回调
*/
+ (void)verificationCodeType:(VerificationCodeType)type
mobile:(NSString *)mobile
success:(void (^)(id result))success
failure:(void (^)(NSDictionary *errorDic))failure;
VerificationCodeType说明:
- 更新手机号
/**
@abstract 更新手机号
@param uid 用户ID
@param mobile 手机号
@param verificationCode 验证码
@param success 成功回调
@param failure 失败回调
*/
+ (void)updateMobileWithUid:(NSString *)uid
mobile:(NSString *)mobile
verificationCode:(NSString *)verificationCode
success:(void (^)(id result))success
failure:(void (^)(NSDictionary *errorDic))failure;
- 修改用户单项信息(昵称、性别、邮箱、联系方式)
/**
@abstract 修改用户单项信息
@param type 修改类型(nickName-昵称,gender-性别,email-邮箱, location-联系方式(地址))
@param uid 用户ID
@param info 对应的信息(注gender对应f/m/n)
@param success 成功回调
@param failure 失败回调
*/
+ (void)modifyUserInfoType:(UserInfoType)type
uid:(NSString *)uid
modifyInfo:(NSString *)info
success:(void (^)(id result))success
failure:(void (^)(NSDictionary *errorDic))failure;
UserInfoType类型说明:
- 修改密码(通过手机号修改)
/**
@abstract 修改密码(通过手机号修改)
@param mobile 手机号
@param verificationCode 验证码
@param newPassword 新密码
@param success 成功回调
@param failure 失败回调
*/
+ (void)changePasswordWithMobile:(NSString *)mobile
verificationCode:(NSString *)verificationCode
newPassword:(NSString *)newPassword
success:(void (^)(id result))success
failure:(void (^)(NSDictionary *errorDic))failure;
- 更新用户附加信息
/**
@abstract 更新用户附加信息
@param uid 用户ID
@param extInfo 扩展信息(格式由对方自己组织,平台只负责存储和原样 读取,NSString类型)
@param success 成功回调
@param failure 失败回调
*/
+ (void)updateOtherInfoWithUid:(NSString *)uid
extInfo:(NSString *)extInfo
success:(void (^)(id result))success
failure:(void (^)(NSDictionary *errorDic))failure;
- 上传头像
/**
@abstract 上传头像
@param uid 用户ID
@param icon 头像
@param success 成功回调
@param failure 失败回调
*/
+ (void)uploadIconWithUid:(NSString *)uid
icon:(UIImage *)icon
success:(void (^)(id result))success
failure:(void (^)(NSDictionary *errorDic))failure;
- 查询用户信息
/**
@abstract 查询用户信息
@param uid 用户ID
@param srcUid 被查询用户ID
@param success 成功回调
@param failure 失败回调
*/
+ (void)queryUserInfoWithUid:(NSString *)uid
srcUid:(NSString *)srcUid
success:(void (^)(id result))success
failure:(void (^)(NSDictionary *errorDic))failure;
- 查询多个用户信息
/**
@abstract 查询多条用户信息
@param uid 用户ID
@param srcUids 被查询用户IDs
@param success 成功回调
@param failure 失败回调
*/
+ (void)queryMoreUserInfosWithUid:(NSString *)uid srcUids:(NSArray *)srcUids success:(void (^)(id result))success failure:(void (^)(NSDictionary *errorDic))failure;
- 绑定第三方账号
/**
@abstract 绑定第三方账号
@param uid 用户ID
@param plat 第三方平台编号(如platform: 1:sina weibo 2:qq 3:weixin 4:renren 注:如绑定qq,thirdPartyPlat = @"2")
@param thirdPartyId 第三方用户ID
@param success 成功回调
@param failure 失败回调
*/
+ (void)bindingThirdPartyWithUid:(NSString *)uid
thirdPartyPlatType:(NSString *)plat
thirdPartyId:(NSString *)thirdPartyId
success:(void (^)(id result))success
failure:(void (^)(NSDictionary *errorDic))failure;
- 用户反馈
/**
@abstract 用户反馈
@param contentId 举报内容ID
@param message 举报内容(app自己组织-不能带特殊字符&号等)
@param success 成功回调
@param failure 失败回调
*/
+ (void)feedbackWithContentId:(NSString *)contentId
message:(NSString *)message
success:(void (^)(id result))success
failure:(void (^)(NSDictionary *errorDic))failure;
- 通过邮箱修改密码
/**
通过邮箱修改密码
@param email 邮箱
@param newPwd 新密码
@param success 成功回调
@param failure 失败回调
*/
+ (void)modifyPwdWithEmail:(NSString *)email newPwd:(NSString *)newPwd success:(void (^)(id result))success failure :(void (^)(NSDictionary *errorDic))failure;
- 通过原密码修改密码
/**
通过原密码修改密码
@param uid 用户ID
@param pwd 原密码
@param newPwd 新密码
@param success 成功回调
@param failure 失败回调
*/
+ (void)oldPwdChangePasswordWithUid:(NSString *)uid pwd:(NSString *)pwd newPwd:(NSString *)newPwd success:(void (^)(id result))success failure :(void (^)(NSDictionary *errorDic))failure;
- 注册前校验手机验证码
/**
注册前校验手机验证码
@param mobile 手机号
@param verificationCode 验证码
@param success 成功回调
@param getVersion 失败回调
*/
+ (void)registerCheckVerificationCodeWithMobile:(NSString *)mobile verificationCode:(NSString *)verificationCode success:(void (^)(id result))success failure :(void (^)(NSDictionary *errorDic))failure;
- 快捷登录前校验手机验证码
/**
快捷登录前校验手机验证码
@param mobile 手机号
@param verificationCode 验证码
@param success 成功回调
@param failure 失败回调
*/
+ (void)shortcutLoginCheckVerificationCodeWithMobile:(NSString *)mobile verificationCode:(NSString *)verificationCode success:(void (^)(id result))success failure :(void (^)(NSDictionary *errorDic))failure;
- 验证第三方账号并登录
/**
验证第三方账号是否注册,若注册则直接登录返回用户信息,若未注册返回errorCode
@param plat 第三方平台编号(如plat: 1:sina weibo 2:qq 3:weixin 4:renren 注:如qq登录,plat=@"2")
@param thirdPartyId 第三方用户ID
@param frmId 渠道ID(非必填)
@param success 成功回调
@param failure 失败回调
*/
+ (void)thirdPartyCheckLoginWithThirdPartyPlatType:(NSString *)plat thirdPartyId:(NSString *)thirdPartyId frmId:(NSString *)frmId success:(void (^)(id result))success failure :(void (^)(NSDictionary *errorDic))failure;
- 第三方注册强制绑定手机号登录
/**
第三方注册强制绑定手机号登录: 手机号+密码+验证码+三方账号
@param plat 第三方平台编号(如plat: 1:sina weibo 2:qq 3:weixin 4:renren 注:如qq登录,plat=@"2")
@param thirdPartyId 第三方用户ID
@param nickName 用户昵称
@param gender 性别,m:男、f:女、n:未知(非必填)
@param location 用户所在地(非必填)
@param faceUrl 头像,约100*100(非必填)
@param mobile 手机号
@param verificationCode 验证码 (验证码类型为快捷登录VerificationCodeTypeShortcutLogin)
@param pawd 注册密码
@param frmId 渠道ID(非必填)
@param success 成功回调
@param failure 失败回调
*/
+ (void)thirdPartyBindMobileLoginWithThirdPartyPlatType:(NSString *)plat thirdPartyId:(NSString *)thirdPartyId nickName:(NSString *)nickName gender:(NSString *)gender location:(NSString *)location faceUrl:(NSString *)faceUrl mobile:(NSString *)mobile verificationCode:(NSString *)verificationCode pawd:(NSString *)pawd frmId:(NSString *)frmId success:(void (^)(id result))success failure:(void (^)(NSDictionary *errorDic))failure;
8.常见错误类型
返回数据格式:errorCode = 0 表示成功,其他均为接口访问失败,错误信息详见errorMessage
常见错误类型:
errorCode = "sys_1015";
errorMessage = "app 异常”;
//appId和bundleID不一致
errorCode = "sys_1002";
errorMessage = "sign error”;
//appKey和appId不一致
errorCode = "sys_1024";
errorMessage = “secret error”;
//appSecret和appId不一致