|
|
版本:3.2.0
|
|
|
版本:3.2.1
|
|
|
|
|
|
日期:2018-08-27
|
|
|
日期:2018-10-26
|
|
|
|
|
|
# 1.概述
|
|
|
iOS点播SDK是适用于iOS平台的云点播SDK。使用此SDK可以与CC视频云服务进行对接,在iOS端使用CC视频的点播功能。
|
... | ... | @@ -27,7 +27,7 @@ iOS点播SDK是适用于iOS平台的云点播SDK。使用此SDK可以与CC视频 |
|
|
# 2.开发准备
|
|
|
|
|
|
## 2.1开发环境
|
|
|
|
|
|
|
|
|
* Xcode:苹果官方IDE
|
|
|
|
|
|
* iOS8+
|
... | ... | @@ -317,7 +317,7 @@ playerView.delegate =self;//设置代理 |
|
|
|
|
|
vrmode = 0;
|
|
|
}
|
|
|
```
|
|
|
```
|
|
|
对其字段解释如下:
|
|
|
```
|
|
|
- status(整数)和 statusinfo(字符串) status表示这个视频在CC视频云上的当前的状态值,statusinfo 是 状态值的文字描述,如正处于转码、正在审核等。只有当 status 为0时,该视频才可以播放。你在实现App播放逻辑时需特别注意。
|
... | ... | @@ -390,7 +390,7 @@ playerView.delegate =self;//设置代理 |
|
|
//默认30s 譬如设置加载超时时间为20s 20s后视频没加载出来则会回调超时的代理方法 在此方法中可以切换线路等操作
|
|
|
playerView.timeOutLoad =20;
|
|
|
playerView.timeOutBuffer=20;
|
|
|
```
|
|
|
```
|
|
|
### 4.1.11授权验证
|
|
|
```
|
|
|
//设置了授权验证的客户传值 无此功能的客户无需设置 开通此项功能的客户返回的playurls里含有authvalidate(授权验证字典信息) enable:0代表授权验证不通过 1代表通过 freetime:试看时间 messaage:提示信息
|
... | ... | @@ -431,7 +431,7 @@ playerView.delegate =self;//设置代理 |
|
|
//加载失败 此方法中可切换线路
|
|
|
- (void)videoPlayer:(DWPlayerView *)playerView didFailWithError:(NSError *)error;
|
|
|
注:如遇到频繁切换视频请求失败的情况 可在加载失败的代理方法中切换线路 详情参见Demo
|
|
|
```
|
|
|
```
|
|
|
|
|
|
### 4.1.13字幕显示
|
|
|
```
|
... | ... | @@ -618,7 +618,7 @@ clickurl 跳转连接,返回结果为""代表没有跳转链接。string类 |
|
|
|
|
|
//获取总时间长
|
|
|
- (CGFloat)getTotalPlayTime;
|
|
|
```
|
|
|
```
|
|
|
DWAudioPlayer的代理方法如下:
|
|
|
```
|
|
|
/*
|
... | ... | @@ -644,7 +644,7 @@ clickurl 跳转连接,返回结果为""代表没有跳转链接。string类 |
|
|
- (void)audioPlayerPlaybackLikelyToKeepUp:(DWAudioPlayer *)audioPlayer;
|
|
|
//加载失败
|
|
|
- (void)audioPlayer:(DWAudioPlayer *)audioPlayer didFailWithError:(NSError *)error;
|
|
|
```
|
|
|
```
|
|
|
### 4.1.18视频打点
|
|
|
```
|
|
|
videomarks = (
|
... | ... | @@ -716,7 +716,7 @@ questions(问答数组)showTime显示时间 jump能否跳过 content问题及选 |
|
|
```
|
|
|
|
|
|
## 4.2上传功能具体使用
|
|
|
|
|
|
|
|
|
### 4.2.1初始化DWUploader
|
|
|
|
|
|
```
|
... | ... | @@ -787,7 +787,7 @@ typedef void (^DWUploaderProgressBlock)(float progress, NSInteger totalBytesWrit |
|
|
### 4.2.4恢复上传
|
|
|
```
|
|
|
[uploader resume];
|
|
|
```
|
|
|
```
|
|
|
### 4.2.5视频压缩
|
|
|
```
|
|
|
//初始化 DWVideoCompressController
|
... | ... | @@ -816,8 +816,8 @@ DWUIImagePickerControllerMediaTypeMovie, |
|
|
DWUIImagePickerControllerMediaTypeImage
|
|
|
};
|
|
|
|
|
|
```
|
|
|
|
|
|
```
|
|
|
|
|
|
## 4.3下载功能具体使用
|
|
|
注:在项目TARGETS-Build Settings-Other linker Flags添加-ObjC 或者-all_load。-ObjC:链接静态库中所有的Objective-C代码到项目中,-all_load:链接静态库中所有的代码到项目中。
|
|
|
### 4.3.1获取下载地址
|
... | ... | @@ -898,7 +898,7 @@ DWDownloadModel *loadModel =[[DWDownloadModel alloc]initWithURLString:urlString |
|
|
}];
|
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
### 4.3.3DWDownloadSessionManager中开放的API 具体详情参见demo。也可使用代理方法更新下载的进度和状态。注:如无特殊需要 maxDownloadCount resumeDownloadFIFO isBatchDownload 均不需要设置。
|
|
|
|
|
|
```
|
... | ... | @@ -1045,6 +1045,39 @@ SDK提供了DWLog模块用来打印HTTP通信日志,可以在App的任意位 |
|
|
```
|
|
|
当遇到无法播放、上传或下载时,首先要排除userId和API KEY是否有效,其次判断网络是否正常、是否已经连接、 videoId是否是userId和API KEY名下的视频。除此之外还可以通过 HTTP通信日志排查问题。
|
|
|
|
|
|
## 4.4.5关于错误码
|
|
|
|
|
|
```
|
|
|
|
|
|
/*
|
|
|
error code
|
|
|
播放相关的 100 +
|
|
|
下载相关的 200 +
|
|
|
上传相关的 300 +
|
|
|
网络相关的 400 +
|
|
|
*/
|
|
|
|
|
|
代码 说明
|
|
|
100 playinfo接口返回请求失败
|
|
|
101 视频不可用
|
|
|
102 视频处理中
|
|
|
103 视频已删除
|
|
|
104 视频转码失败
|
|
|
105 视频状态未知错误
|
|
|
130 创建AVPlayer 失败
|
|
|
131 未知播放错误
|
|
|
300 xml解析失败
|
|
|
301 断电续传参数错误
|
|
|
302 用户剩余空间不足
|
|
|
303 用户服务终止
|
|
|
304 服务器处理错误
|
|
|
305 访问过于频繁
|
|
|
306 用户服务无权限
|
|
|
399 上传失败
|
|
|
400 网络资源暂时不可用
|
|
|
|
|
|
```
|
|
|
|
|
|
更多信息请参考[CC视频开发者支持网站](http://doc.bokecc.com/),如果在使用SDK过程中遇到其他问题请联系CC客服进行反馈。
|
|
|
|
|
|
# 5.API查询
|
... | ... | |