HarmonyOS 应用文件上传下载
头像 wuwuwu 2026-06-01 11:22:22    发布
0 浏览 0 点赞 0 收藏

一、核心规则


  1. 依赖包:ohos.request必须声明权限ohos.permission.INTERNET
  2. 不支持抓包工具(Charles/Fiddler)、不支持子线程(TaskPool)调用
  3. 两种实现:request.xxxFile(简易)、request.agent(功能更强)


二、上传文件


1. request.uploadFile


  • 仅支持:应用缓存目录 cacheDir
  • URI 格式:internal://cache/文件名

2. request.agent.create


  • 支持:公共文件 + 应用缓存目录
  • 需手动管理任务:完成后 request.agent.remove(task.tid)


三、下载文件(三类场景)


1. 下载到应用内部目录


  • 两种方式:request.downloadFile / request.agent
  • 路径:context.cacheDir 或文件目录

2. 下载到用户公共文件(API 20+)


  • 文档:DocumentViewPicker.save() 获取 URI
  • 音频:AudioViewPicker.save() 获取 URI
  • 图片 / 视频:PhotoAccessHelper.createAsset(),需权限 ohos.permission.WRITE_IMAGEVIDEO

3. 速度与超时限制(API 18+/20+)

  • task.setMaxSpeed():设置最大速度
  • config.minSpeed:最低限速 + 超时判定
  • config.timeout:连接超时 + 总超时


四、高级配置


  1. HTTP 拦截 配置文件:src/main/resources/base/profile/network_config.json 控制明文 HTTP 是否允许
  2. 通知栏跳转(API 22+) 配合 WantAgent,在 notification.wantAgent 配置跳转目标 Ability


五、一句话速记

用 ohos.request 做上传下载,必须加网络权限;简单场景用 uploadFile/downloadFile,复杂 / 公共文件用 agent,下载到用户相册需对应 Picker/PhotoHelper + 权限,可限速、超时、配置 HTTP 与通知跳转。

©本站发布的所有内容,包括但不限于文字、图片、音频、视频、图表、标志、标识、广告、商标、商号、域名、软件、程序等,除特别标明外,均来源于网络或用户投稿,版权归原作者或原出处所有。我们致力于保护原作者版权,若涉及版权问题,请及时联系我们进行处理。
分类
HarmonyOS
头像

wuwuwu

我还没有写个人简介......

5

帖子

0

提问

0

粉丝

关注
最新发布

沉浸式怎么设置

2026-06-01 15:41:06    发布

鸿蒙系统是否会推出一个自己的框架

2026-05-28 11:08:46    发布
热门推荐
地址:北京市朝阳区北三环东路三元桥曙光西里甲1号第三置业A座1508室 商务内容合作QQ:2291221 电话:13391790444或(010)62178877
版权所有:电脑商情信息服务集团 北京赢邦策略咨询有限责任公司
声明:本媒体部分图片、文章来源于网络,版权归原作者所有,我司致力于保护作者版权,如有侵权,请与我司联系删除

京ICP备:2022009079号-2

京公网安备:11010502051901号

ICP证:京B2-20230255