• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# 服务卡片开发指导(共享数据应用)
2
3### 介绍
4
5本示例对应 [卡片代理刷新](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/form/arkts-ui-widget-update-by-proxy.md)中数据提供方的共享数据更新功能。
6
7本示例参考[应用模型](https://gitee.com/openharmony/docs/tree/master/zh-cn/application-dev/application-models)8
9### 效果预览
10
11|开发卡片页面|
12|--------------------------------|
13| <img src="screenshots/DatasharePage.jpeg" style="zoom: 33%;" /> |
14
15#### 使用说明
16
171)回到主页,安装<共享数据>应用并点击打开,页面显示有“更新过程数据”按钮;
18
192)点击<更新过程数据>,弹出toast标识过程数据是否发布成功。
20
213)回到主页,安装<共享数据>应用并点击打开,页面显示有“更新持久化数据”按钮;
22
234)点击<更新持久化数据>,弹出toast标识持久化数据是否发布成功。
24
25### 工程目录
26```
27entry/src/main/ets/
28├── DataShareExtAbility
29│   └── DataShareExtAbility.ts				//DataShare共享数据模块
30├── entryability
31│   └── EntryAbility.ts						//共享数据应用默认页面
32└── pages
33    └── Index.ets							//更新过程数据,持久化数据
34```
35### 具体实现
36
37* 本示例作为数据提供方(仅支持系统应用),开启数据共享能力。同时自定义key + subscriberId作为共享数据的标识,用于为卡片代理更新示例提供数据库功能支持。
38
39### 相关权限
40
41[ohos.permission.KEEP_BACKGROUND_RUNNING](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/security/AccessToken/permissions-for-all.md#ohospermissionkeep_background_running)
42
43[ohos.permission.GET_BUNDLE_INFO](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/security/AccessToken/permissions-for-all.md#ohospermissionget_bundle_info)
44
45[ohos.permission.START_ABILITIES_FROM_BACKGROUND](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/security/AccessToken/permissions-for-system-apps.md#ohospermissionstart_abilities_from_background)
46
47[ohos.permission.REQUIRE_FORM](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/security/AccessToken/permissions-for-system-apps.md#ohospermissionrequire_form)
48
49[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)
50
51### 依赖
52
531.`app_signature`字段配置为应用的指纹信息,指纹信息的配置请参见[应用特权配置指南](https://gitee.com/openharmony/docs/blob/master/zh-cn/device-dev/subsystems/subsys-app-privilege-config-guide.md#install_list_capabilityjson中配置)。
54
55```
56[
57  ...
58  {
59    "signingConfigs": ["****"], // 指纹信息
60  }
61]
62```
63
64
65### 约束与限制
66
671. 本示例支持标准系统上运行,支持设备:RK3568;
68
692. 本示例支持API14版本SDK,版本号:5.0.2.57;
70
713. 本示例已支持使DevEco Studio 5.0.1 Release (构建版本:5.0.5.306,构建 2024年12月12日)编译运行;
72
734. 本示例涉及相关权限为system_core级别(相关权限级别可通过[权限定义列表](https://gitee.com/openharmony/docs/blob/OpenHarmony-5.0.1-Release/zh-cn/application-dev/security/AccessToken/permissions-for-all.md)查看),需要手动配置对应级别的权限签名(具体操作可查看[自动化签名方案](https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V2/signing-0000001587684945-V2))74
755. 本示例类型为系统应用,需要手动配置对应级别的应用类型("app-feature": "hos_system_app")。具体可参考profile配置文件[bundle-info对象内部结构]( https://gitee.com/openharmony/docs/blob/eb73c9e9dcdd421131f33bb8ed6ddc030881d06f/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 );
76
77### 下载
78
79如需单独下载本工程,执行如下命令:
80
81```
82git init
83git config core.sparsecheckout true
84echo code/DocsSample/ApplicationModels/WidgetUpdateByProxy/ > .git/info/sparse-checkout
85git remote add origin https://gitee.com/openharmony/applications_app_samples.git
86git pull origin master
87```
88