通常情况下在短视频系统中像是图片或视频这类资源型文件,是需要使用云存储的方式进行保存的,因为这样可以有效降低费用,简化管理逻辑,并且扩展性更高。现在比较主流的几个云服务商有七牛云、阿里云、腾讯云等。本文就来简单分享下在短视频系统开发过程中,如何向七牛云上传相关的视频资源。
向服务器获取七牛云token
//向内部服务器获取七牛云的token
VideoHttpUtil.getQiNiuToken(new HttpCallback() {
@Override
public void onSuccess(int code, String msg, String[] info) {
if (code == 0) {
if (info.length > 0) {
mToken = JSON.parseObject(info[0]).getString("token");
L.e(TAG, "-------上传的token------>" + mToken);
uploadFile(mVideoUploadBean.getVideoFile(), mVideoUpCompletionHandler);
}
}
}
});
上传相关视频资源文件,传入七牛云回调
/**
* 上传文件
*/
private void uploadFile(File file, UpCompletionHandler handler) {
if (TextUtils.isEmpty(mToken)) {
return;
}
if (mUploadManager == null) {
mUploadManager = new UploadManager();
}
mUploadManager.put(file, file.getName(), mToken, handler, null);
}
实现七牛云回调,获取上传资源的网络路径
mQiNiuHost = configBean.getVideoQiNiuHost();//服务器返回七牛云分配的地址拼接回调返回的路径
mVideoUpCompletionHandler = new UpCompletionHandler() {
@Override
public void complete(String key, ResponseInfo info, JSONObject response) {
if (mVideoUploadBean == null) {
return;
}
String videoResultUrl = mQiNiuHost + mVideoUploadBean.getVideoFile().getName();
L.e(TAG, "视频上传结果-------->" + videoResultUrl);
mVideoUploadBean.setResultVideoUrl(videoResultUrl);
uploadFile(mVideoUploadBean.getImageFile(), mImageUpCompletionHandler);
}
};
以上就是短视频系统开发过程中,在七牛云上传视频资源的大概流程。如有其它疑问可在评论里留言互动或关注,后续会定时更新相关内容。
声明:本文由作者原创,转载请注明出处及原文链接。