1e41f4b71Sopenharmony_ci# DataAbility组件配置
2e41f4b71Sopenharmony_ci
3e41f4b71Sopenharmony_ci
4e41f4b71Sopenharmony_ci## URI介绍
5e41f4b71Sopenharmony_ci
6e41f4b71Sopenharmony_ciDataAbility的提供方和使用方都通过URI(Uniform Resource Identifier)来标识一个具体的数据,例如数据库中的某个表或磁盘上的某个文件。此处的URI仍基于URI通用标准,格式如下:
7e41f4b71Sopenharmony_ci
8e41f4b71Sopenharmony_ci![fa-dataability-uri](figures/fa-dataability-uri.png)
9e41f4b71Sopenharmony_ci
10e41f4b71Sopenharmony_ci- scheme:协议方案名,固定为"dataability",代表Data Ability所使用的协议类型。
11e41f4b71Sopenharmony_ci
12e41f4b71Sopenharmony_ci- authority:设备ID。如果为跨设备场景,则为目标设备的ID;如果为本地设备场景,则不需要填写。
13e41f4b71Sopenharmony_ci
14e41f4b71Sopenharmony_ci- path:资源的路径信息,代表特定资源的位置信息。
15e41f4b71Sopenharmony_ci
16e41f4b71Sopenharmony_ci- query:查询参数。
17e41f4b71Sopenharmony_ci
18e41f4b71Sopenharmony_ci- fragment:可以用于指示要访问的子资源。
19e41f4b71Sopenharmony_ci
20e41f4b71Sopenharmony_ciURI示例:
21e41f4b71Sopenharmony_ci
22e41f4b71Sopenharmony_ci- 跨设备场景:dataability://_device_id_/_com.domainname.dataability.persondata_/_person_/_10_
23e41f4b71Sopenharmony_ci
24e41f4b71Sopenharmony_ci- 本地设备:dataability:///_com.domainname.dataability.persondata_/_person_/_1_
25e41f4b71Sopenharmony_ci
26e41f4b71Sopenharmony_ci> **说明:**
27e41f4b71Sopenharmony_ci> 本地设备的"device_id"字段为空,因此在"dataability:"后面有三个"/"。
28e41f4b71Sopenharmony_ci
29e41f4b71Sopenharmony_ci
30e41f4b71Sopenharmony_ci## 部分配置项介绍
31e41f4b71Sopenharmony_ci
32e41f4b71Sopenharmony_ci与PageAbility类似,DataAbility的相关配置在config.json配置文件的"module"对象的"abilities"对象中,与PageAbility的区别在于"type"属性及"uri"属性。
33e41f4b71Sopenharmony_ci
34e41f4b71Sopenharmony_ci  **表1** DataAbility的部分配置项说明
35e41f4b71Sopenharmony_ci
36e41f4b71Sopenharmony_ci| Json重要字段 | 备注说明 |
37e41f4b71Sopenharmony_ci| -------- | -------- |
38e41f4b71Sopenharmony_ci| "name" | Ability名称。 |
39e41f4b71Sopenharmony_ci| "type" | UIAbility类型,DataAbility的类型为"data"。 |
40e41f4b71Sopenharmony_ci| "uri" | 通信使用的URI。 |
41e41f4b71Sopenharmony_ci| "visible" | 对其他应用是否可见,设置为true时,DataAbility才能与其他应用进行通信传输数据。 |
42e41f4b71Sopenharmony_ci
43e41f4b71Sopenharmony_ciconfig.json配置样例
44e41f4b71Sopenharmony_ci
45e41f4b71Sopenharmony_ci
46e41f4b71Sopenharmony_ci```json
47e41f4b71Sopenharmony_ci"abilities": [
48e41f4b71Sopenharmony_ci  ...
49e41f4b71Sopenharmony_ci  {
50e41f4b71Sopenharmony_ci    "name": ".DataAbility",
51e41f4b71Sopenharmony_ci    "srcLanguage": "ets",
52e41f4b71Sopenharmony_ci    "srcPath": "DataAbility",
53e41f4b71Sopenharmony_ci    "icon": "$media:icon",
54e41f4b71Sopenharmony_ci    "description": "$string:DataAbility_desc",
55e41f4b71Sopenharmony_ci    "type": "data",
56e41f4b71Sopenharmony_ci    "visible": true,
57e41f4b71Sopenharmony_ci    "uri": "dataability://com.samples.famodelabilitydevelop.DataAbility",
58e41f4b71Sopenharmony_ci    "readPermission": "ohos.permission.READ_CONTACTS",
59e41f4b71Sopenharmony_ci    "writePermission": "ohos.permission.WRITE_CONTACTS"
60e41f4b71Sopenharmony_ci  },
61e41f4b71Sopenharmony_ci  ...
62e41f4b71Sopenharmony_ci]
63e41f4b71Sopenharmony_ci```
64e41f4b71Sopenharmony_ci
65e41f4b71Sopenharmony_ciDataAbility支持的配置项及详细说明详见[module对象内部结构](../quick-start/module-structure.md)。
66