• Home
Name Date Size #Lines LOC

..--

AppScope/06-May-2025-3532

entry/06-May-2025-1,176978

hvigor/06-May-2025-2322

screenshots/zh/06-May-2025-

.gitignoreD06-May-2025119 1111

README_zh.mdD06-May-20254.6 KiB8963

build-profile.json5D06-May-20251.1 KiB4342

hvigorfile.tsD06-May-2025768 171

hvigorwD06-May-20252.1 KiB6228

hvigorw.batD06-May-20252 KiB7356

oh-package.json5D06-May-2025841 2826

ohosTest_zh.mdD06-May-2025736 86

README_zh.md

1# 应用主动添加数据代理卡片到桌面
2
3### 介绍
4
5本示例主要展示了使用[@ohos.app.form.formBindingData](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/reference/apis-form-kit/js-apis-app-form-formBindingData.md)、[@ohos.app.form.formProvider](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/reference/apis-form-kit/js-apis-app-form-formProvider-sys.md)等接口,实现了在com.ohos.hag.famanager应用上,主动添加数据代理卡片到桌面的功能。
6
7### 效果预览
8
9| 应用主页面                          | 添加Js与ArkTs数据代理卡片到桌面        |
10| ------- | ------- |
11| ![AppStor_main](./screenshots/zh/menu.jpeg) | ![AppStor_preview](./screenshots/zh/card.jpeg) |
12
13使用说明
14
151. 点击桌面上AppStore应用图标,打开com.ohos.hag.famanager应用。
16
172. 点击按钮<添加ArkTs卡片到桌面>或<添加Js卡片到桌面>按钮,AppStore应用自动切到后台并且开始将数据代理卡片添加到桌面。
18
193. 桌面切到前台显示后,刷新组件并将添加的数据代理卡片显示到页面上。
20
21### 工程目录
22
23```
24entry/src/main/
25├──ets
26|  ├──entryability
27|  |  └──EntryAbility.ts
28|  ├──entryformability
29|  |  └──EntryFormAbility.ts
30|  ├──logger
31|  |  └──Logger.ts
32|  ├──pages
33|  |  └──Index.ets                             // EntryAbilit页面
34|  └──widget
35|     └──pages
36|        └──WidgetCard.ets                     // ArkTS卡片
37├──js
38|  ├──common
39|  ├──i18n
40|  └──jswidget
41|     └──pages
42|        └──index
43|           ├──index.css                       // JS卡片样式
44|           ├──index.hml                       // JS卡片
45|           └──index.json                      // JS卡片默认值
46└──resources                                   // 资源信息
47```
48
49### 具体实现
50
51- 发布ArkTs数据代理卡片到桌面
52  - 使用requestPublishForm接口,将应用内的ArkTs数据代理卡片主动添加到桌面上,接口参考:[@ohos.app.form.formProvider](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/reference/apis-form-kit/js-apis-app-form-formProvider-sys.md)
53- 发布Js数据代理卡片到桌面
54  - 使用requestPublishForm接口,将应用内的Js数据代理卡片主动添加到桌面上,接口参考:[@ohos.app.form.formProvider](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/reference/apis-form-kit/js-apis-app-form-formProvider-sys.md)
55
56### 相关权限
57
58[ohos.permission.GET_BUNDLE_INFO_PRIVILEGED](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/security/AccessToken/permissions-for-system-apps.md#ohospermissionget_bundle_info_privileged)
59
60[ohos.permission.REQUIRE_FORM](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/security/AccessToken/permissions-for-system-apps.md#ohospermissionrequire_form)
61
62### 依赖
63
64不涉及
65
66### 约束与限制
67
681.本示例仅支持标准系统上运行,支持设备:RK3568。
69
702.本示例为Stage模型,支持API10版本SDK,SDK版本号(API Version 10 Release),镜像版本号(4.0 Release)。
71
723.本示例需要使用DevEco Studio 版本号(4.0 Release)及以上版本才可编译运行。
73
744.本示例需要使用Full SDK编译。使用Full SDK时需要手动从镜像站点获取,并在DevEco Studio中替换,具体操作可参考[替换指南](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/faqs/full-sdk-switch-guide.md)75
765.本示例所配置的权限为system_basic级别(相关权限级别可通过[权限定义列表](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/security/AccessToken/permissions-for-system-apps.md)查看),需要手动配置对应级别的权限签名(具体操作可查看[自动化签名方案](https://docs.openharmony.cn/pages/v4.0/zh-cn/application-dev/security/hapsigntool-overview.md))
77
786.本示例类型为系统应用,需要手动配置对应级别的应用类型("app-feature": "hos_system_app")。具体可参考profile配置文件[bundle-info对象内部结构](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/security/app-provision-structure.md#bundle-info%E5%AF%B9%E8%B1%A1%E5%86%85%E9%83%A8%E7%BB%93%E6%9E%84)
79
80### 下载
81
82如需单独下载本工程,执行如下命令:
83```
84git init
85git config core.sparsecheckout true
86echo code/SystemFeature/Widget/RequestAddForm/ > .git/info/sparse-checkout
87git remote add origin https://gitee.com/openharmony/applications_app_samples.git
88git pull origin master
89```