• Home
Name Date Size #Lines LOC

..--

AppScope/12-May-2024-2119

common/12-May-2024-963802

doc/12-May-2024-1511

figures/12-May-2024-

product/12-May-2024-5,5315,045

signature/12-May-2024-

.gitignoreD12-May-202471 66

LICENSED12-May-202411.1 KiB202169

OAT.xmlD12-May-20242.5 KiB4926

README.mdD12-May-20243.4 KiB10184

README_ZH.mdD12-May-20243.1 KiB9982

build-profile.json5D12-May-2024893 5454

hvigorfile.jsD12-May-2024778 181

package-lock.jsonD12-May-202453.1 KiB1,2181,217

package.jsonD12-May-2024374 2019

README.md

1# FilePicker
2
3## 简介
4
5FilePicker应用是OpenHarmony中预置的系统应用,为用户提供文件选择及保存功能
6
7### 架构图
8
9![](figures/FP_FMS.png)
10
11## 目录
12
13```
14/applications/standard/filepicker
15├── figures                     # 架构图目录
16├── product                     # 产品层模块目录
17│   └── pad                     # pad模式模块目录
18|       └── src
19|           ├── main
20|               ├── ets
21│                   ├── MainAbility              # MainAbility代码目录
22|                       ├── module               # 公共文件目录
23|                       ├── pages                # 业务特性的View层目录
24|                       ├── workers              # worker对于的js文件目录
25│                   └── AbilityStage.ts
26|               ├── resources   # 资源目录
27|               └── config.json # 项目配置信息
28│   └── phone                   # phone模式模块目录
29|       └── src
30|           ├── main
31|               ├── ets
32│                   ├── MainAbility              # MainAbility代码目录
33|                       ├── module               # 公共文件目录
34|                       ├── pages                # 业务特性的View层目录
35|                       ├── workers              # worker对于的js文件目录
36│                   └── AbilityStage.ts
37|               ├── resources   # 资源目录
38|               └── config.json # 项目配置信息
39├── signature                   # 证书文件目录
40├── LICENSE                     # 许可文件
41```
42
43## 签名
441. 针对product下的每一个模块,配置build.gradle中的signingConfig。
452. 将signature目录下的sign_files.rar解压后放在build.gradle目录中配置的相应路径即可完成默认签名配置。
463. 把signature目录下的sig_hap.rar解压到任意目录。
47
48## 编译运行
491. 签名配置完成后通过IDE Build -> Make All Modules即可编译出每个模块对应的hap包。
502. 将编译生成的签名后的hap包 如phone模块的phone-entry-debug-standard-ark-signed.hap放到sig_hap.rar解压的目录。
513. 修改sign-filepicker-phone.bat中的-inputFile、-outputFile并运行sign-filepicker-phone.bat即可生成可安装的hap包。
52
53## 使用方法
54
55通过startAbilityForResult拉起FilePicker并获取FilePicker返回的数据,示例代码如下
56
57```js
58// 拉起FilePicker选择文件
59globalThis.context.startAbilityForResult(
60    {
61        bundleName: "com.ohos.filepicker",
62        abilityName: "com.ohos.filepicker.MainAbility",
63        parameters: {
64            'startMode': 'choose', //choose or save
65        }
66    },
67    { windowMode: 102 }
68)
69
70// 拉起FilePicker保存文件
71globalThis.context.startAbilityForResult(
72    {
73        bundleName: "com.ohos.filepicker",
74        abilityName: "com.ohos.filepicker.MainAbility",
75        parameters: {
76            'startMode': 'save', //choose or save
77            'saveFile': 'test.jpg',
78        }
79    },
80    { windowMode: 102 }
81)
82
83// file picker返回给startAbilityForResult的数据
84var abilityResult = {
85    resultCode: resultCode,
86    want: {
87        parameters: {
88            'startMode': startMode,
89            'result': result
90        }
91    }
92}
93globalThis.context.terminateSelfWithResult(abilityResult)
94```
95
96## 相关仓
97
98系统应用
99
100**applications_filepicker**
101

README_ZH.md

1# FilePicker
2
3## 简介
4
5FilePicker应用是OpenHarmony中预置的系统应用,为用户提供文件选择及保存功能
6
7### 架构图
8
9![](figures/FP_FMS.png)
10
11## 目录
12
13```
14/applications/standard/filepicker
15├── figures                     # 架构图目录
16├── product                     # 产品层模块目录
17│   └── pad                     # pad模式模块目录
18|       └── src
19|           ├── main
20|               ├── ets
21│                   ├── MainAbility              # MainAbility代码目录
22|                       ├── module               # 公共文件目录
23|                       ├── pages                # 业务特性的View层目录
24|                       ├── workers              # worker对于的js文件目录
25│                   └── AbilityStage.ts
26|               ├── resources   # 资源目录
27|               └── config.json # 项目配置信息
28│   └── phone                   # phone模式模块目录
29|       └── src
30|           ├── main
31|               ├── ets
32│                   ├── MainAbility              # MainAbility代码目录
33|                       ├── module               # 公共文件目录
34|                       ├── pages                # 业务特性的View层目录
35|                       ├── workers              # worker对于的js文件目录
36│                   └── AbilityStage.ts
37|               ├── resources   # 资源目录
38|               └── config.json # 项目配置信息
39├── signature                   # 证书文件目录
40├── LICENSE                     # 许可文件
41```
42
43## 签名
441. [IDE签名配置](doc/signature.md)
45
46## 编译运行
471. 签名配置完成后通过IDE Build -> Make All Modules即可编译出每个模块对应的hap包。
482. 将编译生成的签名后的hap包 如phone模块的phone-entry-debug-standard-ark-signed.hap放到sig_hap.rar解压的目录。
493. 修改sign-filepicker-phone.bat中的-inputFile、-outputFile并运行sign-filepicker-phone.bat即可生成可安装的hap包。
50
51## 使用方法
52
53通过startAbilityForResult拉起FilePicker并获取FilePicker返回的数据,示例代码如下
54
55```js
56// 拉起FilePicker选择文件
57globalThis.context.startAbilityForResult(
58    {
59        bundleName: "com.ohos.filepicker",
60        abilityName: "MainAbility",
61        parameters: {
62            'startMode': 'choose', //choose or save
63        }
64    },
65    { windowMode: 102 }
66)
67
68// 拉起FilePicker保存文件
69globalThis.context.startAbilityForResult(
70	{
71        bundleName: "com.ohos.filepicker",
72        abilityName: "MainAbility",
73        parameters: {
74        'startMode': 'save', //choose or save
75        'saveFile': 'test.jpg',
76        }
77    },
78    { windowMode: 102 }
79)
80
81// file picker返回给startAbilityForResult的数据
82var abilityResult = {
83    resultCode: resultCode,
84    want: {
85        parameters: {
86            'startMode': startMode,
87            'result': result
88        }
89    }
90}
91globalThis.context.terminateSelfWithResult(abilityResult)
92```
93
94## 相关仓
95
96系统应用
97
98**applications_filepicker**
99