• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# 配置策略
2
3配置策略提供按预先定义的定制配置层级获取对应定制配置目录和文件路径的能力。
4
5>  **说明:**
6>
7>  本模块首批接口从API version 8开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。
8>
9>  本模块接口均为系统接口,三方应用不支持调用。
10
11## 导入模块
12
13```js
14import configPolicy from '@ohos.configPolicy';
15```
16
17## getOneCfgFile
18
19getOneCfgFile(relPath: string, callback: AsyncCallback<string>)
20
21使用callback形式返回指定文件名的最高优先级配置文件路径。
22例如,config.xml在设备中存在以下路径(优先级从低到高):/system/etc/config.xml/sys_pod/etc/config.xml,最终返回/sys_pod/etc/config.xml23
24**系统能力**:SystemCapability.Customization.ConfigPolicy
25
26**参数:**
27| 参数名      | 类型                          | 必填   | 说明                    |
28| -------- | --------------------------- | ---- | --------------------- |
29| relPath  | string                      | 是    | 配置文件名                 |
30| callback | AsyncCallback<string> | 是    | 异步回调,用于返回最高优先级配置文件的路径 |
31
32**示例:**
33  ```js
34  configPolicy.getOneCfgFile('etc/config.xml', (error, value) => {
35      if (error == undefined) {
36          console.log("value is " + value);
37      } else {
38          console.log("error occurs "+ error);
39      }
40  });
41  ```
42
43
44## getOneCfgFile
45
46getOneCfgFile(relPath: string): Promise<string>
47
48使用Promise形式返回指定文件名的最高优先级配置文件路径。
49
50**系统能力**:SystemCapability.Customization.ConfigPolicy
51
52**参数:**
53| 参数名     | 类型     | 必填   | 说明    |
54| ------- | ------ | ---- | ----- |
55| relPath | string | 是    | 配置文件名 |
56
57**返回值:**
58| 类型                    | 说明           |
59| --------------------- | ------------ |
60| Promise<string> | 最高优先级配置文件的路径 |
61
62**示例:**
63  ```js
64  configPolicy.getOneCfgFile('etc/config.xml').then(value => {
65      console.log("value is " + value);
66  }).catch(error => {
67      console.log("getOneCfgFile promise " + error);
68  });
69  ```
70
71
72## getCfgFiles
73
74getCfgFiles(relPath: string, callback: AsyncCallback<Array<string>>)
75
76按优先级从低到高,使用callback形式返回指定文件名所有的文件列表。例如,config.xml在设备中存在以下路径(优先级从低到高):/system/etc/config.xml77/sys_pod/etc/config.xml,最终返回/system/etc/config.xml, /sys_pod/etc/config.xml78
79**系统能力**:SystemCapability.Customization.ConfigPolicy
80
81**参数:**
82| 参数名      | 类型                                       | 必填   | 说明            |
83| -------- | ---------------------------------------- | ---- | ------------- |
84| relPath  | string                                   | 是    | 配置文件名         |
85| callback | AsyncCallback<Array<string>> | 是    | 异步回调,用于返回文件列表 |
86
87**示例:**
88  ```js
89  configPolicy.getCfgFiles('etc/config.xml', (error, value) => {
90      if (error == undefined) {
91          console.log("value is " + value);
92      } else {
93          console.log("error occurs "+ error);
94      }
95  });
96  ```
97
98
99## getCfgFiles
100
101getCfgFiles(relPath: string): Promise<Array<string>>
102
103按优先级从低到高,使用Promise形式返回指定文件名所有的文件列表。
104
105**系统能力**:SystemCapability.Customization.ConfigPolicy
106
107**参数:**
108| 参数名     | 类型     | 必填   | 说明    |
109| ------- | ------ | ---- | ----- |
110| relPath | string | 是    | 配置文件名 |
111
112**返回值:**
113| 类型                                 | 说明   |
114| ---------------------------------- | ---- |
115| Promise<Array<string>> | 文件列表 |
116
117**示例:**
118  ```js
119  configPolicy.getCfgFiles('etc/config.xml').then(value => {
120      console.log("value is " + value);
121  }).catch(error => {
122      console.log("getCfgFiles promise " + error);
123  });
124  ```
125
126
127## getCfgDirList
128
129getCfgDirList(callback: AsyncCallback<Array<string>>)
130
131使用callback形式返回配置层级目录列表。
132
133**系统能力**:SystemCapability.Customization.ConfigPolicy
134
135**参数:**
136| 参数名      | 类型                                       | 必填   | 说明                |
137| -------- | ---------------------------------------- | ---- | ----------------- |
138| callback | AsyncCallback<Array<string>> | 是    | 异步回调,用于返回配置层级目录列表 |
139
140**示例:**
141  ```js
142  configPolicy.getCfgDirList((error, value) => {
143      if (error == undefined) {
144          console.log("value is " + value);
145      } else {
146          console.log("error occurs "+ error);
147      }
148  });
149  ```
150
151
152## getCfgDirList
153
154getCfgDirList(): Promise<Array<string>>
155
156使用Promise形式返回配置层级目录列表。
157
158**系统能力**:SystemCapability.Customization.ConfigPolicy
159
160**返回值:**
161| 类型                                 | 说明       |
162| ---------------------------------- | -------- |
163| Promise<Array<string>> | 配置层级目录列表 |
164
165**示例:**
166  ```js
167  configPolicy.getCfgDirList().then(value => {
168      console.log("value is " + value);
169  }).catch(error => {
170      console.log("getCfgDirList promise " + error);
171  });
172  ```
173
174