• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1## 上传文件
2
3### 介绍
4
51. 本工程主要实现了对以下指南文档中 https://docs.openharmony.cn/pages/v5.0/zh-cn/application-dev/web/web-file-upload.md 示例代码片段的工程化,主要目标是实现指南中示例代码需要与sample工程文件同源。
6
7### UploadFiles
8
9#### 介绍
10
111. 本示例主要介绍Web组件上传文件功能,Web组件支持前端页面选择文件上传功能,应用开发者可以使用onShowvfileSelector)接口来处理前端页面文件上传的请求,如果应用开发者不做任何处理,Web会提供默认行为来处理前端页面文件上传的请求。
12
13#### 效果预览
14
15| 主页                                                       |                                                            |
16| ---------------------------------------------------------- | ---------------------------------------------------------- |
17| <img src="./screenshots/UploadFiles_1.png" width="360;" /> | <img src="./screenshots/UploadFiles_2.png" width="360;" /> |
18
19使用方法
20
211. 在主页点击选择文件按钮触发onShowFileSelector事件创建DocumentSelectOptions和DocumentViewPicker,用于打开文件选择器,弹出文件选择器,用户可选择一个文件。
22
23## 使用Web组件的下载能力
24
25### 介绍
26
271. 本工程主要实现了对以下指南文档中 https://docs.openharmony.cn/pages/v5.0/zh-cn/application-dev/web/web-download.md 示例代码片段的工程化,主要目标是实现指南中示例代码需要与sample工程文件同源。
28
29### ListenForPageDown
30
31#### 介绍
32
331. 本示例主要介绍使用Web组件监听页面触发的下载功能,通过setDownloadDelegate()向Web组件注册一个DownloadDelegate来监听页面触发的下载任务。资源由Web组件来下载,Web组件会通过DownloadDelegate将下载的进度通知给应用。
34
35#### 效果预览
36
37| 主页                                                         | 下载                                                         |
38| ------------------------------------------------------------ | ------------------------------------------------------------ |
39| <img src="./screenshots/ListenForPageDown_1.png" width="360;" /> | <img src="./screenshots/ListenForPageDown_2.png" width="360;" /> |
40
41使用说明
42
431. 点击setDownloadDelegate按钮,定义下载委托回调。
442. 点击下载download.html链接,触发下载任务。
45
46### InitiatingADownloadTask
47
48#### 介绍
49
501. 本示例主要介绍使用Web组件的下载能力。在Web组件启动时,可通过resumeDownload()接口恢复未完成的下载任务。
51
52
53#### 效果预览
54
55| 主页                                                         | 下载                                                         |
56| ------------------------------------------------------------ | ------------------------------------------------------------ |
57| <img src="./screenshots/InitiatingADownloadTask_1.png" width="360;" /> | <img src="./screenshots/InitiatingADownloadTask_2.png" width="360;" /> |
58
59使用说明
60
611. 点击setDownloadDelegate按钮,定义下载委托回调。
621. 使用startDownload()接口发起一个下载。
63
64### ResumeDownload
65
66#### 介绍
67
681. 本示例主要介绍使用Web组件的下载能力。使用startDownload()接口发起一个下载,Web组件发起的下载会根据当前显示的url以及Web组件默认的Referrer Policy来计算referrer。
69
70
71#### 效果预览
72
73| 主页                                                        |
74| ----------------------------------------------------------- |
75| <img src="./screenshots/ResumeDownload.png" width="360;" /> |
76
77使用说明
78
791. 点击setDownloadDelegate按钮,定义下载委托回调。
801. 使用startDownload()接口发起一个下载。
811. 通过record按钮将当前下载任务保存至持久化文件中,记录下载任务信息。
821. 点击recovery按钮恢复下载任务。
83
84### 工程目录
85
86```
87entry/src/main/
88|---ets
89|---|---entryability
90|---|---|---EntryAbility.ets
91|---|---pages
92|---|---|---UploadFiles.ets
93|---|---|---downloadUtil.ets
94|---|---|---Index.ets						// 首页
95|---|---|---InitiatingADownloadTask.ets
96|---|---|---ListenForPageDown.ets
97|---|---|---ResumeDownload.ets
98|---resources								// 静态资源
99|---ohosTest
100|---|---ets
101|---|---|---tests
102|---|---|---|---Ability.test.ets            // 自动化测试用例
103```
104
105### 相关权限
106
107[ohos.permission.INTERNET](https://docs.openharmony.cn/pages/v5.0/zh-cn/application-dev/security/AccessToken/permissions-for-all.md#ohospermissioninternet)
108
109### 依赖
110
111不涉及。
112
113### 约束与限制
114
1151. 本示例仅支持标准系统上运行,支持设备:RK3568。
1162. 本示例支持API14版本SDK,SDK版本号(API Version 14 Release)。
1173. 本示例需要使用DevEco Studio 版本号(5.0.1Release)才可编译运行。
118
119### 下载
120
121如需单独下载本工程,执行如下命令:
122
123```
124git init
125git config core.sparsecheckout true
126echo code/DocsSample/ArkWeb/ManageWebPageFileIO > .git/info/sparse-checkout
127git remote add origin https://gitee.com/openharmony/applications_app_samples.git
128git pull origin master
129```