北京中投视讯 iOS上传SDK1.1.0
产品概述
视讯云上传SDK为您提供基于网络的数据存取服务,使用本SDK,您可以通过网络方便地存储和获取图片、音频、视频、文本等各类数据文件。SDK会将您上传的数据文件以对象(object)的形式组织到存储空间(bucket)里。 您还可以通过此SDK获取上传资源的外链地址。
版本更新说明
2017/12/12(版本号:1.1.0_17/12/12)
- 增加获取上传资源外链地址API
- 增加获取SP对应的BucketName API
- 增加获取版本号API
2017/8/20 (版本号:1.0.0)
- 单块上传
- 开始分块上传
- 取消分块上传
SDK功能特性
上传文件,支持图片、音频、文本、视频等各类数据文件。云存储将文件保存在对应的Bucket里。 获取上传资源的外链路径。
系统要求
1、最低支持iOS版本:iOS 8.0 2、支持的CPU架构:armv7,arm64,x86_64
集成方式
在视讯云开放平台下载视讯云上传CNLiveUploadSDK导入SDK,由于是动态库使用的时候需要把Framework 同时添加到 ‘General’->‘Embedded Binaries’中。CNLiveUploadSDK依赖于KS3YunSDK(动态库),将Demo中的KS3YunSDK导入工程中,同时添加到 ‘General’->‘Embedded Binaries’中。
SDK基本使用
- 初始化视讯云上传SDK
/**
初始化上传云SDK
@param appId 在open.cnlive.com网站申请得到的appId
@param appKey 在open.cnlive.com网站申请得到的appKey
@param isTestEnvironment YES:测试环境 NO:正式环境
*/
+ (void)setAppId:(NSString *)appId appKey:(NSString *)appKey isTestEnvironment:(BOOL)isTestEnvironment;
代码示例:
[CNLiveUpload setAppId:AppId appKey:AppKey isTestEnvironment:YES];
- 单块上传 参考Demo中的beginSingleUpload:方法, 单块上传最小支持5M,最大支持为5G
/**
单块上传
@param putObjectRequest 指定上传单块的request信息
@return 返回单块的response信息
*/
- (CNLivePutObjectResponse *)putObject:(CNLivePutObjectRequest *)putObjectRequest;
- 分块上传
参考Demo中的beginMultipartUpload方法,分块上传最小为5M一块,小于5M请使用单块上传
/**
上传分块
@param uploadPartRequest 指定上传分块的request信息
@return 返回resonse对象(里边有服务返回的数据(具体的参照demo))
*/
- (CNLiveUploadPartResponse *)uploadPart:(CNLiveUploadPartRequest *)uploadPartRequest;
调用这个接口会初始化一个分块上传,response会返回一个CNLiveMultipartUpload 对象,其属性有upload id, upload id 用来标识属于当前上传的具体的块,并且用来标识完成分块上传或者取消分块上传。
- 取消分块上传
参考Demo中的取消分块上传的使用。
/**
* 取消分块上传
*
* @param abortMultipartRequest 设置分块文件属性
*
* @return 返回resonse对象(里边有服务返回的数据(具体的参照demo))
*/
- (CNLiveAbortMultipartUploadResponse *)abortMultipartUpload:
(CNLiveAbortMultipartUploadRequest *)abortMultipartRequest;
- 获取上传资源外链地址
/**
获取上传资源外链地址
如果失败回调,可以开辟子线程重新请求此API获取资源外链地址
@param bucketKey SP上传Bucket里文件的路径(包括扩展名)
@param uploadType 上传文件类型:图片CNLiveYun_UploadType_Image和视频 CNLiveYun_UploadType_Video
@param successBlock 成功回调,返回上传资源外链地址
@param failureBlock 失败回调,返回错误信息
*/
+ (void)getUploadResourceUrlWithBucketKey:(NSString *)bucketKey uploadType:(CNLiveYun_UploadType)uploadType success:(void (^)(NSString *resUrl))successBlock failure:(void (^)(NSDictionary *error))failureBlock;
- 获取SP的BucketName
/**
获取SP的BucketName
@return BucketName
*/
+ (NSString *)getSPBucketName;
常见错误提示
常见失败信息:
errorCode = "sys_1015";
errorMessage = "app \U5f02\U5e38”;
//appid和bundleID不一致
errorCode = "sys_1002";
errorMessage = "sign error”;
//appkey和appid不一致