Skip to content
wangqiang edited this page Jan 4, 2018 · 6 revisions

短视频解决方案

1 集成环境

1. 集成说明

1.1 运行环境

  • 支持环境:armv7a、x86、arm64
  • 最小支持Android系统版本:Android 4.4(API 19)
  • 按照Readme中描述,通过Gradle引用相关的第三方库
  • 按照Readme中描述,配置好AndroidMainfest文件
  • 通过github下载相应的AAR或者通过jCenter依赖相应的aar
  • 复制demo中的KSVSShortVideoKit类到自己的工程

2. 集成流程

如果您使用过短视频SDK “KSYMediaEditorKit_Android”,需要升级为KSVSShortVideoCore_Android,请跳转到这里

2.1 鉴权

IKSVSShortVideoAuthListener 具体说明详见:IKSVSShortVideoAuthListener

  1. 注册鉴权监听器
 /**
  *  通过KSVSShortVideoKit静态方法Add一个监听器,用于监听鉴权的成功与失败。
  *  注意: 使用过程中,如果发现鉴权过期,也会回调鉴权失败的接口
  */
 KSVSShortVideoKit.addAuthorizeListener(Context, IKSVSShortVideoAuthListener);
  1. 鉴权
 /**
  *  鉴权成功或者失败,都会通过IKSVSShortVideoAuthListener返回结果
  *  @param: SDKToken,在金山云短视频解决方案官网申请得到,具体申请流程查看readme文件
  *  @param: UserToken,释义查看readme文件,如果不使用二次鉴权,这个值可以为空字符串,如果使用,请联系自己的服务器分发。
  */
  KSVSShortVideoKit.authorize(Context,SDKToken, UserToken);
  1. 移除单一的监听器
 /**
  * 移除之前添加的无用监听器
  */
 KSVSShortVideoKit.removeAuthorizeListener(Context, IKSVSShortVideoAuthListener);
  1. 清除所有的监听器
 /**
  * 清除所有的监听器
  */
 KSVSShortVideoKit.releaseAuthorize(Context);

教你如何优雅的使用鉴权

因为IKSVSShortVideoAuthListener的onFailed方法会在任何时候回调,所以必须保证有一个IKSVSShortVideoAuthListener不能被回收,
这样我们才能处理所有的失败消息。
1. 按照Demo上的示例,我们可以在Application中注册一个监听器,这个监听器在任何的时候都不去销毁。
2. 在需要鉴权的Activity中(一般是有登录功能的Activity里),我们进行鉴权,这个时候可以在Add一个IKSVSShortVideoAuthListener,
在收到鉴权成功或者失败的消息时,直接remove掉这次添加的Listener。
3. 如果在正常的上传时出现鉴权过期。此时会回调Application中IKSVSShortVideoAuthListener接口,可以在失败
时弹出提示或者增加自己的处理逻辑

2.2 视频上传

为了让您更加方便使用云存储,SDK给您提供简单好用的上传接口。调用上传方法,可以简单快速的上传生成的视频文件到金山云存储上。

IKSVSShortVideoListener 具体说明详见:IKSVSShortVideoListener

  1. 上传视频(只支持mp4文件的上传)

注意:目前仅支持同时上传一个文件,不支持多文件同时上传

/**
 * @param Context:上下文
 * @param String uid:用户唯一的标示,必须每个用户唯一。这样才能保证多用户同时上传时视频文件不会出现丢失
 * @param String path: 文件路径,对于您的APP而言,要保证文件的存在,保证路径的可用,保证有权限。。。
 * @param IKSVSShortVideoListener:上传成功、失败、进度。这些消息都在这个IKSVSShortVideoListener中放着
 */
 KSVSShortVideoKit.uploadFile(Context, uid, path, IKSVSShortVideoListener);
  1. 调用release释放资源
/**
 * 当您不需要在使用上传功能了,那么请调用release去释放上传的资源吧!
 * 如果您不去调用这个方法,那么可能会出现内存泄漏的情况~!
 */
  KSVSShortVideoKit.releaseUpload();

用好uploadFile方法

  • UploadFile方法用于视频文件以及图片资源的上传,会上传到金山云存储对应的位置
  • 为了让每个用户上传的文件不会出现冲突情况,请一定提供一个唯一的用户ID
  • 上传了视频,您一定需要头像的地址:可以看看UploadActivity中的实现,在IKSVSShortVideoListener的onInfo方法中,通过data.getString(IKSVSShortVideoUpload.UPLOAD_INFO_FILE_PATH);就能拿到具体的地址了
  • 拿到地址之后要怎么处理:最好叫您服务端同学存一下这个地址。不然...万一APP忘了这个地址咋办
  • 千万注意:暂时不支持多文件同时上传