更新记录
1.0.0(2022-01-12)
- 视频点播上传功能;
平台兼容性
Android | Android CPU类型 | iOS |
---|---|---|
适用版本区间:4.4 - 11.0 | armeabi-v7a:未测试,arm64-v8a:未测试,x86:未测试 | 适用版本区间:9 - 15 |
原生插件通用使用流程:
- 购买插件,选择该插件绑定的项目。
- 在HBuilderX里找到项目,在manifest的app原生插件配置中勾选模块,如需要填写参数则参考插件作者的文档添加。
- 根据插件作者的提供的文档开发代码,在代码中引用插件,调用插件功能。
- 打包自定义基座,选择插件,得到自定义基座,然后运行时选择自定义基座,进行log输出测试。
- 开发完毕后正式云打包
付费原生插件目前不支持离线打包。
Android 离线打包原生插件另见文档 https://nativesupport.dcloud.net.cn/NativePlugin/offline_package/android
iOS 离线打包原生插件另见文档 https://nativesupport.dcloud.net.cn/NativePlugin/offline_package/ios
注意事项:使用HBuilderX2.7.14以下版本,如果同一插件且同一appid下购买并绑定了多个包名,提交云打包界面提示包名绑定不一致时,需要在HBuilderX项目中manifest.json->“App原生插件配置”->”云端插件“列表中删除该插件重新选择
阿里云视频点播上传
提供了上传媒体文件到点播存储功能,您可以快捷上传视频、音频、图片、字幕等在内的各种媒体文件。
技术支持
产品复杂度较高,接入前请先联系我们,技术会引导您免费接入和免费测试。
温馨提示:建议接入成功后再购买。
注意:插件默认提供右侧示例代码中的功能;部分高级功能需要额外授权开通。
联系我们,获取技术支持和开通测试账号。
定制UI
联系我们,获取定制UI。
快速开始
步骤1: 集成插件
- 加载插件
插件名称: MZ-AliyunVodUpload-Video
使用前,您需要先加载插件:
var vodUpload = uni.requireNativePlugin("MZ-AliyunVodUpload-Video");
- 阿里云配置
注册或者登录
步骤2: 开始使用插件
使用前需要调用 [init]() 初始化插件,来初始化上传实例。
vodUpload.init({
accessId: 'STS.NTmxxxxxppA',
accessKey: '3N3LcMkcxxxxxxRM6uVj',
token: 'CAIS6wF1q6xxxxxXWOrQ=',
expiredTime: '2022-01-15T02:06:05Z'
}, ret => {
console.log(ret);
});
步骤3: 设置监听器
调用 [setUploadVideoListener]() 设置监听器,监听器会返回上传的事件回调,用来返回相关的上传信息。
vodUpload.setUploadVideoListener({}, ret => {
console.log(ret);
});
步骤4: 启动上传
短视频上传不支持上传列表,上传短视频需调用上传接口。调用上传方法需要传入视频和封面路径、短视频信息等。
vodUpload.uploadWithVideoAndImage({
videoPath: '/path/to/video.mp4',
imagePath: '/path/to/image.png',
videoInfo: {
title: 'This is title',
desc: 'This is desc'
}
}, ret => {
console.log(ret);
});
说明:
支持的文件不大于4 GB。
videoInfo具体结构如下:
{
title: '标题',
tags: '标签',
desc: '描述',
cateId: '分类Id'
}
上传控制方法如下所示:
- 暂停上传
vodUpload.pause({}, ret => {
console.log(ret);
});
- 恢复上传
vodUpload.resume({}, ret => {
console.log(ret);
});
- 取消上传
vodUpload.cancel({}, ret => {
console.log(ret);
});
回调处理
- 上传进度
每上传一个分片,会触发 [onUploadProgress]() 回调,回调参数包括已上传文件大小uploadedSize和总文件大小totalSize。
- 上传成功
上传成功时,会触发 [onUploadSuccessWithResult]() 回调。回调包含上传结果result,result包含以下属性:
{
videoId: 'qoewiexxxkjjfdsja',
imageUrl: 'https://xxx.xxx.xxx/xxx'
}
视频上传成功后会返回videoId作为视频id,拿到videoId之后需要获取播放地址进行播放。更多信息,请参见获取播放地址播放。 图片上完成后会返回imageUrl,开启URL鉴权后imageUrl会有过期时间。更多信息,请参见URL鉴权。
- 上传失败
上传失败时,会触发 [onUploadFailedWithCode]() 回调。在该回调方法中,可以通过code和message查看具体原因,并在页面上提示。更多错误码信息,请参见错误码表和OSS错误码。
- 凭证过期处理
STS过期,会触发 [onUploadTokenExpired]() 回调。在该回调方法中,可以向AppServer重新请求新的STS凭证,并调用以下方法继续上传。
vodUpload.refreshWithAccessKeyId({
accessId: 'STS.NTmxxxxxppA',
accessKey: '3N3LcMkcxxxxxxRM6uVj',
token: 'CAIS6wF1q6xxxxxXWOrQ=',
expiredTime: '2022-01-15T02:06:05Z'
}, ret => {
console.log(ret);
});
- 超时处理
上传超时,会触发 [oUploadRetry]() 回调并自动重试。在该回调方法中,可以在页面上给予提示或者调用 [cancel]() 方法停止上传。此外,可以设置maxRetryCount属性,指定最大重试次数。超时重试可以继续上传时,会触发 [onUploadRetryResume]() 回调并恢复上传。
更多功能
- 高级参数(内测);
- 文件上传(内测)
联系我们,获取更多支持。