更新记录

0.1.0(2021-01-22)

支持动、静态文档转换 文件无损还原 超低门槛点播 文件加载速度快


平台兼容性

Android Android CPU类型 iOS
适用版本区间:8.0 - 11.0 armeabi-v7a:支持,arm64-v8a:支持,x86:未测试 适用版本区间:9 - 14

原生插件通用使用流程:

  1. 购买插件,选择该插件绑定的项目。
  2. 在HBuilderX里找到项目,在manifest的app原生插件配置中勾选模块,如需要填写参数则参考插件作者的文档添加。
  3. 根据插件作者的提供的文档开发代码,在代码中引用插件,调用插件功能。
  4. 打包自定义基座,选择插件,得到自定义基座,然后运行时选择自定义基座,进行log输出测试。
  5. 开发完毕后正式云打包

付费原生插件目前不支持离线打包。
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原生插件配置”->”云端插件“列表中删除该插件重新选择


ZegoExpressUniAppSDK

即构文件共享服务(ZegoDocs),提供文件处理相关功能。可将常见文件格式转码为向量、PNG、PDF、HTML5 页面等便于跨平台点播的目标格式,常用于在线教育课件共享、视频会议材料共享、网盘文档预览、邮箱附件预览等场景

了解更多解决方案:https://www.zego.im

使用方法

申请 ZEGO AppID

登录 ZEGO 官网 注册账号,根据自身实际业务需求选择场景,获取 AppID 与 AppSign,用于初始化 SDK。

创建uniapp项目

使用uniapp官方IDE HBuilder,创建uni-app类型的项目

获取「ZegoDocsView」uniapp SDK,并引入工程

在uniaapp市场获取本插件,并将插件引入工程

下载「js封装层」代码,并引入工程

下载地址

http://zego-public.oss-cn-shanghai.aliyuncs.com/edu/docsview/zego-doc-uniapp.zip

将以上「js封装层」引入到uniapp项目中

基础使用

初始化 SDK

import ZegoDocsViewManager from '../../zego-doc-uniapp/ZegoDocsViewManager';

ZegoDocsViewManager.getInstance().init(this.config, (ret) => {
  if (ret == 0) {
    //初始化文件成功
    this.showMyDocsView = true;
  } else {
        //初始化文件失败
  }
});

上传文件

//注意需要通过其他插件获取文件的路径 参考: https://ext.dcloud.net.cn/search?q=%E6%96%87%E4%BB%B6%E9%80%89%E6%8B%A9
var filaPath = "filePath";
ZegoDocsViewManager.getInstance().uploadFile(filaPath,1,(result) => {
  //state(1:上传中 2:格式转换成功)  
  var state = result['state'];
  //errorCode(0:成功 其他:错误)
  var errorCode = result['errorCode'];

  if (result['errorCode'] == 0) {
    if (result['state'] == 2) {
      this.appendInfo('成功');
      //获取上传成功后的文件 fileID
      var uploadedFileID = result['info']['upload_fileid'];
      this.loadFile(uploadedFileID);
    } else {
      //上传进度(百分比)
      var upload_percent = result['info']['upload_percent'];
    }
  } else {
    //上传失败
  }
});

加载文件并展示

<zego-docs-view ref='mydocsview' style="width:750rpx;height:750rpx"></zego-docs-view>
// fileID 可通过 uploadFile 接口上传文件后获取得到
var fileID = "";
this.$refs.mydocsview.loadFile(fileID,"",(result) => {
  if (result['errorCode'] == 0) {
    //加载文件成功');
  }
});

跳转到某一页的某一步

var targetPage = 2;
var targetStep = 1;
// 跳到第${targetPage}页,第${targetStep}步
this.$refs.mydocsview.flip(targetPage,targetStep,(result) => {
  if (result['isScrollSuccess'] == true) {
    //跳转成功;
  }
});

下一步

针对于动态 PPT 类型的文件(PPT中带有动画内容),我们提供上下步的功能

当用户用手指点击文件区域时,产生的效果相当于调用了一次 nextStep接口跳到下一步

this.$refs.mydocsview.nextStep((result) => {
  if (result['isScrollSuccess'] == true) {
  this.appendInfo('下一步成功');
  }
});

更多功能

1、参考 Demo

2、参考ZegoExpressEngine 原生 Android 版使用文档 https://doc-zh.zego.im/zh/4399.html

Demo 使用

Demo 下载地址

Demo

  1. 将Demo导入HBuilderX,修改manifest.json下的AppID(uniapp的AppID)
  2. 修改Demo下./KeyCenter.js 内的AppID、AppSign (从ZEGO官网获取的)
  3. 导入「ZegoDocsView」uniapp SDK
  4. 使用uniapp本地打包/云打包,制定自定义基座
  5. 运行

隐私、权限声明

1. 本插件需要申请的系统权限列表:

读取文件,写入文件

2. 本插件采集的数据、发送的服务器地址、以及数据用途说明:

上传文件到云端时会保存文件 具体可参考 https://www.zego.im/privacy

3. 本插件是否包含广告,如包含需详细说明广告表达方式、展示频率:

许可协议

MIT License

Copyright (c) 2020 ZEGO

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

暂无用户评论。

使用中有什么不明白的地方,就向插件作者提问吧~ 我要提问