更新记录

1.0.1(2020-08-19)

  1. 自动判断文件大小,自动进行分片上传;
  2. 增加取消上传功能;
  3. 支持断点续传功能;

1.0.0(2020-08-14)

  1. 支持客户端直接上传文件到云存储,不需要经过服务端周转;
  2. 支持上传、下载、删除等操作;
  3. 支持直接访问存储图片、CDN加速访问图片等

平台兼容性

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

原生插件通用使用流程:

  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原生插件配置”->”云端插件“列表中删除该插件重新选择


对象存储OSS

该模块可以将图片、视频、文件等资源等各种类型的文件存储到阿里云云存储,可以实现上传、下载、删除资源文件等操作。

技术支持

如果希望获取更多高级功能或者技术支持,可以联系我们的客服微信: ruanyunkeji001 ruanyunkeji002

快速开始

第一步: 阿里云配置

注册或登录阿里云账号,获取相关配置信息

进入存储桶列表,点击要使用的存储桶,获取配置信息

  • 复制左上角存储桶名称,这个值为bucket;
  • 复制"Endpoint(地域节点)",这个值为初始化使用的endPoint;

第二步: 初始化模块

  1. 加载模块 模块名称为: RY-AliyunOss,使用uni.rquireNativePlugin加载模块

    var oss = uni.requireNativePlugin("RY-AliyunOss");
  2. 初始化模块

init({params})

初始化模块

oss.init({
    stsServer: "https://www.stsserver.xxx",
    endPoint: "http://oss-cn-shenzhen.aliyuncs.com",
    docPath: plus.io.convertLocalFileSystemURL('_doc')
});

stsServer为签名生成服务器地址,可以参考生成签名

第三步: 上传文件

oss.uploadObject({
    bucket: 'bucketName-appId',
    key: 'test01',
    path: '/var/xxxxxx'
}, ret => {
    uni.showToast({
        title: JSON.stringify(ret),
        icon: "none"
    });
});

备注: 上传文件大于10M时,会自动分片上传,无需配置;

上传文件的路径可以通过uni.chooseImage()等函数获取,获取到路径后,需要使用plus.io.convertLocalFileSystemURL(path)将路径转换成绝对路径

第四步: 访问文件

点击存储桶列表,选择对应的存储桶,进入概览,可以通过以下其中一种方式:

  1. 通过OSS域名访问存储,复制"Bucket 域名",访问地址格式为: bucketName.region.aliyuncs.com, 其中bucketName为存储桶名称,region为所属地域 复制的地址后方加上第三步上传文件的key,在APP中就可以访问对应的文件,最终的地址类似: https://xxxxxx.xxxx.aliyuncs.com/test01.png

  2. 通过CDN访问,需要点击"开启",启用CDN,复制"传输加速域名"的Bucket域名,类似"bucketName.oss-accelerate.aliyuncs.com",在之后加上第三步使用的key,就可以访问,访问地址类似: http://xxxxx.oss-accelerate.aliyuncs.com/test01.png

第五步: 下载文件

oss.downloadObject({
    bucket: "bucketName",
    key: "key"
}, ret => {
    uni.showToast({
        title: JSON.stringify(ret),
        icon: "none"
    });
});

下载成功,ret对象的status值为true, 对用的文件放置在_doc目录下,可以在js中直接使用返回的path

第六步: 删除文件

oss.deleteObject({
    bucket: "bucketName",
    key: "key"
}, ret => {
    uni.showToast({
        title: JSON.stringify(ret),
        icon: "none"
    });
});

删除成功, 对应的ret对象的status值为true

第七步: 取消上传

oss.cancelRequest();

更多功能

联系我们获取更能多增值功能

  • 下载文件
  • 批量删除
  • 文件列表
  • 设置文件分片大小
  • 断点续传

隐私、权限声明

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

Android: android.permission.INTERNET android.permission.ACCESS_NETWORK_STATE android.permission.ACCESS_WIFI_STATE android.permission.READ_EXTERNAL_STORAGE android.permission.WRITE_EXTERNAL_STORAGE iOS: 无

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

插件使用阿里云的OSS SDK会采集数据,详情可参考: https://help.aliyun.com/document_detail/52834.html?spm=a2c4g.11186623.6.797.3d024947J5CbXy

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

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