更新记录

2.0.0(2021-02-23)

  1. 修复Android无法上传问题;
  2. 增加单独的上传监听和下载监听函数;

1.1.2(2021-02-18)

  1. 修复安卓打包错误;
  2. 升级底层SDK ;
查看更多

平台兼容性

Android iOS
适用版本区间:8.0 - 11.0 适用版本区间: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原生插件配置”->”云端插件“列表中删除该插件重新选择


对象存储OBS

该模块可以将图片、视频、文件等资源等各种类型的文件存储到华为云存储,支持客户端上传、下载、删除等操作。

技术支持

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

快速开始

第一步: 华为云配置

注册或登录华为云账号,获取相关配置信息,步骤如下

  1. 进入访问秘钥,点击"新增访问秘钥",按照提示操作,完成后会提示一个文件下载,打开文件

    • 复制"Access Key Id",这个值为初始化使用的accessKey;
    • 复制"Secret Access Key",这个值为初始化使用的accessSecret
  2. 进入存储桶列表

    • 如果没有存储桶,点击右上角创建存储桶按钮创建,如果已经创建则忽略;
    • 在列表中,点击要使用的存储桶名称 a. 复制"桶名称",这个值为函数操作使用的bucket; b. 复制"Endpoint",这个值为函数使用的endPoint, 传入时,需要加前缀https://;

第二步: 初始化模块

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

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

init({params})

初始化模块

obs.init({
    accessKey: 'xxxxxxxxx',
    accessSecret: 'xxxxxxx',
    endPoint: 'xxxxxx',
    docPath: plus.io.convertLocalFileSystemURL('_doc')
})

accessKey、accessSecret和endPoint都从第一步中获取。

第三步: 上传文件

obs.uploadObject({
    bucket: 'bucketName',
    key: 'key01',
    path: '/path/to/file'
}, ret => {
    uni.showToast({
        title: JSON.stringify(ret),
        icon: "none"
    });
});

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

第四步: 访问文件

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

  1. 通过obs存储访问,选择左侧"基础配置",点击访问域名右边的复制按钮,复制访问地址, 复制的地址后方加上第三步上传文件的key,在APP中就可以访问对应的文件,最终的地址类似: https://bucketName.obs.xxx.myhuaweicloud.com/test01.png

  2. 通过CDN访问,需要开启CDN,选择左侧的"域名管理",绑定用户域名后,并开启CDN加速,在"加速域名",在之后加上第三步使用的key,就可以访问,访问地址类似: http://xxx.xxx.com/test01.png

第五步: 下载文件

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

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

第六步: 删除文件

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

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

更多功能

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

  • 批量删除
  • 文件列表
  • 获取元数据

隐私、权限声明

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

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

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

插件使用华为云OBS SDK会采集数据,详情可参考: https://support.huaweicloud.com/devg-obs/obs_06_0002.html

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

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