1e41f4b71Sopenharmony_ci# @ohos.net.policy (网络策略管理)(系统接口)
2e41f4b71Sopenharmony_ci
3e41f4b71Sopenharmony_ci网络策略管理通过对用户使用数据流量进行控制管理,采用防火墙技术实现网络策略的管理。
4e41f4b71Sopenharmony_ci
5e41f4b71Sopenharmony_ci> **说明:**
6e41f4b71Sopenharmony_ci>
7e41f4b71Sopenharmony_ci> 本模块首批接口从 API version 10 开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。
8e41f4b71Sopenharmony_ci> 本模块为系统接口。
9e41f4b71Sopenharmony_ci
10e41f4b71Sopenharmony_ci## 导入模块
11e41f4b71Sopenharmony_ci
12e41f4b71Sopenharmony_ci```ts
13e41f4b71Sopenharmony_ciimport { policy } from '@kit.NetworkKit';
14e41f4b71Sopenharmony_ci```
15e41f4b71Sopenharmony_ci
16e41f4b71Sopenharmony_ci## policy.setBackgroundAllowed<sup>10+</sup>
17e41f4b71Sopenharmony_ci
18e41f4b71Sopenharmony_cisetBackgroundAllowed(isAllowed: boolean, callback: AsyncCallback\<void>): void
19e41f4b71Sopenharmony_ci
20e41f4b71Sopenharmony_ci设置是否允许后台应用访问网络,使用 callback 方式作为异步方法。
21e41f4b71Sopenharmony_ci
22e41f4b71Sopenharmony_ci**系统接口**:此接口为系统接口。
23e41f4b71Sopenharmony_ci
24e41f4b71Sopenharmony_ci**需要权限**:ohos.permission.MANAGE_NET_STRATEGY
25e41f4b71Sopenharmony_ci
26e41f4b71Sopenharmony_ci**系统能力**:SystemCapability.Communication.NetManager.Core
27e41f4b71Sopenharmony_ci
28e41f4b71Sopenharmony_ci**参数:**
29e41f4b71Sopenharmony_ci
30e41f4b71Sopenharmony_ci| 参数名    | 类型                 | 必填 | 说明                                                         |
31e41f4b71Sopenharmony_ci| --------- | -------------------- | ---- | ------------------------------------------------------------ |
32e41f4b71Sopenharmony_ci| isAllowed | boolean              | 是   | 是否允许应用后台使用数据                                     |
33e41f4b71Sopenharmony_ci| callback  | AsyncCallback\<void> | 是   | 回调函数,成功时,err 为 undefined,失败返回错误码错误信息。 |
34e41f4b71Sopenharmony_ci
35e41f4b71Sopenharmony_ci**错误码:**
36e41f4b71Sopenharmony_ci
37e41f4b71Sopenharmony_ci| 错误码 ID | 错误信息                                     |
38e41f4b71Sopenharmony_ci| --------- | -------------------------------------------- |
39e41f4b71Sopenharmony_ci| 201       | Permission denied.                           |
40e41f4b71Sopenharmony_ci| 202       | Non-system applications use system APIs.     |
41e41f4b71Sopenharmony_ci| 401       | Parameter error.                             |
42e41f4b71Sopenharmony_ci| 2100001   | Invalid parameter value.                     |
43e41f4b71Sopenharmony_ci| 2100002   | Failed to connect to the service.            |
44e41f4b71Sopenharmony_ci| 2100003   | System internal error.                       |
45e41f4b71Sopenharmony_ci
46e41f4b71Sopenharmony_ci**示例:**
47e41f4b71Sopenharmony_ci
48e41f4b71Sopenharmony_ci```ts
49e41f4b71Sopenharmony_ciimport { BusinessError } from '@kit.BasicServicesKit';
50e41f4b71Sopenharmony_ci
51e41f4b71Sopenharmony_cipolicy.setBackgroundAllowed(true, (error: BusinessError) => {
52e41f4b71Sopenharmony_ci  console.log(JSON.stringify(error));
53e41f4b71Sopenharmony_ci});
54e41f4b71Sopenharmony_ci```
55e41f4b71Sopenharmony_ci
56e41f4b71Sopenharmony_ci## policy.setBackgroundAllowed<sup>10+</sup>
57e41f4b71Sopenharmony_ci
58e41f4b71Sopenharmony_cisetBackgroundAllowed(isAllowed: boolean): Promise\<void>
59e41f4b71Sopenharmony_ci
60e41f4b71Sopenharmony_ci设置是否允许后台应用访问网络,使用 Promise 方式作为异步方法。
61e41f4b71Sopenharmony_ci
62e41f4b71Sopenharmony_ci**系统接口**:此接口为系统接口。
63e41f4b71Sopenharmony_ci
64e41f4b71Sopenharmony_ci**需要权限**:ohos.permission.MANAGE_NET_STRATEGY
65e41f4b71Sopenharmony_ci
66e41f4b71Sopenharmony_ci**系统能力**:SystemCapability.Communication.NetManager.Core
67e41f4b71Sopenharmony_ci
68e41f4b71Sopenharmony_ci**参数:**
69e41f4b71Sopenharmony_ci
70e41f4b71Sopenharmony_ci| 参数名    | 类型    | 必填 | 说明                     |
71e41f4b71Sopenharmony_ci| --------- | ------- | ---- | ------------------------ |
72e41f4b71Sopenharmony_ci| isAllowed | boolean | 是   | 是否允许应用后台使用数据 |
73e41f4b71Sopenharmony_ci
74e41f4b71Sopenharmony_ci**错误码:**
75e41f4b71Sopenharmony_ci
76e41f4b71Sopenharmony_ci| 错误码 ID | 错误信息                                     |
77e41f4b71Sopenharmony_ci| --------- | -------------------------------------------- |
78e41f4b71Sopenharmony_ci| 201       | Permission denied.                           |
79e41f4b71Sopenharmony_ci| 202       | Non-system applications use system APIs.     |
80e41f4b71Sopenharmony_ci| 401       | Parameter error.                             |
81e41f4b71Sopenharmony_ci| 2100001   | Invalid parameter value.                     |
82e41f4b71Sopenharmony_ci| 2100002   | Failed to connect to the service.            |
83e41f4b71Sopenharmony_ci| 2100003   | System internal error.                       |
84e41f4b71Sopenharmony_ci
85e41f4b71Sopenharmony_ci**返回值:**
86e41f4b71Sopenharmony_ci
87e41f4b71Sopenharmony_ci| 类型           | 说明                                                              |
88e41f4b71Sopenharmony_ci| -------------- | ----------------------------------------------------------------- |
89e41f4b71Sopenharmony_ci| Promise\<void> | 以 Promise 形式返回设定结果,成功返回空,失败返回错误码错误信息。 |
90e41f4b71Sopenharmony_ci
91e41f4b71Sopenharmony_ci**示例:**
92e41f4b71Sopenharmony_ci
93e41f4b71Sopenharmony_ci```ts
94e41f4b71Sopenharmony_ciimport { BusinessError } from '@kit.BasicServicesKit';
95e41f4b71Sopenharmony_ci
96e41f4b71Sopenharmony_cipolicy.setBackgroundAllowed(true).then(() => {
97e41f4b71Sopenharmony_ci  console.log("setBackgroundAllowed success");
98e41f4b71Sopenharmony_ci}).catch((error: BusinessError) => {
99e41f4b71Sopenharmony_ci  console.log(JSON.stringify(error));
100e41f4b71Sopenharmony_ci});
101e41f4b71Sopenharmony_ci```
102e41f4b71Sopenharmony_ci
103e41f4b71Sopenharmony_ci## policy.isBackgroundAllowed<sup>10+</sup>
104e41f4b71Sopenharmony_ci
105e41f4b71Sopenharmony_ciisBackgroundAllowed(callback: AsyncCallback\<boolean>): void
106e41f4b71Sopenharmony_ci
107e41f4b71Sopenharmony_ci获取当前应用是否允许后台访问网络,使用 callback 方式作为异步方法。
108e41f4b71Sopenharmony_ci
109e41f4b71Sopenharmony_ci**系统接口**:此接口为系统接口。
110e41f4b71Sopenharmony_ci
111e41f4b71Sopenharmony_ci**需要权限**:ohos.permission.MANAGE_NET_STRATEGY
112e41f4b71Sopenharmony_ci
113e41f4b71Sopenharmony_ci**系统能力**:SystemCapability.Communication.NetManager.Core
114e41f4b71Sopenharmony_ci
115e41f4b71Sopenharmony_ci**参数:**
116e41f4b71Sopenharmony_ci
117e41f4b71Sopenharmony_ci| 参数名   | 类型                    | 必填 | 说明                                                             |
118e41f4b71Sopenharmony_ci| -------- | ----------------------- | ---- | ---------------------------------------------------------------- |
119e41f4b71Sopenharmony_ci| callback | AsyncCallback\<boolean> | 是   | 回调函数,返回 true 代表后台策略为允许。失败返回错误码错误信息。 |
120e41f4b71Sopenharmony_ci
121e41f4b71Sopenharmony_ci**错误码:**
122e41f4b71Sopenharmony_ci
123e41f4b71Sopenharmony_ci| 错误码 ID | 错误信息                                     |
124e41f4b71Sopenharmony_ci| --------- | -------------------------------------------- |
125e41f4b71Sopenharmony_ci| 201       | Permission denied.                           |
126e41f4b71Sopenharmony_ci| 202       | Non-system applications use system APIs.     |
127e41f4b71Sopenharmony_ci| 401       | Parameter error.                             |
128e41f4b71Sopenharmony_ci| 2100001   | Invalid parameter value.                     |
129e41f4b71Sopenharmony_ci| 2100002   | Failed to connect to the service.            |
130e41f4b71Sopenharmony_ci| 2100003   | System internal error.                       |
131e41f4b71Sopenharmony_ci
132e41f4b71Sopenharmony_ci**示例:**
133e41f4b71Sopenharmony_ci
134e41f4b71Sopenharmony_ci```ts
135e41f4b71Sopenharmony_ciimport { BusinessError } from '@kit.BasicServicesKit';
136e41f4b71Sopenharmony_ci
137e41f4b71Sopenharmony_cipolicy.isBackgroundAllowed((error: BusinessError, data: boolean) => {
138e41f4b71Sopenharmony_ci  console.log(JSON.stringify(error));
139e41f4b71Sopenharmony_ci  console.log(JSON.stringify(data));
140e41f4b71Sopenharmony_ci});
141e41f4b71Sopenharmony_ci```
142e41f4b71Sopenharmony_ci
143e41f4b71Sopenharmony_ci## policy.isBackgroundAllowed<sup>10+</sup>
144e41f4b71Sopenharmony_ci
145e41f4b71Sopenharmony_ciisBackgroundAllowed(): Promise\<boolean>;
146e41f4b71Sopenharmony_ci
147e41f4b71Sopenharmony_ci获取当前应用是否允许后台访问网络,使用 Promise 方式作为异步方法。
148e41f4b71Sopenharmony_ci
149e41f4b71Sopenharmony_ci**系统接口**:此接口为系统接口。
150e41f4b71Sopenharmony_ci
151e41f4b71Sopenharmony_ci**需要权限**:ohos.permission.MANAGE_NET_STRATEGY
152e41f4b71Sopenharmony_ci
153e41f4b71Sopenharmony_ci**系统能力**:SystemCapability.Communication.NetManager.Core
154e41f4b71Sopenharmony_ci
155e41f4b71Sopenharmony_ci**返回值:**
156e41f4b71Sopenharmony_ci
157e41f4b71Sopenharmony_ci| 类型              | 说明                                                                                 |
158e41f4b71Sopenharmony_ci| ----------------- | ------------------------------------------------------------------------------------ |
159e41f4b71Sopenharmony_ci| Promise\<boolean> | 以 Promise 形式返回设定结果。 返回 true 代表后台策略为允许。失败返回错误码错误信息。 |
160e41f4b71Sopenharmony_ci
161e41f4b71Sopenharmony_ci**错误码:**
162e41f4b71Sopenharmony_ci
163e41f4b71Sopenharmony_ci| 错误码 ID | 错误信息                                     |
164e41f4b71Sopenharmony_ci| --------- | -------------------------------------------- |
165e41f4b71Sopenharmony_ci| 201       | Permission denied.                           |
166e41f4b71Sopenharmony_ci| 202       | Non-system applications use system APIs.     |
167e41f4b71Sopenharmony_ci| 401       | Parameter error.                             |
168e41f4b71Sopenharmony_ci| 2100001   | Invalid parameter value.                     |
169e41f4b71Sopenharmony_ci| 2100002   | Failed to connect to the service.            |
170e41f4b71Sopenharmony_ci| 2100003   | System internal error.                       |
171e41f4b71Sopenharmony_ci
172e41f4b71Sopenharmony_ci**示例:**
173e41f4b71Sopenharmony_ci
174e41f4b71Sopenharmony_ci```ts
175e41f4b71Sopenharmony_ciimport { BusinessError } from '@kit.BasicServicesKit';
176e41f4b71Sopenharmony_ci
177e41f4b71Sopenharmony_cipolicy
178e41f4b71Sopenharmony_ci  .isBackgroundAllowed()
179e41f4b71Sopenharmony_ci  .then((data: boolean) => {
180e41f4b71Sopenharmony_ci    console.log(JSON.stringify(data));
181e41f4b71Sopenharmony_ci  })
182e41f4b71Sopenharmony_ci  .catch((error: BusinessError) => {
183e41f4b71Sopenharmony_ci    console.log(JSON.stringify(error));
184e41f4b71Sopenharmony_ci  });
185e41f4b71Sopenharmony_ci```
186e41f4b71Sopenharmony_ci
187e41f4b71Sopenharmony_ci## policy.setPolicyByUid<sup>10+</sup>
188e41f4b71Sopenharmony_ci
189e41f4b71Sopenharmony_cisetPolicyByUid(uid: number, policy: NetUidPolicy, callback: AsyncCallback\<void>): void
190e41f4b71Sopenharmony_ci
191e41f4b71Sopenharmony_ci设置对应 uid 应用是否能够访问计量网络的策略,使用 callback 方式作为异步方法。
192e41f4b71Sopenharmony_ci
193e41f4b71Sopenharmony_ci**系统接口**:此接口为系统接口。
194e41f4b71Sopenharmony_ci
195e41f4b71Sopenharmony_ci**需要权限**:ohos.permission.MANAGE_NET_STRATEGY
196e41f4b71Sopenharmony_ci
197e41f4b71Sopenharmony_ci**系统能力**:SystemCapability.Communication.NetManager.Core
198e41f4b71Sopenharmony_ci
199e41f4b71Sopenharmony_ci**参数:**
200e41f4b71Sopenharmony_ci
201e41f4b71Sopenharmony_ci| 参数名   | 类型                            | 必填 | 说明                                           |
202e41f4b71Sopenharmony_ci| -------- | ------------------------------- | ---- | ---------------------------------------------- |
203e41f4b71Sopenharmony_ci| uid      | number                          | 是   | app 唯一标识符                                 |
204e41f4b71Sopenharmony_ci| policy   | [NetUidPolicy](#netuidpolicy10) | 是   | 应用对应的策略                                 |
205e41f4b71Sopenharmony_ci| callback | AsyncCallback\<void>            | 是   | 回调函数,成功返回空,失败返回错误码错误信息。 |
206e41f4b71Sopenharmony_ci
207e41f4b71Sopenharmony_ci**错误码:**
208e41f4b71Sopenharmony_ci
209e41f4b71Sopenharmony_ci| 错误码 ID | 错误信息                                     |
210e41f4b71Sopenharmony_ci| --------- | -------------------------------------------- |
211e41f4b71Sopenharmony_ci| 201       | Permission denied.                           |
212e41f4b71Sopenharmony_ci| 202       | Non-system applications use system APIs.     |
213e41f4b71Sopenharmony_ci| 401       | Parameter error.                             |
214e41f4b71Sopenharmony_ci| 2100001   | Invalid parameter value.                     |
215e41f4b71Sopenharmony_ci| 2100002   | Failed to connect to the service.            |
216e41f4b71Sopenharmony_ci| 2100003   | System internal error.                       |
217e41f4b71Sopenharmony_ci
218e41f4b71Sopenharmony_ci**示例:**
219e41f4b71Sopenharmony_ci
220e41f4b71Sopenharmony_ci```ts
221e41f4b71Sopenharmony_ciimport { BusinessError } from '@kit.BasicServicesKit';
222e41f4b71Sopenharmony_ci
223e41f4b71Sopenharmony_cipolicy.setPolicyByUid(11111, policy.NetUidPolicy.NET_POLICY_NONE, (error: BusinessError) => {
224e41f4b71Sopenharmony_ci  console.log(JSON.stringify(error));
225e41f4b71Sopenharmony_ci});
226e41f4b71Sopenharmony_ci```
227e41f4b71Sopenharmony_ci
228e41f4b71Sopenharmony_ci## policy.setPolicyByUid<sup>10+</sup>
229e41f4b71Sopenharmony_ci
230e41f4b71Sopenharmony_cisetPolicyByUid(uid: number, policy: NetUidPolicy): Promise\<void>;
231e41f4b71Sopenharmony_ci
232e41f4b71Sopenharmony_ci设置对应 uid 应用是否能够访问计量网络的策略,使用 Promise 方式作为异步方法。
233e41f4b71Sopenharmony_ci
234e41f4b71Sopenharmony_ci**系统接口**:此接口为系统接口。
235e41f4b71Sopenharmony_ci
236e41f4b71Sopenharmony_ci**需要权限**:ohos.permission.MANAGE_NET_STRATEGY
237e41f4b71Sopenharmony_ci
238e41f4b71Sopenharmony_ci**系统能力**:SystemCapability.Communication.NetManager.Core
239e41f4b71Sopenharmony_ci
240e41f4b71Sopenharmony_ci**参数:**
241e41f4b71Sopenharmony_ci
242e41f4b71Sopenharmony_ci| 参数名 | 类型                            | 必填 | 说明           |
243e41f4b71Sopenharmony_ci| ------ | ------------------------------- | ---- | -------------- |
244e41f4b71Sopenharmony_ci| uid    | number                          | 是   | app 唯一标识符 |
245e41f4b71Sopenharmony_ci| policy | [NetUidPolicy](#netuidpolicy10) | 是   | 应用对应的策略 |
246e41f4b71Sopenharmony_ci
247e41f4b71Sopenharmony_ci**返回值:**
248e41f4b71Sopenharmony_ci
249e41f4b71Sopenharmony_ci| 类型           | 说明                                                              |
250e41f4b71Sopenharmony_ci| -------------- | ----------------------------------------------------------------- |
251e41f4b71Sopenharmony_ci| Promise\<void> | 以 Promise 形式返回设定结果。成功返回空,失败返回错误码错误信息。 |
252e41f4b71Sopenharmony_ci
253e41f4b71Sopenharmony_ci**错误码:**
254e41f4b71Sopenharmony_ci
255e41f4b71Sopenharmony_ci| 错误码 ID | 错误信息                                     |
256e41f4b71Sopenharmony_ci| --------- | -------------------------------------------- |
257e41f4b71Sopenharmony_ci| 201       | Permission denied.                           |
258e41f4b71Sopenharmony_ci| 202       | Non-system applications use system APIs.     |
259e41f4b71Sopenharmony_ci| 401       | Parameter error.                             |
260e41f4b71Sopenharmony_ci| 2100001   | Invalid parameter value.                     |
261e41f4b71Sopenharmony_ci| 2100002   | Failed to connect to the service.            |
262e41f4b71Sopenharmony_ci| 2100003   | System internal error.                       |
263e41f4b71Sopenharmony_ci
264e41f4b71Sopenharmony_ci**示例:**
265e41f4b71Sopenharmony_ci
266e41f4b71Sopenharmony_ci```ts
267e41f4b71Sopenharmony_ciimport { BusinessError } from '@kit.BasicServicesKit';
268e41f4b71Sopenharmony_ci
269e41f4b71Sopenharmony_cipolicy
270e41f4b71Sopenharmony_ci  .setPolicyByUid(11111, policy.NetUidPolicy.NET_POLICY_NONE)
271e41f4b71Sopenharmony_ci  .then(() => {
272e41f4b71Sopenharmony_ci    console.log('setPolicyByUid success');
273e41f4b71Sopenharmony_ci  })
274e41f4b71Sopenharmony_ci  .catch((error: BusinessError) => {
275e41f4b71Sopenharmony_ci    console.log(JSON.stringify(error));
276e41f4b71Sopenharmony_ci  });
277e41f4b71Sopenharmony_ci```
278e41f4b71Sopenharmony_ci
279e41f4b71Sopenharmony_ci## policy.getPolicyByUid<sup>10+</sup>
280e41f4b71Sopenharmony_ci
281e41f4b71Sopenharmony_cigetPolicyByUid(uid: number, callback: AsyncCallback\<NetUidPolicy>): void
282e41f4b71Sopenharmony_ci
283e41f4b71Sopenharmony_ci通过应用 uid 获取对应访问网络策略,使用 callback 方式作为异步方法。
284e41f4b71Sopenharmony_ci
285e41f4b71Sopenharmony_ci**系统接口**:此接口为系统接口。
286e41f4b71Sopenharmony_ci
287e41f4b71Sopenharmony_ci**需要权限**:ohos.permission.MANAGE_NET_STRATEGY
288e41f4b71Sopenharmony_ci
289e41f4b71Sopenharmony_ci**系统能力**:SystemCapability.Communication.NetManager.Core
290e41f4b71Sopenharmony_ci
291e41f4b71Sopenharmony_ci**参数:**
292e41f4b71Sopenharmony_ci
293e41f4b71Sopenharmony_ci| 参数名   | 类型                                            | 必填 | 说明                                                     |
294e41f4b71Sopenharmony_ci| -------- | ----------------------------------------------- | ---- | -------------------------------------------------------- |
295e41f4b71Sopenharmony_ci| uid      | number                                          | 是   | app 唯一标识符                                           |
296e41f4b71Sopenharmony_ci| callback | AsyncCallback\<[NetUidPolicy](#netuidpolicy10)> | 是   | 回调函数,成功返回获取策略结果,失败返回错误码错误信息。 |
297e41f4b71Sopenharmony_ci
298e41f4b71Sopenharmony_ci**错误码:**
299e41f4b71Sopenharmony_ci
300e41f4b71Sopenharmony_ci| 错误码 ID | 错误信息                                     |
301e41f4b71Sopenharmony_ci| --------- | -------------------------------------------- |
302e41f4b71Sopenharmony_ci| 201       | Permission denied.                           |
303e41f4b71Sopenharmony_ci| 202       | Non-system applications use system APIs.     |
304e41f4b71Sopenharmony_ci| 401       | Parameter error.                             |
305e41f4b71Sopenharmony_ci| 2100001   | Invalid parameter value.                     |
306e41f4b71Sopenharmony_ci| 2100002   | Failed to connect to the service.            |
307e41f4b71Sopenharmony_ci| 2100003   | System internal error.                       |
308e41f4b71Sopenharmony_ci
309e41f4b71Sopenharmony_ci**示例:**
310e41f4b71Sopenharmony_ci
311e41f4b71Sopenharmony_ci```ts
312e41f4b71Sopenharmony_ciimport { BusinessError } from '@kit.BasicServicesKit';
313e41f4b71Sopenharmony_ci
314e41f4b71Sopenharmony_cipolicy.getPolicyByUid(11111, (error: BusinessError, data: policy.NetUidPolicy) => {
315e41f4b71Sopenharmony_ci  console.log(JSON.stringify(error));
316e41f4b71Sopenharmony_ci  console.log(JSON.stringify(data));
317e41f4b71Sopenharmony_ci});
318e41f4b71Sopenharmony_ci```
319e41f4b71Sopenharmony_ci
320e41f4b71Sopenharmony_ci## policy.getPolicyByUid<sup>10+</sup>
321e41f4b71Sopenharmony_ci
322e41f4b71Sopenharmony_cigetPolicyByUid(uid: number): Promise\<NetUidPolicy>;
323e41f4b71Sopenharmony_ci
324e41f4b71Sopenharmony_ci通过应用 uid 获取对应访问网络策略,使用 Promise 方式作为异步方法。
325e41f4b71Sopenharmony_ci
326e41f4b71Sopenharmony_ci**系统接口**:此接口为系统接口。
327e41f4b71Sopenharmony_ci
328e41f4b71Sopenharmony_ci**需要权限**:ohos.permission.MANAGE_NET_STRATEGY
329e41f4b71Sopenharmony_ci
330e41f4b71Sopenharmony_ci**系统能力**:SystemCapability.Communication.NetManager.Core
331e41f4b71Sopenharmony_ci
332e41f4b71Sopenharmony_ci**参数:**
333e41f4b71Sopenharmony_ci
334e41f4b71Sopenharmony_ci| 参数名 | 类型   | 必填 | 说明           |
335e41f4b71Sopenharmony_ci| ------ | ------ | ---- | -------------- |
336e41f4b71Sopenharmony_ci| uid    | number | 是   | app 唯一标识符 |
337e41f4b71Sopenharmony_ci
338e41f4b71Sopenharmony_ci**返回值:**
339e41f4b71Sopenharmony_ci
340e41f4b71Sopenharmony_ci| 类型                                      | 说明                                                      |
341e41f4b71Sopenharmony_ci| ----------------------------------------- | --------------------------------------------------------- |
342e41f4b71Sopenharmony_ci| Promise\<[NetUidPolicy](#netuidpolicy10)> | 以 Promise 形式返回获取策略结果。失败返回错误码错误信息。 |
343e41f4b71Sopenharmony_ci
344e41f4b71Sopenharmony_ci**错误码:**
345e41f4b71Sopenharmony_ci
346e41f4b71Sopenharmony_ci| 错误码 ID | 错误信息                                     |
347e41f4b71Sopenharmony_ci| --------- | -------------------------------------------- |
348e41f4b71Sopenharmony_ci| 201       | Permission denied.                           |
349e41f4b71Sopenharmony_ci| 202       | Non-system applications use system APIs.     |
350e41f4b71Sopenharmony_ci| 401       | Parameter error.                             |
351e41f4b71Sopenharmony_ci| 2100001   | Invalid parameter value.                     |
352e41f4b71Sopenharmony_ci| 2100002   | Failed to connect to the service.            |
353e41f4b71Sopenharmony_ci| 2100003   | System internal error.                       |
354e41f4b71Sopenharmony_ci
355e41f4b71Sopenharmony_ci**示例:**
356e41f4b71Sopenharmony_ci
357e41f4b71Sopenharmony_ci```ts
358e41f4b71Sopenharmony_ciimport { BusinessError } from '@kit.BasicServicesKit';
359e41f4b71Sopenharmony_ci
360e41f4b71Sopenharmony_cipolicy
361e41f4b71Sopenharmony_ci  .getPolicyByUid(11111)
362e41f4b71Sopenharmony_ci  .then((data: policy.NetUidPolicy) => {
363e41f4b71Sopenharmony_ci    console.log(JSON.stringify(data));
364e41f4b71Sopenharmony_ci  })
365e41f4b71Sopenharmony_ci  .catch((error: BusinessError) => {
366e41f4b71Sopenharmony_ci    console.log(JSON.stringify(error));
367e41f4b71Sopenharmony_ci  });
368e41f4b71Sopenharmony_ci```
369e41f4b71Sopenharmony_ci
370e41f4b71Sopenharmony_ci## policy.getUidsByPolicy<sup>10+</sup>
371e41f4b71Sopenharmony_ci
372e41f4b71Sopenharmony_cigetUidsByPolicy(policy: NetUidPolicy, callback: AsyncCallback\<Array\<number>>): void
373e41f4b71Sopenharmony_ci
374e41f4b71Sopenharmony_ci通过策略获取跟策略匹配的所有 uid,使用 callback 方式作为异步方法。
375e41f4b71Sopenharmony_ci
376e41f4b71Sopenharmony_ci**系统接口**:此接口为系统接口。
377e41f4b71Sopenharmony_ci
378e41f4b71Sopenharmony_ci**需要权限**:ohos.permission.MANAGE_NET_STRATEGY
379e41f4b71Sopenharmony_ci
380e41f4b71Sopenharmony_ci**系统能力**:SystemCapability.Communication.NetManager.Core
381e41f4b71Sopenharmony_ci
382e41f4b71Sopenharmony_ci**参数:**
383e41f4b71Sopenharmony_ci
384e41f4b71Sopenharmony_ci| 参数名   | 类型                            | 必填 | 说明                                                        |
385e41f4b71Sopenharmony_ci| -------- | ------------------------------- | ---- | ----------------------------------------------------------- |
386e41f4b71Sopenharmony_ci| policy   | [NetUidPolicy](#netuidpolicy10) | 是   | 应用对应的计量网络下的策略                                  |
387e41f4b71Sopenharmony_ci| callback | AsyncCallback\<Array\<number>>  | 是   | 回调函数,成功返回应用的 uid 数组,失败返回错误码错误信息。 |
388e41f4b71Sopenharmony_ci
389e41f4b71Sopenharmony_ci**错误码:**
390e41f4b71Sopenharmony_ci
391e41f4b71Sopenharmony_ci| 错误码 ID | 错误信息                                     |
392e41f4b71Sopenharmony_ci| --------- | -------------------------------------------- |
393e41f4b71Sopenharmony_ci| 201       | Permission denied.                           |
394e41f4b71Sopenharmony_ci| 202       | Non-system applications use system APIs.     |
395e41f4b71Sopenharmony_ci| 401       | Parameter error.                             |
396e41f4b71Sopenharmony_ci| 2100001   | Invalid parameter value.                     |
397e41f4b71Sopenharmony_ci| 2100002   | Failed to connect to the service.            |
398e41f4b71Sopenharmony_ci| 2100003   | System internal error.                       |
399e41f4b71Sopenharmony_ci
400e41f4b71Sopenharmony_ci**示例:**
401e41f4b71Sopenharmony_ci
402e41f4b71Sopenharmony_ci```ts
403e41f4b71Sopenharmony_ciimport { BusinessError } from '@kit.BasicServicesKit';
404e41f4b71Sopenharmony_ci
405e41f4b71Sopenharmony_cipolicy.getUidsByPolicy(11111, (error: BusinessError, data: number[]) => {
406e41f4b71Sopenharmony_ci  console.log(JSON.stringify(error));
407e41f4b71Sopenharmony_ci  console.log(JSON.stringify(data));
408e41f4b71Sopenharmony_ci});
409e41f4b71Sopenharmony_ci```
410e41f4b71Sopenharmony_ci
411e41f4b71Sopenharmony_ci## policy.getUidsByPolicy<sup>10+</sup>
412e41f4b71Sopenharmony_ci
413e41f4b71Sopenharmony_cigetUidsByPolicy(policy: NetUidPolicy): Promise\<Array\<number>>;
414e41f4b71Sopenharmony_ci
415e41f4b71Sopenharmony_ci通过策略获取跟策略匹配的所有 uid,使用 Promise 方式作为异步方法。
416e41f4b71Sopenharmony_ci
417e41f4b71Sopenharmony_ci**系统接口**:此接口为系统接口。
418e41f4b71Sopenharmony_ci
419e41f4b71Sopenharmony_ci**需要权限**:ohos.permission.MANAGE_NET_STRATEGY
420e41f4b71Sopenharmony_ci
421e41f4b71Sopenharmony_ci**系统能力**:SystemCapability.Communication.NetManager.Core
422e41f4b71Sopenharmony_ci
423e41f4b71Sopenharmony_ci**参数:**
424e41f4b71Sopenharmony_ci
425e41f4b71Sopenharmony_ci| 参数名 | 类型                            | 必填 | 说明                       |
426e41f4b71Sopenharmony_ci| ------ | ------------------------------- | ---- | -------------------------- |
427e41f4b71Sopenharmony_ci| policy | [NetUidPolicy](#netuidpolicy10) | 是   | app 对应的计量网络下的策略 |
428e41f4b71Sopenharmony_ci
429e41f4b71Sopenharmony_ci**返回值:**
430e41f4b71Sopenharmony_ci
431e41f4b71Sopenharmony_ci| 类型                     | 说明                                                         |
432e41f4b71Sopenharmony_ci| ------------------------ | ------------------------------------------------------------ |
433e41f4b71Sopenharmony_ci| Promise\<Array\<number>> | 以 Promise 形式返回应用的 uid 数组,失败返回错误码错误信息。 |
434e41f4b71Sopenharmony_ci
435e41f4b71Sopenharmony_ci**错误码:**
436e41f4b71Sopenharmony_ci
437e41f4b71Sopenharmony_ci| 错误码 ID | 错误信息                                     |
438e41f4b71Sopenharmony_ci| --------- | -------------------------------------------- |
439e41f4b71Sopenharmony_ci| 201       | Permission denied.                           |
440e41f4b71Sopenharmony_ci| 202       | Non-system applications use system APIs.     |
441e41f4b71Sopenharmony_ci| 401       | Parameter error.                             |
442e41f4b71Sopenharmony_ci| 2100001   | Invalid parameter value.                     |
443e41f4b71Sopenharmony_ci| 2100002   | Failed to connect to the service.            |
444e41f4b71Sopenharmony_ci| 2100003   | System internal error.                       |
445e41f4b71Sopenharmony_ci
446e41f4b71Sopenharmony_ci**示例:**
447e41f4b71Sopenharmony_ci
448e41f4b71Sopenharmony_ci```ts
449e41f4b71Sopenharmony_ciimport { BusinessError } from '@kit.BasicServicesKit';
450e41f4b71Sopenharmony_ci
451e41f4b71Sopenharmony_cipolicy
452e41f4b71Sopenharmony_ci  .getUidsByPolicy(11111)
453e41f4b71Sopenharmony_ci  .then((data: object) => {
454e41f4b71Sopenharmony_ci    console.log(JSON.stringify(data));
455e41f4b71Sopenharmony_ci  })
456e41f4b71Sopenharmony_ci  .catch((error: BusinessError) => {
457e41f4b71Sopenharmony_ci    console.log(JSON.stringify(error));
458e41f4b71Sopenharmony_ci  });
459e41f4b71Sopenharmony_ci```
460e41f4b71Sopenharmony_ci
461e41f4b71Sopenharmony_ci## policy.getNetQuotaPolicies<sup>10+</sup>
462e41f4b71Sopenharmony_ci
463e41f4b71Sopenharmony_cigetNetQuotaPolicies(callback: AsyncCallback\<Array\<NetQuotaPolicy>>): void
464e41f4b71Sopenharmony_ci
465e41f4b71Sopenharmony_ci获取计量网络策略,使用 callback 方式作为异步方法。
466e41f4b71Sopenharmony_ci
467e41f4b71Sopenharmony_ci**系统接口**:此接口为系统接口。
468e41f4b71Sopenharmony_ci
469e41f4b71Sopenharmony_ci**需要权限**:ohos.permission.MANAGE_NET_STRATEGY
470e41f4b71Sopenharmony_ci
471e41f4b71Sopenharmony_ci**系统能力**:SystemCapability.Communication.NetManager.Core
472e41f4b71Sopenharmony_ci
473e41f4b71Sopenharmony_ci**参数:**
474e41f4b71Sopenharmony_ci
475e41f4b71Sopenharmony_ci| 参数名   | 类型                                                        | 必填 | 说明                     |
476e41f4b71Sopenharmony_ci| -------- | ----------------------------------------------------------- | ---- | ------------------------ |
477e41f4b71Sopenharmony_ci| callback | AsyncCallback\<Array\<[NetQuotaPolicy](#netquotapolicy10)>> | 是   | 回调函数,返回获取结果。 |
478e41f4b71Sopenharmony_ci
479e41f4b71Sopenharmony_ci**错误码:**
480e41f4b71Sopenharmony_ci
481e41f4b71Sopenharmony_ci| 错误码 ID | 错误信息                                     |
482e41f4b71Sopenharmony_ci| --------- | -------------------------------------------- |
483e41f4b71Sopenharmony_ci| 201       | Permission denied.                           |
484e41f4b71Sopenharmony_ci| 202       | Non-system applications use system APIs.     |
485e41f4b71Sopenharmony_ci| 401       | Parameter error.                             |
486e41f4b71Sopenharmony_ci| 2100001   | Invalid parameter value.                     |
487e41f4b71Sopenharmony_ci| 2100002   | Failed to connect to the service.            |
488e41f4b71Sopenharmony_ci| 2100003   | System internal error.                       |
489e41f4b71Sopenharmony_ci
490e41f4b71Sopenharmony_ci**示例:**
491e41f4b71Sopenharmony_ci
492e41f4b71Sopenharmony_ci```ts
493e41f4b71Sopenharmony_ciimport { BusinessError } from '@kit.BasicServicesKit';
494e41f4b71Sopenharmony_ci
495e41f4b71Sopenharmony_cipolicy.getNetQuotaPolicies((error: BusinessError, data: policy.NetQuotaPolicy[]) => {
496e41f4b71Sopenharmony_ci  console.log(JSON.stringify(error));
497e41f4b71Sopenharmony_ci  console.log(JSON.stringify(data));
498e41f4b71Sopenharmony_ci});
499e41f4b71Sopenharmony_ci```
500e41f4b71Sopenharmony_ci
501e41f4b71Sopenharmony_ci## policy.getNetQuotaPolicies<sup>10+</sup>
502e41f4b71Sopenharmony_ci
503e41f4b71Sopenharmony_cigetNetQuotaPolicies(): Promise\<Array\<NetQuotaPolicy>>;
504e41f4b71Sopenharmony_ci
505e41f4b71Sopenharmony_ci获取计量网络策略,使用 Promise 方式作为异步方法。
506e41f4b71Sopenharmony_ci
507e41f4b71Sopenharmony_ci**系统接口**:此接口为系统接口。
508e41f4b71Sopenharmony_ci
509e41f4b71Sopenharmony_ci**需要权限**:ohos.permission.MANAGE_NET_STRATEGY
510e41f4b71Sopenharmony_ci
511e41f4b71Sopenharmony_ci**系统能力**:SystemCapability.Communication.NetManager.Core
512e41f4b71Sopenharmony_ci
513e41f4b71Sopenharmony_ci**返回值:**
514e41f4b71Sopenharmony_ci
515e41f4b71Sopenharmony_ci| 类型                                                  | 说明                          |
516e41f4b71Sopenharmony_ci| ----------------------------------------------------- | ----------------------------- |
517e41f4b71Sopenharmony_ci| Promise\<Array\<[NetQuotaPolicy](#netquotapolicy10)>> | 以 Promise 形式返回设定结果。 |
518e41f4b71Sopenharmony_ci
519e41f4b71Sopenharmony_ci**错误码:**
520e41f4b71Sopenharmony_ci
521e41f4b71Sopenharmony_ci| 错误码 ID | 错误信息                                     |
522e41f4b71Sopenharmony_ci| --------- | -------------------------------------------- |
523e41f4b71Sopenharmony_ci| 201       | Permission denied.                           |
524e41f4b71Sopenharmony_ci| 202       | Non-system applications use system APIs.     |
525e41f4b71Sopenharmony_ci| 401       | Parameter error.                             |
526e41f4b71Sopenharmony_ci| 2100002   | Failed to connect to the service.            |
527e41f4b71Sopenharmony_ci| 2100003   | System internal error.                       |
528e41f4b71Sopenharmony_ci
529e41f4b71Sopenharmony_ci**示例:**
530e41f4b71Sopenharmony_ci
531e41f4b71Sopenharmony_ci```ts
532e41f4b71Sopenharmony_ciimport { BusinessError } from '@kit.BasicServicesKit';
533e41f4b71Sopenharmony_ci
534e41f4b71Sopenharmony_cipolicy
535e41f4b71Sopenharmony_ci  .getNetQuotaPolicies()
536e41f4b71Sopenharmony_ci  .then((data: policy.NetQuotaPolicy[]) => {
537e41f4b71Sopenharmony_ci    console.log(JSON.stringify(data));
538e41f4b71Sopenharmony_ci  })
539e41f4b71Sopenharmony_ci  .catch((error: BusinessError) => {
540e41f4b71Sopenharmony_ci    console.log(JSON.stringify(error));
541e41f4b71Sopenharmony_ci  });
542e41f4b71Sopenharmony_ci```
543e41f4b71Sopenharmony_ci
544e41f4b71Sopenharmony_ci## policy.setNetQuotaPolicies<sup>10+</sup>
545e41f4b71Sopenharmony_ci
546e41f4b71Sopenharmony_cisetNetQuotaPolicies(quotaPolicies: Array\<NetQuotaPolicy>, callback: AsyncCallback\<void>): void
547e41f4b71Sopenharmony_ci
548e41f4b71Sopenharmony_ci设置计量网络策略,使用 callback 方式作为异步方法。
549e41f4b71Sopenharmony_ci
550e41f4b71Sopenharmony_ci**系统接口**:此接口为系统接口。
551e41f4b71Sopenharmony_ci
552e41f4b71Sopenharmony_ci**需要权限**:ohos.permission.MANAGE_NET_STRATEGY
553e41f4b71Sopenharmony_ci
554e41f4b71Sopenharmony_ci**系统能力**:SystemCapability.Communication.NetManager.Core
555e41f4b71Sopenharmony_ci
556e41f4b71Sopenharmony_ci**参数:**
557e41f4b71Sopenharmony_ci
558e41f4b71Sopenharmony_ci| 参数名        | 类型                                        | 必填 | 说明                                           |
559e41f4b71Sopenharmony_ci| ------------- | ------------------------------------------- | ---- | ---------------------------------------------- |
560e41f4b71Sopenharmony_ci| quotaPolicies | Array\<[NetQuotaPolicy](#netquotapolicy10)> | 是   | 计量网络策略                                   |
561e41f4b71Sopenharmony_ci| callback      | AsyncCallback\<void>                        | 是   | 回调函数,成功返回空,失败返回错误码错误信息。 |
562e41f4b71Sopenharmony_ci
563e41f4b71Sopenharmony_ci**错误码:**
564e41f4b71Sopenharmony_ci
565e41f4b71Sopenharmony_ci| 错误码 ID | 错误信息                                     |
566e41f4b71Sopenharmony_ci| --------- | -------------------------------------------- |
567e41f4b71Sopenharmony_ci| 201       | Permission denied.                           |
568e41f4b71Sopenharmony_ci| 202       | Non-system applications use system APIs.     |
569e41f4b71Sopenharmony_ci| 401       | Parameter error.                             |
570e41f4b71Sopenharmony_ci| 2100001   | Invalid parameter value.                     |
571e41f4b71Sopenharmony_ci| 2100002   | Failed to connect to the service.            |
572e41f4b71Sopenharmony_ci| 2100003   | System internal error.                       |
573e41f4b71Sopenharmony_ci
574e41f4b71Sopenharmony_ci**示例:**
575e41f4b71Sopenharmony_ci
576e41f4b71Sopenharmony_ci```ts
577e41f4b71Sopenharmony_ciimport { connection } from '@kit.NetworkKit';
578e41f4b71Sopenharmony_ciimport { BusinessError } from '@kit.BasicServicesKit';
579e41f4b71Sopenharmony_ci
580e41f4b71Sopenharmony_cilet netQuotaPolicyList: Array<policy.NetQuotaPolicy> = [];
581e41f4b71Sopenharmony_cilet netquotapolicy: policy.NetQuotaPolicy = {
582e41f4b71Sopenharmony_ci  networkMatchRule: {
583e41f4b71Sopenharmony_ci    netType: connection.NetBearType.BEARER_CELLULAR,
584e41f4b71Sopenharmony_ci    identity: '',
585e41f4b71Sopenharmony_ci    simId: '1'
586e41f4b71Sopenharmony_ci  },
587e41f4b71Sopenharmony_ci  quotaPolicy: {
588e41f4b71Sopenharmony_ci    periodDuration: 'M1',
589e41f4b71Sopenharmony_ci    warningBytes: 40000,
590e41f4b71Sopenharmony_ci    limitBytes: 50000,
591e41f4b71Sopenharmony_ci    metered: true,
592e41f4b71Sopenharmony_ci    limitAction: policy.LimitAction.LIMIT_ACTION_NONE
593e41f4b71Sopenharmony_ci  }
594e41f4b71Sopenharmony_ci}
595e41f4b71Sopenharmony_cinetQuotaPolicyList.push(netquotapolicy);
596e41f4b71Sopenharmony_ci
597e41f4b71Sopenharmony_cipolicy.setNetQuotaPolicies(netQuotaPolicyList, (error: BusinessError) => {
598e41f4b71Sopenharmony_ci  console.log(JSON.stringify(error));
599e41f4b71Sopenharmony_ci});
600e41f4b71Sopenharmony_ci```
601e41f4b71Sopenharmony_ci
602e41f4b71Sopenharmony_ci## policy.setNetQuotaPolicies<sup>10+</sup>
603e41f4b71Sopenharmony_ci
604e41f4b71Sopenharmony_cisetNetQuotaPolicies(quotaPolicies: Array\<NetQuotaPolicy>): Promise\<void>;
605e41f4b71Sopenharmony_ci
606e41f4b71Sopenharmony_ci设置计量网络策略,使用 Promise 方式作为异步方法。
607e41f4b71Sopenharmony_ci
608e41f4b71Sopenharmony_ci**系统接口**:此接口为系统接口。
609e41f4b71Sopenharmony_ci
610e41f4b71Sopenharmony_ci**需要权限**:ohos.permission.MANAGE_NET_STRATEGY
611e41f4b71Sopenharmony_ci
612e41f4b71Sopenharmony_ci**系统能力**:SystemCapability.Communication.NetManager.Core
613e41f4b71Sopenharmony_ci
614e41f4b71Sopenharmony_ci**参数:**
615e41f4b71Sopenharmony_ci
616e41f4b71Sopenharmony_ci| 参数名        | 类型                                        | 必填 | 说明         |
617e41f4b71Sopenharmony_ci| ------------- | ------------------------------------------- | ---- | ------------ |
618e41f4b71Sopenharmony_ci| quotaPolicies | Array\<[NetQuotaPolicy](#netquotapolicy10)> | 是   | 计量网络策略 |
619e41f4b71Sopenharmony_ci
620e41f4b71Sopenharmony_ci**错误码:**
621e41f4b71Sopenharmony_ci
622e41f4b71Sopenharmony_ci| 错误码 ID | 错误信息                                     |
623e41f4b71Sopenharmony_ci| --------- | -------------------------------------------- |
624e41f4b71Sopenharmony_ci| 201       | Permission denied.                           |
625e41f4b71Sopenharmony_ci| 202       | Non-system applications use system APIs.     |
626e41f4b71Sopenharmony_ci| 401       | Parameter error.                             |
627e41f4b71Sopenharmony_ci| 2100001   | Invalid parameter value.                     |
628e41f4b71Sopenharmony_ci| 2100002   | Failed to connect to the service.            |
629e41f4b71Sopenharmony_ci| 2100003   | System internal error.                       |
630e41f4b71Sopenharmony_ci
631e41f4b71Sopenharmony_ci**返回值:**
632e41f4b71Sopenharmony_ci
633e41f4b71Sopenharmony_ci| 类型           | 说明                                                              |
634e41f4b71Sopenharmony_ci| -------------- | ----------------------------------------------------------------- |
635e41f4b71Sopenharmony_ci| Promise\<void> | 以 Promise 形式返回设定结果。成功返回空,失败返回错误码错误信息。 |
636e41f4b71Sopenharmony_ci
637e41f4b71Sopenharmony_ci**示例:**
638e41f4b71Sopenharmony_ci
639e41f4b71Sopenharmony_ci```ts
640e41f4b71Sopenharmony_ciimport { connection } from '@kit.NetworkKit';
641e41f4b71Sopenharmony_ciimport { BusinessError } from '@kit.BasicServicesKit';
642e41f4b71Sopenharmony_ci
643e41f4b71Sopenharmony_cilet netQuotaPolicyList: Array<policy.NetQuotaPolicy> = [];
644e41f4b71Sopenharmony_cilet netquotapolicy: policy.NetQuotaPolicy = {
645e41f4b71Sopenharmony_ci  networkMatchRule: {
646e41f4b71Sopenharmony_ci    netType: connection.NetBearType.BEARER_CELLULAR,
647e41f4b71Sopenharmony_ci    identity: '',
648e41f4b71Sopenharmony_ci    simId: '1'
649e41f4b71Sopenharmony_ci  },
650e41f4b71Sopenharmony_ci  quotaPolicy: {
651e41f4b71Sopenharmony_ci    periodDuration: 'M1',
652e41f4b71Sopenharmony_ci    warningBytes: 40000,
653e41f4b71Sopenharmony_ci    limitBytes: 50000,
654e41f4b71Sopenharmony_ci    metered: true,
655e41f4b71Sopenharmony_ci    limitAction: policy.LimitAction.LIMIT_ACTION_NONE
656e41f4b71Sopenharmony_ci  }
657e41f4b71Sopenharmony_ci}
658e41f4b71Sopenharmony_cinetQuotaPolicyList.push(netquotapolicy);
659e41f4b71Sopenharmony_ci
660e41f4b71Sopenharmony_cipolicy
661e41f4b71Sopenharmony_ci  .setNetQuotaPolicies(netQuotaPolicyList)
662e41f4b71Sopenharmony_ci  .then(() => {
663e41f4b71Sopenharmony_ci    console.log('setNetQuotaPolicies success');
664e41f4b71Sopenharmony_ci  })
665e41f4b71Sopenharmony_ci  .catch((error: BusinessError) => {
666e41f4b71Sopenharmony_ci    console.log(JSON.stringify(error));
667e41f4b71Sopenharmony_ci  });
668e41f4b71Sopenharmony_ci```
669e41f4b71Sopenharmony_ci
670e41f4b71Sopenharmony_ci## policy.isUidNetAllowed<sup>10+</sup>
671e41f4b71Sopenharmony_ci
672e41f4b71Sopenharmony_ciisUidNetAllowed(uid: number, isMetered: boolean, callback: AsyncCallback\<boolean>): void
673e41f4b71Sopenharmony_ci
674e41f4b71Sopenharmony_ci判断对应 uid 能否访问计量或非计量网络,使用 callback 方式作为异步方法。
675e41f4b71Sopenharmony_ci
676e41f4b71Sopenharmony_ci**系统接口**:此接口为系统接口。
677e41f4b71Sopenharmony_ci
678e41f4b71Sopenharmony_ci**需要权限**:ohos.permission.MANAGE_NET_STRATEGY
679e41f4b71Sopenharmony_ci
680e41f4b71Sopenharmony_ci**系统能力**:SystemCapability.Communication.NetManager.Core
681e41f4b71Sopenharmony_ci
682e41f4b71Sopenharmony_ci**参数:**
683e41f4b71Sopenharmony_ci
684e41f4b71Sopenharmony_ci| 参数名    | 类型                    | 必填 | 说明                                                      |
685e41f4b71Sopenharmony_ci| --------- | ----------------------- | ---- | --------------------------------------------------------- |
686e41f4b71Sopenharmony_ci| uid       | number                  | 是   | app 唯一标识符                                            |
687e41f4b71Sopenharmony_ci| isMetered | boolean                 | 是   | 是否为计量网络                                            |
688e41f4b71Sopenharmony_ci| callback  | AsyncCallback\<boolean> | 是   | 回调函数,返回 true 表示这个 uid 可以访问对应的计量网络。 |
689e41f4b71Sopenharmony_ci
690e41f4b71Sopenharmony_ci**错误码:**
691e41f4b71Sopenharmony_ci
692e41f4b71Sopenharmony_ci| 错误码 ID | 错误信息                                     |
693e41f4b71Sopenharmony_ci| --------- | -------------------------------------------- |
694e41f4b71Sopenharmony_ci| 201       | Permission denied.                           |
695e41f4b71Sopenharmony_ci| 202       | Non-system applications use system APIs.     |
696e41f4b71Sopenharmony_ci| 401       | Parameter error.                             |
697e41f4b71Sopenharmony_ci| 2100001   | Invalid parameter value.                     |
698e41f4b71Sopenharmony_ci| 2100002   | Failed to connect to the service.            |
699e41f4b71Sopenharmony_ci| 2100003   | System internal error.                       |
700e41f4b71Sopenharmony_ci
701e41f4b71Sopenharmony_ci**示例:**
702e41f4b71Sopenharmony_ci
703e41f4b71Sopenharmony_ci```ts
704e41f4b71Sopenharmony_ciimport { BusinessError } from '@kit.BasicServicesKit';
705e41f4b71Sopenharmony_ci
706e41f4b71Sopenharmony_cipolicy.isUidNetAllowed(11111, true, (error: BusinessError, data: boolean) => {
707e41f4b71Sopenharmony_ci  console.log(JSON.stringify(error));
708e41f4b71Sopenharmony_ci  console.log(JSON.stringify(data));
709e41f4b71Sopenharmony_ci});
710e41f4b71Sopenharmony_ci```
711e41f4b71Sopenharmony_ci
712e41f4b71Sopenharmony_ci## policy.isUidNetAllowed<sup>10+</sup>
713e41f4b71Sopenharmony_ci
714e41f4b71Sopenharmony_ciisUidNetAllowed(uid: number, isMetered: boolean): Promise\<boolean>;
715e41f4b71Sopenharmony_ci
716e41f4b71Sopenharmony_ci判断对应 uid 能否访问计量或非计量网络,使用 Promise 方式作为异步方法。
717e41f4b71Sopenharmony_ci
718e41f4b71Sopenharmony_ci**系统接口**:此接口为系统接口。
719e41f4b71Sopenharmony_ci
720e41f4b71Sopenharmony_ci**需要权限**:ohos.permission.MANAGE_NET_STRATEGY
721e41f4b71Sopenharmony_ci
722e41f4b71Sopenharmony_ci**系统能力**:SystemCapability.Communication.NetManager.Core
723e41f4b71Sopenharmony_ci
724e41f4b71Sopenharmony_ci**参数:**
725e41f4b71Sopenharmony_ci
726e41f4b71Sopenharmony_ci| 参数名    | 类型    | 必填 | 说明           |
727e41f4b71Sopenharmony_ci| --------- | ------- | ---- | -------------- |
728e41f4b71Sopenharmony_ci| uid       | number  | 是   | app 唯一标识符 |
729e41f4b71Sopenharmony_ci| isMetered | boolean | 是   | 是否为计量网络 |
730e41f4b71Sopenharmony_ci
731e41f4b71Sopenharmony_ci**返回值:**
732e41f4b71Sopenharmony_ci
733e41f4b71Sopenharmony_ci| 类型              | 说明                          |
734e41f4b71Sopenharmony_ci| ----------------- | ----------------------------- |
735e41f4b71Sopenharmony_ci| Promise\<boolean> | 以 Promise 形式返回设定结果。 |
736e41f4b71Sopenharmony_ci
737e41f4b71Sopenharmony_ci**错误码:**
738e41f4b71Sopenharmony_ci
739e41f4b71Sopenharmony_ci| 错误码 ID | 错误信息                                     |
740e41f4b71Sopenharmony_ci| --------- | -------------------------------------------- |
741e41f4b71Sopenharmony_ci| 201       | Permission denied.                           |
742e41f4b71Sopenharmony_ci| 202       | Non-system applications use system APIs.     |
743e41f4b71Sopenharmony_ci| 401       | Parameter error.                             |
744e41f4b71Sopenharmony_ci| 2100001   | Invalid parameter value.                     |
745e41f4b71Sopenharmony_ci| 2100002   | Failed to connect to the service.            |
746e41f4b71Sopenharmony_ci| 2100003   | System internal error.                       |
747e41f4b71Sopenharmony_ci
748e41f4b71Sopenharmony_ci**示例:**
749e41f4b71Sopenharmony_ci
750e41f4b71Sopenharmony_ci```ts
751e41f4b71Sopenharmony_ciimport { BusinessError } from '@kit.BasicServicesKit';
752e41f4b71Sopenharmony_ci
753e41f4b71Sopenharmony_cipolicy
754e41f4b71Sopenharmony_ci  .isUidNetAllowed(11111, true)
755e41f4b71Sopenharmony_ci  .then((data: boolean) => {
756e41f4b71Sopenharmony_ci    console.log(JSON.stringify(data));
757e41f4b71Sopenharmony_ci  })
758e41f4b71Sopenharmony_ci  .catch((error: BusinessError) => {
759e41f4b71Sopenharmony_ci    console.log(JSON.stringify(error));
760e41f4b71Sopenharmony_ci  });
761e41f4b71Sopenharmony_ci```
762e41f4b71Sopenharmony_ci
763e41f4b71Sopenharmony_ci## policy.isUidNetAllowed<sup>10+</sup>
764e41f4b71Sopenharmony_ci
765e41f4b71Sopenharmony_ciisUidNetAllowed(uid: number, iface: string, callback: AsyncCallback\<boolean>): void
766e41f4b71Sopenharmony_ci
767e41f4b71Sopenharmony_ci获取对应 uid 能否访问指定的 iface 的网络,使用 callback 方式作为异步方法。
768e41f4b71Sopenharmony_ci
769e41f4b71Sopenharmony_ci**系统接口**:此接口为系统接口。
770e41f4b71Sopenharmony_ci
771e41f4b71Sopenharmony_ci**需要权限**:ohos.permission.MANAGE_NET_STRATEGY
772e41f4b71Sopenharmony_ci
773e41f4b71Sopenharmony_ci**系统能力**:SystemCapability.Communication.NetManager.Core
774e41f4b71Sopenharmony_ci
775e41f4b71Sopenharmony_ci**参数:**
776e41f4b71Sopenharmony_ci
777e41f4b71Sopenharmony_ci| 参数名   | 类型                    | 必填 | 说明                                                         |
778e41f4b71Sopenharmony_ci| -------- | ----------------------- | ---- | ------------------------------------------------------------ |
779e41f4b71Sopenharmony_ci| uid      | number                  | 是   | app 唯一标识符                                               |
780e41f4b71Sopenharmony_ci| iface    | string                  | 是   | 网络对应的名称                                               |
781e41f4b71Sopenharmony_ci| callback | AsyncCallback\<boolean> | 是   | 回调函数,返回 true 表示这个 uid 可以访问对应 iface 的网络。 |
782e41f4b71Sopenharmony_ci
783e41f4b71Sopenharmony_ci**错误码:**
784e41f4b71Sopenharmony_ci
785e41f4b71Sopenharmony_ci| 错误码 ID | 错误信息                                     |
786e41f4b71Sopenharmony_ci| --------- | -------------------------------------------- |
787e41f4b71Sopenharmony_ci| 201       | Permission denied.                           |
788e41f4b71Sopenharmony_ci| 202       | Non-system applications use system APIs.     |
789e41f4b71Sopenharmony_ci| 401       | Parameter error.                             |
790e41f4b71Sopenharmony_ci| 2100001   | Invalid parameter value.                     |
791e41f4b71Sopenharmony_ci| 2100002   | Failed to connect to the service.            |
792e41f4b71Sopenharmony_ci| 2100003   | System internal error.                       |
793e41f4b71Sopenharmony_ci
794e41f4b71Sopenharmony_ci**示例:**
795e41f4b71Sopenharmony_ci
796e41f4b71Sopenharmony_ci```ts
797e41f4b71Sopenharmony_ciimport { BusinessError } from '@kit.BasicServicesKit';
798e41f4b71Sopenharmony_ci
799e41f4b71Sopenharmony_cipolicy.isUidNetAllowed(11111, 'wlan0', (error: BusinessError, data: boolean) => {
800e41f4b71Sopenharmony_ci  console.log(JSON.stringify(error));
801e41f4b71Sopenharmony_ci  console.log(JSON.stringify(data));
802e41f4b71Sopenharmony_ci});
803e41f4b71Sopenharmony_ci```
804e41f4b71Sopenharmony_ci
805e41f4b71Sopenharmony_ci## policy.isUidNetAllowed<sup>10+</sup>
806e41f4b71Sopenharmony_ci
807e41f4b71Sopenharmony_ciisUidNetAllowed(uid: number, iface: string): Promise\<boolean>;
808e41f4b71Sopenharmony_ci
809e41f4b71Sopenharmony_ci获取对应 uid 能否访问指定的 iface 的网络,使用 Promise 方式作为异步方法。
810e41f4b71Sopenharmony_ci
811e41f4b71Sopenharmony_ci**系统接口**:此接口为系统接口。
812e41f4b71Sopenharmony_ci
813e41f4b71Sopenharmony_ci**需要权限**:ohos.permission.MANAGE_NET_STRATEGY
814e41f4b71Sopenharmony_ci
815e41f4b71Sopenharmony_ci**系统能力**:SystemCapability.Communication.NetManager.Core
816e41f4b71Sopenharmony_ci
817e41f4b71Sopenharmony_ci**参数:**
818e41f4b71Sopenharmony_ci
819e41f4b71Sopenharmony_ci| 参数名 | 类型   | 必填 | 说明           |
820e41f4b71Sopenharmony_ci| ------ | ------ | ---- | -------------- |
821e41f4b71Sopenharmony_ci| uid    | number | 是   | app 唯一标识符 |
822e41f4b71Sopenharmony_ci| iface  | string | 是   | 网络对应的名称 |
823e41f4b71Sopenharmony_ci
824e41f4b71Sopenharmony_ci**返回值:**
825e41f4b71Sopenharmony_ci
826e41f4b71Sopenharmony_ci| 类型              | 说明                                                    |
827e41f4b71Sopenharmony_ci| ----------------- | ------------------------------------------------------- |
828e41f4b71Sopenharmony_ci| Promise\<boolean> | 以 Promise 形式返回当前 uid 能否访问对应 iface 的网络。 |
829e41f4b71Sopenharmony_ci
830e41f4b71Sopenharmony_ci**错误码:**
831e41f4b71Sopenharmony_ci
832e41f4b71Sopenharmony_ci| 错误码 ID | 错误信息                                     |
833e41f4b71Sopenharmony_ci| --------- | -------------------------------------------- |
834e41f4b71Sopenharmony_ci| 201       | Permission denied.                           |
835e41f4b71Sopenharmony_ci| 202       | Non-system applications use system APIs.     |
836e41f4b71Sopenharmony_ci| 401       | Parameter error.                             |
837e41f4b71Sopenharmony_ci| 2100001   | Invalid parameter value.                     |
838e41f4b71Sopenharmony_ci| 2100002   | Failed to connect to the service.            |
839e41f4b71Sopenharmony_ci| 2100003   | System internal error.                       |
840e41f4b71Sopenharmony_ci
841e41f4b71Sopenharmony_ci**示例:**
842e41f4b71Sopenharmony_ci
843e41f4b71Sopenharmony_ci```ts
844e41f4b71Sopenharmony_ciimport { BusinessError } from '@kit.BasicServicesKit';
845e41f4b71Sopenharmony_ci
846e41f4b71Sopenharmony_cipolicy
847e41f4b71Sopenharmony_ci  .isUidNetAllowed(11111, 'wlan0')
848e41f4b71Sopenharmony_ci  .then((data: boolean) => {
849e41f4b71Sopenharmony_ci    console.log(JSON.stringify(data));
850e41f4b71Sopenharmony_ci  })
851e41f4b71Sopenharmony_ci  .catch((error: BusinessError) => {
852e41f4b71Sopenharmony_ci    console.log(JSON.stringify(error));
853e41f4b71Sopenharmony_ci  });
854e41f4b71Sopenharmony_ci```
855e41f4b71Sopenharmony_ci
856e41f4b71Sopenharmony_ci## policy.setDeviceIdleTrustlist<sup>10+</sup>
857e41f4b71Sopenharmony_ci
858e41f4b71Sopenharmony_cisetDeviceIdleTrustlist(uids: Array\<number>, isAllowed: boolean, callback: AsyncCallback\<void>): void
859e41f4b71Sopenharmony_ci
860e41f4b71Sopenharmony_ci设置多个 uid 是否在休眠防火墙的白名单,使用 callback 方式作为异步方法。
861e41f4b71Sopenharmony_ci
862e41f4b71Sopenharmony_ci**系统接口**:此接口为系统接口。
863e41f4b71Sopenharmony_ci
864e41f4b71Sopenharmony_ci**需要权限**:ohos.permission.MANAGE_NET_STRATEGY
865e41f4b71Sopenharmony_ci
866e41f4b71Sopenharmony_ci**系统能力**:SystemCapability.Communication.NetManager.Core
867e41f4b71Sopenharmony_ci
868e41f4b71Sopenharmony_ci**参数:**
869e41f4b71Sopenharmony_ci
870e41f4b71Sopenharmony_ci| 参数名    | 类型                           | 必填 | 说明                                           |
871e41f4b71Sopenharmony_ci| --------- | ------------------------------ | ---- | ---------------------------------------------- |
872e41f4b71Sopenharmony_ci| uids      | Array\<number>                 | 是   | app 唯一标识符                                 |
873e41f4b71Sopenharmony_ci| isAllowed | boolean                        | 是   | 是否加入白名单                                 |
874e41f4b71Sopenharmony_ci| callback  | callback: AsyncCallback\<void> | 是   | 回调函数,成功返回空,失败返回错误码错误信息。 |
875e41f4b71Sopenharmony_ci
876e41f4b71Sopenharmony_ci**错误码:**
877e41f4b71Sopenharmony_ci
878e41f4b71Sopenharmony_ci| 错误码 ID | 错误信息                                     |
879e41f4b71Sopenharmony_ci| --------- | -------------------------------------------- |
880e41f4b71Sopenharmony_ci| 201       | Permission denied.                           |
881e41f4b71Sopenharmony_ci| 202       | Non-system applications use system APIs.     |
882e41f4b71Sopenharmony_ci| 401       | Parameter error.                             |
883e41f4b71Sopenharmony_ci| 2100001   | Invalid parameter value.                     |
884e41f4b71Sopenharmony_ci| 2100002   | Failed to connect to the service.            |
885e41f4b71Sopenharmony_ci| 2100003   | System internal error.                       |
886e41f4b71Sopenharmony_ci
887e41f4b71Sopenharmony_ci**示例:**
888e41f4b71Sopenharmony_ci
889e41f4b71Sopenharmony_ci```ts
890e41f4b71Sopenharmony_ciimport { BusinessError } from '@kit.BasicServicesKit';
891e41f4b71Sopenharmony_ci
892e41f4b71Sopenharmony_cipolicy.setDeviceIdleTrustlist([11111, 22222], true, (error: BusinessError) => {
893e41f4b71Sopenharmony_ci  console.log(JSON.stringify(error));
894e41f4b71Sopenharmony_ci});
895e41f4b71Sopenharmony_ci```
896e41f4b71Sopenharmony_ci
897e41f4b71Sopenharmony_ci## policy.setDeviceIdleTrustlist<sup>10+</sup>
898e41f4b71Sopenharmony_ci
899e41f4b71Sopenharmony_cisetDeviceIdleTrustlist(uids: Array\<number>, isAllowed: boolean): Promise\<void>;
900e41f4b71Sopenharmony_ci
901e41f4b71Sopenharmony_ci设置多个 uid 是否在休眠防火墙的白名单,使用 Promise 方式作为异步方法。
902e41f4b71Sopenharmony_ci
903e41f4b71Sopenharmony_ci**系统接口**:此接口为系统接口。
904e41f4b71Sopenharmony_ci
905e41f4b71Sopenharmony_ci**需要权限**:ohos.permission.MANAGE_NET_STRATEGY
906e41f4b71Sopenharmony_ci
907e41f4b71Sopenharmony_ci**系统能力**:SystemCapability.Communication.NetManager.Core
908e41f4b71Sopenharmony_ci
909e41f4b71Sopenharmony_ci**参数:**
910e41f4b71Sopenharmony_ci
911e41f4b71Sopenharmony_ci| 参数名    | 类型           | 必填 | 说明           |
912e41f4b71Sopenharmony_ci| --------- | -------------- | ---- | -------------- |
913e41f4b71Sopenharmony_ci| uids      | Array\<number> | 是   | app 唯一标识符 |
914e41f4b71Sopenharmony_ci| isAllowed | boolean        | 是   | 是否加入白名单 |
915e41f4b71Sopenharmony_ci
916e41f4b71Sopenharmony_ci**返回值:**
917e41f4b71Sopenharmony_ci
918e41f4b71Sopenharmony_ci| 类型           | 说明                                                              |
919e41f4b71Sopenharmony_ci| -------------- | ----------------------------------------------------------------- |
920e41f4b71Sopenharmony_ci| Promise\<void> | 以 Promise 形式返回设定结果。成功返回空,失败返回错误码错误信息。 |
921e41f4b71Sopenharmony_ci
922e41f4b71Sopenharmony_ci**错误码:**
923e41f4b71Sopenharmony_ci
924e41f4b71Sopenharmony_ci| 错误码 ID | 错误信息                                     |
925e41f4b71Sopenharmony_ci| --------- | -------------------------------------------- |
926e41f4b71Sopenharmony_ci| 201       | Permission denied.                           |
927e41f4b71Sopenharmony_ci| 202       | Non-system applications use system APIs.     |
928e41f4b71Sopenharmony_ci| 401       | Parameter error.                             |
929e41f4b71Sopenharmony_ci| 2100001   | Invalid parameter value.                     |
930e41f4b71Sopenharmony_ci| 2100002   | Failed to connect to the service.            |
931e41f4b71Sopenharmony_ci| 2100003   | System internal error.                       |
932e41f4b71Sopenharmony_ci
933e41f4b71Sopenharmony_ci**示例:**
934e41f4b71Sopenharmony_ci
935e41f4b71Sopenharmony_ci```ts
936e41f4b71Sopenharmony_ciimport { BusinessError } from '@kit.BasicServicesKit';
937e41f4b71Sopenharmony_ci
938e41f4b71Sopenharmony_cipolicy
939e41f4b71Sopenharmony_ci  .setDeviceIdleTrustlist([11111, 22222], true)
940e41f4b71Sopenharmony_ci  .then(() => {
941e41f4b71Sopenharmony_ci    console.log('setDeviceIdleTrustlist success');
942e41f4b71Sopenharmony_ci  })
943e41f4b71Sopenharmony_ci  .catch((error: BusinessError) => {
944e41f4b71Sopenharmony_ci    console.log(JSON.stringify(error));
945e41f4b71Sopenharmony_ci  });
946e41f4b71Sopenharmony_ci```
947e41f4b71Sopenharmony_ci
948e41f4b71Sopenharmony_ci## policy.getDeviceIdleTrustlist<sup>10+</sup>
949e41f4b71Sopenharmony_ci
950e41f4b71Sopenharmony_cigetDeviceIdleTrustlist(callback: AsyncCallback\<Array\<number>>): void
951e41f4b71Sopenharmony_ci
952e41f4b71Sopenharmony_ci获取休眠模式白名单所包含的 uid,使用 callback 方式作为异步方法。
953e41f4b71Sopenharmony_ci
954e41f4b71Sopenharmony_ci**系统接口**:此接口为系统接口。
955e41f4b71Sopenharmony_ci
956e41f4b71Sopenharmony_ci**需要权限**:ohos.permission.MANAGE_NET_STRATEGY
957e41f4b71Sopenharmony_ci
958e41f4b71Sopenharmony_ci**系统能力**:SystemCapability.Communication.NetManager.Core
959e41f4b71Sopenharmony_ci
960e41f4b71Sopenharmony_ci**参数:**
961e41f4b71Sopenharmony_ci
962e41f4b71Sopenharmony_ci| 参数名   | 类型                           | 必填 | 说明                     |
963e41f4b71Sopenharmony_ci| -------- | ------------------------------ | ---- | ------------------------ |
964e41f4b71Sopenharmony_ci| callback | AsyncCallback\<Array\<number>> | 是   | 回调函数,返回获取结果。 |
965e41f4b71Sopenharmony_ci
966e41f4b71Sopenharmony_ci**错误码:**
967e41f4b71Sopenharmony_ci
968e41f4b71Sopenharmony_ci| 错误码 ID | 错误信息                                     |
969e41f4b71Sopenharmony_ci| --------- | -------------------------------------------- |
970e41f4b71Sopenharmony_ci| 201       | Permission denied.                           |
971e41f4b71Sopenharmony_ci| 202       | Non-system applications use system APIs.     |
972e41f4b71Sopenharmony_ci| 401       | Parameter error.                             |
973e41f4b71Sopenharmony_ci| 2100001   | Invalid parameter value.                     |
974e41f4b71Sopenharmony_ci| 2100002   | Failed to connect to the service.            |
975e41f4b71Sopenharmony_ci| 2100003   | System internal error.                       |
976e41f4b71Sopenharmony_ci
977e41f4b71Sopenharmony_ci**示例:**
978e41f4b71Sopenharmony_ci
979e41f4b71Sopenharmony_ci```ts
980e41f4b71Sopenharmony_ciimport { BusinessError } from '@kit.BasicServicesKit';
981e41f4b71Sopenharmony_ci
982e41f4b71Sopenharmony_cipolicy.getDeviceIdleTrustlist((error: BusinessError, data: number[]) => {
983e41f4b71Sopenharmony_ci  console.log(JSON.stringify(error));
984e41f4b71Sopenharmony_ci  console.log(JSON.stringify(data));
985e41f4b71Sopenharmony_ci});
986e41f4b71Sopenharmony_ci```
987e41f4b71Sopenharmony_ci
988e41f4b71Sopenharmony_ci## policy.getDeviceIdleTrustlist<sup>10+</sup>
989e41f4b71Sopenharmony_ci
990e41f4b71Sopenharmony_cigetDeviceIdleTrustlist(): Promise\<Array\<number>>;
991e41f4b71Sopenharmony_ci
992e41f4b71Sopenharmony_ci获取休眠模式白名单所包含的 uid,使用 Promise 方式作为异步方法。
993e41f4b71Sopenharmony_ci
994e41f4b71Sopenharmony_ci**系统接口**:此接口为系统接口。
995e41f4b71Sopenharmony_ci
996e41f4b71Sopenharmony_ci**需要权限**:ohos.permission.MANAGE_NET_STRATEGY
997e41f4b71Sopenharmony_ci
998e41f4b71Sopenharmony_ci**系统能力**:SystemCapability.Communication.NetManager.Core
999e41f4b71Sopenharmony_ci
1000e41f4b71Sopenharmony_ci**返回值:**
1001e41f4b71Sopenharmony_ci
1002e41f4b71Sopenharmony_ci| 类型                     | 说明                          |
1003e41f4b71Sopenharmony_ci| ------------------------ | ----------------------------- |
1004e41f4b71Sopenharmony_ci| Promise\<Array\<number>> | 以 Promise 形式返回设定结果。 |
1005e41f4b71Sopenharmony_ci
1006e41f4b71Sopenharmony_ci**错误码:**
1007e41f4b71Sopenharmony_ci
1008e41f4b71Sopenharmony_ci| 错误码 ID | 错误信息                                     |
1009e41f4b71Sopenharmony_ci| --------- | -------------------------------------------- |
1010e41f4b71Sopenharmony_ci| 201       | Permission denied.                           |
1011e41f4b71Sopenharmony_ci| 202       | Non-system applications use system APIs.     |
1012e41f4b71Sopenharmony_ci| 401       | Parameter error.                             |
1013e41f4b71Sopenharmony_ci| 2100002   | Failed to connect to the service.            |
1014e41f4b71Sopenharmony_ci| 2100003   | System internal error.                       |
1015e41f4b71Sopenharmony_ci
1016e41f4b71Sopenharmony_ci**示例:**
1017e41f4b71Sopenharmony_ci
1018e41f4b71Sopenharmony_ci```ts
1019e41f4b71Sopenharmony_ciimport { BusinessError } from '@kit.BasicServicesKit';
1020e41f4b71Sopenharmony_ci
1021e41f4b71Sopenharmony_cipolicy
1022e41f4b71Sopenharmony_ci  .getDeviceIdleTrustlist()
1023e41f4b71Sopenharmony_ci  .then((data: number[]) => {
1024e41f4b71Sopenharmony_ci    console.log(JSON.stringify(data));
1025e41f4b71Sopenharmony_ci  })
1026e41f4b71Sopenharmony_ci  .catch((error: BusinessError) => {
1027e41f4b71Sopenharmony_ci    console.log(JSON.stringify(error));
1028e41f4b71Sopenharmony_ci  });
1029e41f4b71Sopenharmony_ci```
1030e41f4b71Sopenharmony_ci
1031e41f4b71Sopenharmony_ci## policy.getBackgroundPolicyByUid<sup>10+</sup>
1032e41f4b71Sopenharmony_ci
1033e41f4b71Sopenharmony_cigetBackgroundPolicyByUid(uid: number, callback: AsyncCallback\<NetBackgroundPolicy>): void
1034e41f4b71Sopenharmony_ci
1035e41f4b71Sopenharmony_ci获取指定 uid 是否能访问后台网络,使用 callback 方式作为异步方法。
1036e41f4b71Sopenharmony_ci
1037e41f4b71Sopenharmony_ci**系统接口**:此接口为系统接口。
1038e41f4b71Sopenharmony_ci
1039e41f4b71Sopenharmony_ci**需要权限**:ohos.permission.MANAGE_NET_STRATEGY
1040e41f4b71Sopenharmony_ci
1041e41f4b71Sopenharmony_ci**系统能力**:SystemCapability.Communication.NetManager.Core
1042e41f4b71Sopenharmony_ci
1043e41f4b71Sopenharmony_ci**参数:**
1044e41f4b71Sopenharmony_ci
1045e41f4b71Sopenharmony_ci| 参数名   | 类型                                                          | 必填 | 说明                     |
1046e41f4b71Sopenharmony_ci| -------- | ------------------------------------------------------------- | ---- | ------------------------ |
1047e41f4b71Sopenharmony_ci| uid      | number                                                        | 是   | app 唯一标识符           |
1048e41f4b71Sopenharmony_ci| callback | AsyncCallback\<[NetBackgroundPolicy](#netbackgroundpolicy10)> | 是   | 回调函数,返回获取结果。 |
1049e41f4b71Sopenharmony_ci
1050e41f4b71Sopenharmony_ci**错误码:**
1051e41f4b71Sopenharmony_ci
1052e41f4b71Sopenharmony_ci| 错误码 ID | 错误信息                                     |
1053e41f4b71Sopenharmony_ci| --------- | -------------------------------------------- |
1054e41f4b71Sopenharmony_ci| 201       | Permission denied.                           |
1055e41f4b71Sopenharmony_ci| 202       | Non-system applications use system APIs.     |
1056e41f4b71Sopenharmony_ci| 401       | Parameter error.                             |
1057e41f4b71Sopenharmony_ci| 2100001   | Invalid parameter value.                     |
1058e41f4b71Sopenharmony_ci| 2100002   | Failed to connect to the service.            |
1059e41f4b71Sopenharmony_ci| 2100003   | System internal error.                       |
1060e41f4b71Sopenharmony_ci
1061e41f4b71Sopenharmony_ci**示例:**
1062e41f4b71Sopenharmony_ci
1063e41f4b71Sopenharmony_ci```ts
1064e41f4b71Sopenharmony_ciimport { BusinessError } from '@kit.BasicServicesKit';
1065e41f4b71Sopenharmony_ci
1066e41f4b71Sopenharmony_cipolicy.getBackgroundPolicyByUid(11111, (error: BusinessError, data: policy.NetBackgroundPolicy) => {
1067e41f4b71Sopenharmony_ci  console.log(JSON.stringify(error));
1068e41f4b71Sopenharmony_ci  console.log(JSON.stringify(data));
1069e41f4b71Sopenharmony_ci});
1070e41f4b71Sopenharmony_ci```
1071e41f4b71Sopenharmony_ci
1072e41f4b71Sopenharmony_ci## policy.getBackgroundPolicyByUid<sup>10+</sup>
1073e41f4b71Sopenharmony_ci
1074e41f4b71Sopenharmony_cigetBackgroundPolicyByUid(uid: number): Promise\<NetBackgroundPolicy>;
1075e41f4b71Sopenharmony_ci
1076e41f4b71Sopenharmony_ci获取指定 uid 能否访问后台网络,使用 Promise 方式作为异步方法。
1077e41f4b71Sopenharmony_ci
1078e41f4b71Sopenharmony_ci**系统接口**:此接口为系统接口。
1079e41f4b71Sopenharmony_ci
1080e41f4b71Sopenharmony_ci**需要权限**:ohos.permission.MANAGE_NET_STRATEGY
1081e41f4b71Sopenharmony_ci
1082e41f4b71Sopenharmony_ci**系统能力**:SystemCapability.Communication.NetManager.Core
1083e41f4b71Sopenharmony_ci
1084e41f4b71Sopenharmony_ci**参数:**
1085e41f4b71Sopenharmony_ci
1086e41f4b71Sopenharmony_ci| 参数名 | 类型   | 必填 | 说明           |
1087e41f4b71Sopenharmony_ci| ------ | ------ | ---- | -------------- |
1088e41f4b71Sopenharmony_ci| uid    | number | 是   | app 唯一标识符 |
1089e41f4b71Sopenharmony_ci
1090e41f4b71Sopenharmony_ci**返回值:**
1091e41f4b71Sopenharmony_ci
1092e41f4b71Sopenharmony_ci| 类型                                                    | 说明                          |
1093e41f4b71Sopenharmony_ci| ------------------------------------------------------- | ----------------------------- |
1094e41f4b71Sopenharmony_ci| Promise\<[NetBackgroundPolicy](#netbackgroundpolicy10)> | 以 Promise 形式返回设定结果。 |
1095e41f4b71Sopenharmony_ci
1096e41f4b71Sopenharmony_ci**错误码:**
1097e41f4b71Sopenharmony_ci
1098e41f4b71Sopenharmony_ci| 错误码 ID | 错误信息                                     |
1099e41f4b71Sopenharmony_ci| --------- | -------------------------------------------- |
1100e41f4b71Sopenharmony_ci| 201       | Permission denied.                           |
1101e41f4b71Sopenharmony_ci| 202       | Non-system applications use system APIs.     |
1102e41f4b71Sopenharmony_ci| 401       | Parameter error.                             |
1103e41f4b71Sopenharmony_ci| 2100001   | Invalid parameter value.                     |
1104e41f4b71Sopenharmony_ci| 2100002   | Failed to connect to the service.            |
1105e41f4b71Sopenharmony_ci| 2100003   | System internal error.                       |
1106e41f4b71Sopenharmony_ci
1107e41f4b71Sopenharmony_ci**示例:**
1108e41f4b71Sopenharmony_ci
1109e41f4b71Sopenharmony_ci```ts
1110e41f4b71Sopenharmony_ciimport { BusinessError } from '@kit.BasicServicesKit';
1111e41f4b71Sopenharmony_ci
1112e41f4b71Sopenharmony_cipolicy
1113e41f4b71Sopenharmony_ci  .getBackgroundPolicyByUid(11111)
1114e41f4b71Sopenharmony_ci  .then((data: policy.NetBackgroundPolicy) => {
1115e41f4b71Sopenharmony_ci    console.log(JSON.stringify(data));
1116e41f4b71Sopenharmony_ci  })
1117e41f4b71Sopenharmony_ci  .catch((error: BusinessError) => {
1118e41f4b71Sopenharmony_ci    console.log(JSON.stringify(error));
1119e41f4b71Sopenharmony_ci  });
1120e41f4b71Sopenharmony_ci```
1121e41f4b71Sopenharmony_ci
1122e41f4b71Sopenharmony_ci## policy.resetPolicies<sup>10+</sup>
1123e41f4b71Sopenharmony_ci
1124e41f4b71Sopenharmony_ciresetPolicies(simId: string, callback: AsyncCallback\<void>): void
1125e41f4b71Sopenharmony_ci
1126e41f4b71Sopenharmony_ci重置对应 sim 卡 id 的蜂窝网络、后台网络策略、防火墙策略、应用对应的策略,使用 callback 方式作为异步方法。
1127e41f4b71Sopenharmony_ci
1128e41f4b71Sopenharmony_ci**系统接口**:此接口为系统接口。
1129e41f4b71Sopenharmony_ci
1130e41f4b71Sopenharmony_ci**需要权限**:ohos.permission.MANAGE_NET_STRATEGY
1131e41f4b71Sopenharmony_ci
1132e41f4b71Sopenharmony_ci**系统能力**:SystemCapability.Communication.NetManager.Core
1133e41f4b71Sopenharmony_ci
1134e41f4b71Sopenharmony_ci**参数:**
1135e41f4b71Sopenharmony_ci
1136e41f4b71Sopenharmony_ci| 参数名   | 类型                 | 必填 | 说明                                           |
1137e41f4b71Sopenharmony_ci| -------- | -------------------- | ---- | ---------------------------------------------- |
1138e41f4b71Sopenharmony_ci| simId    | string               | 是   | SIM 卡 ID                                      |
1139e41f4b71Sopenharmony_ci| callback | AsyncCallback\<void> | 是   | 回调函数,成功返回空,失败返回错误码错误信息。 |
1140e41f4b71Sopenharmony_ci
1141e41f4b71Sopenharmony_ci**错误码:**
1142e41f4b71Sopenharmony_ci
1143e41f4b71Sopenharmony_ci| 错误码 ID | 错误信息                                     |
1144e41f4b71Sopenharmony_ci| --------- | -------------------------------------------- |
1145e41f4b71Sopenharmony_ci| 201       | Permission denied.                           |
1146e41f4b71Sopenharmony_ci| 202       | Non-system applications use system APIs.     |
1147e41f4b71Sopenharmony_ci| 401       | Parameter error.                             |
1148e41f4b71Sopenharmony_ci| 2100001   | Invalid parameter value.                     |
1149e41f4b71Sopenharmony_ci| 2100002   | Failed to connect to the service.            |
1150e41f4b71Sopenharmony_ci| 2100003   | System internal error.                       |
1151e41f4b71Sopenharmony_ci
1152e41f4b71Sopenharmony_ci**示例:**
1153e41f4b71Sopenharmony_ci
1154e41f4b71Sopenharmony_ci```ts
1155e41f4b71Sopenharmony_ciimport { BusinessError } from '@kit.BasicServicesKit';
1156e41f4b71Sopenharmony_ci
1157e41f4b71Sopenharmony_cipolicy.resetPolicies('1', (error: BusinessError) => {
1158e41f4b71Sopenharmony_ci  console.log(JSON.stringify(error));
1159e41f4b71Sopenharmony_ci});
1160e41f4b71Sopenharmony_ci```
1161e41f4b71Sopenharmony_ci
1162e41f4b71Sopenharmony_ci## policy.resetPolicies<sup>10+</sup>
1163e41f4b71Sopenharmony_ci
1164e41f4b71Sopenharmony_ciresetPolicies(simId: string): Promise\<void>;
1165e41f4b71Sopenharmony_ci
1166e41f4b71Sopenharmony_ci重置对应 sim 卡 id 的蜂窝网络、后台网络策略、防火墙策略、应用对应的策略,使用 Promise 方式作为异步方法。
1167e41f4b71Sopenharmony_ci
1168e41f4b71Sopenharmony_ci**系统接口**:此接口为系统接口。
1169e41f4b71Sopenharmony_ci
1170e41f4b71Sopenharmony_ci**需要权限**:ohos.permission.MANAGE_NET_STRATEGY
1171e41f4b71Sopenharmony_ci
1172e41f4b71Sopenharmony_ci**系统能力**:SystemCapability.Communication.NetManager.Core
1173e41f4b71Sopenharmony_ci
1174e41f4b71Sopenharmony_ci**参数:**
1175e41f4b71Sopenharmony_ci
1176e41f4b71Sopenharmony_ci| 参数名 | 类型   | 必填 | 说明      |
1177e41f4b71Sopenharmony_ci| ------ | ------ | ---- | --------- |
1178e41f4b71Sopenharmony_ci| simId  | string | 是   | SIM 卡 ID |
1179e41f4b71Sopenharmony_ci
1180e41f4b71Sopenharmony_ci**返回值:**
1181e41f4b71Sopenharmony_ci
1182e41f4b71Sopenharmony_ci| 类型           | 说明                                                              |
1183e41f4b71Sopenharmony_ci| -------------- | ----------------------------------------------------------------- |
1184e41f4b71Sopenharmony_ci| Promise\<void> | 以 Promise 形式返回设定结果。成功返回空,失败返回错误码错误信息。 |
1185e41f4b71Sopenharmony_ci
1186e41f4b71Sopenharmony_ci**错误码:**
1187e41f4b71Sopenharmony_ci
1188e41f4b71Sopenharmony_ci| 错误码 ID | 错误信息                                     |
1189e41f4b71Sopenharmony_ci| --------- | -------------------------------------------- |
1190e41f4b71Sopenharmony_ci| 201       | Permission denied.                           |
1191e41f4b71Sopenharmony_ci| 202       | Non-system applications use system APIs.     |
1192e41f4b71Sopenharmony_ci| 401       | Parameter error.                             |
1193e41f4b71Sopenharmony_ci| 2100001   | Invalid parameter value.                     |
1194e41f4b71Sopenharmony_ci| 2100002   | Failed to connect to the service.            |
1195e41f4b71Sopenharmony_ci| 2100003   | System internal error.                       |
1196e41f4b71Sopenharmony_ci
1197e41f4b71Sopenharmony_ci**示例:**
1198e41f4b71Sopenharmony_ci
1199e41f4b71Sopenharmony_ci```ts
1200e41f4b71Sopenharmony_ciimport { BusinessError } from '@kit.BasicServicesKit';
1201e41f4b71Sopenharmony_ci
1202e41f4b71Sopenharmony_cipolicy
1203e41f4b71Sopenharmony_ci  .resetPolicies('1')
1204e41f4b71Sopenharmony_ci  .then(() => {
1205e41f4b71Sopenharmony_ci    console.log('resetPolicies success');
1206e41f4b71Sopenharmony_ci  })
1207e41f4b71Sopenharmony_ci  .catch((error: BusinessError) => {
1208e41f4b71Sopenharmony_ci    console.log(JSON.stringify(error));
1209e41f4b71Sopenharmony_ci  });
1210e41f4b71Sopenharmony_ci```
1211e41f4b71Sopenharmony_ci
1212e41f4b71Sopenharmony_ci## policy.updateRemindPolicy<sup>10+</sup>
1213e41f4b71Sopenharmony_ci
1214e41f4b71Sopenharmony_ciupdateRemindPolicy(netType: NetBearType, simId: string, remindType: RemindType, callback: AsyncCallback\<void>): void
1215e41f4b71Sopenharmony_ci
1216e41f4b71Sopenharmony_ci更新提醒策略,使用 callback 方式作为异步方法。
1217e41f4b71Sopenharmony_ci
1218e41f4b71Sopenharmony_ci**系统接口**:此接口为系统接口。
1219e41f4b71Sopenharmony_ci
1220e41f4b71Sopenharmony_ci**需要权限**:ohos.permission.MANAGE_NET_STRATEGY
1221e41f4b71Sopenharmony_ci
1222e41f4b71Sopenharmony_ci**系统能力**:SystemCapability.Communication.NetManager.Core
1223e41f4b71Sopenharmony_ci
1224e41f4b71Sopenharmony_ci**参数:**
1225e41f4b71Sopenharmony_ci
1226e41f4b71Sopenharmony_ci| 参数名     | 类型                                                 | 必填 | 说明                                           |
1227e41f4b71Sopenharmony_ci| ---------- | ---------------------------------------------------- | ---- | ---------------------------------------------- |
1228e41f4b71Sopenharmony_ci| netType    | [NetBearType](js-apis-net-connection.md#netbeartype) | 是   | 网络类型                                       |
1229e41f4b71Sopenharmony_ci| simId      | string                                               | 是   | SIM 卡 ID                                      |
1230e41f4b71Sopenharmony_ci| remindType | [RemindType](#remindtype10)                          | 是   | 提醒类型                                       |
1231e41f4b71Sopenharmony_ci| callback   | AsyncCallback\<void>                                 | 是   | 回调函数,成功返回空,失败返回错误码错误信息。 |
1232e41f4b71Sopenharmony_ci
1233e41f4b71Sopenharmony_ci**错误码:**
1234e41f4b71Sopenharmony_ci
1235e41f4b71Sopenharmony_ci| 错误码 ID | 错误信息                                     |
1236e41f4b71Sopenharmony_ci| --------- | -------------------------------------------- |
1237e41f4b71Sopenharmony_ci| 201       | Permission denied.                           |
1238e41f4b71Sopenharmony_ci| 202       | Non-system applications use system APIs.     |
1239e41f4b71Sopenharmony_ci| 401       | Parameter error.                             |
1240e41f4b71Sopenharmony_ci| 2100001   | Invalid parameter value.                     |
1241e41f4b71Sopenharmony_ci| 2100002   | Failed to connect to the service.            |
1242e41f4b71Sopenharmony_ci| 2100003   | System internal error.                       |
1243e41f4b71Sopenharmony_ci
1244e41f4b71Sopenharmony_ci**示例:**
1245e41f4b71Sopenharmony_ci
1246e41f4b71Sopenharmony_ci```ts
1247e41f4b71Sopenharmony_ciimport { connection } from '@kit.NetworkKit';
1248e41f4b71Sopenharmony_ciimport { BusinessError } from '@kit.BasicServicesKit';
1249e41f4b71Sopenharmony_ci
1250e41f4b71Sopenharmony_cipolicy.updateRemindPolicy(
1251e41f4b71Sopenharmony_ci  connection.NetBearType.BEARER_CELLULAR,
1252e41f4b71Sopenharmony_ci  '1',
1253e41f4b71Sopenharmony_ci  policy.RemindType.REMIND_TYPE_WARNING,
1254e41f4b71Sopenharmony_ci  (error: BusinessError) => {
1255e41f4b71Sopenharmony_ci    console.log(JSON.stringify(error));
1256e41f4b71Sopenharmony_ci  }
1257e41f4b71Sopenharmony_ci);
1258e41f4b71Sopenharmony_ci```
1259e41f4b71Sopenharmony_ci
1260e41f4b71Sopenharmony_ci## policy.updateRemindPolicy<sup>10+</sup>
1261e41f4b71Sopenharmony_ci
1262e41f4b71Sopenharmony_ciupdateRemindPolicy(netType: NetBearType, simId: string, remindType: RemindType): Promise\<void>;
1263e41f4b71Sopenharmony_ci
1264e41f4b71Sopenharmony_ci更新提醒策略,使用 Promise 方式作为异步方法。
1265e41f4b71Sopenharmony_ci
1266e41f4b71Sopenharmony_ci**系统接口**:此接口为系统接口。
1267e41f4b71Sopenharmony_ci
1268e41f4b71Sopenharmony_ci**需要权限**:ohos.permission.MANAGE_NET_STRATEGY
1269e41f4b71Sopenharmony_ci
1270e41f4b71Sopenharmony_ci**系统能力**:SystemCapability.Communication.NetManager.Core
1271e41f4b71Sopenharmony_ci
1272e41f4b71Sopenharmony_ci**参数:**
1273e41f4b71Sopenharmony_ci
1274e41f4b71Sopenharmony_ci| 参数名     | 类型                                                 | 必填 | 说明      |
1275e41f4b71Sopenharmony_ci| ---------- | ---------------------------------------------------- | ---- | --------- |
1276e41f4b71Sopenharmony_ci| netType    | [NetBearType](js-apis-net-connection.md#netbeartype) | 是   | 网络类型  |
1277e41f4b71Sopenharmony_ci| simId      | string                                               | 是   | SIM 卡 ID |
1278e41f4b71Sopenharmony_ci| remindType | [RemindType](#remindtype10)                          | 是   | 提醒类型  |
1279e41f4b71Sopenharmony_ci
1280e41f4b71Sopenharmony_ci**返回值:**
1281e41f4b71Sopenharmony_ci
1282e41f4b71Sopenharmony_ci| 类型           | 说明                                                              |
1283e41f4b71Sopenharmony_ci| -------------- | ----------------------------------------------------------------- |
1284e41f4b71Sopenharmony_ci| Promise\<void> | 以 Promise 形式返回设定结果。成功返回空,失败返回错误码错误信息。 |
1285e41f4b71Sopenharmony_ci
1286e41f4b71Sopenharmony_ci**错误码:**
1287e41f4b71Sopenharmony_ci
1288e41f4b71Sopenharmony_ci| 错误码 ID | 错误信息                                     |
1289e41f4b71Sopenharmony_ci| --------- | -------------------------------------------- |
1290e41f4b71Sopenharmony_ci| 201       | Permission denied.                           |
1291e41f4b71Sopenharmony_ci| 202       | Non-system applications use system APIs.     |
1292e41f4b71Sopenharmony_ci| 401       | Parameter error.                             |
1293e41f4b71Sopenharmony_ci| 2100001   | Invalid parameter value.                     |
1294e41f4b71Sopenharmony_ci| 2100002   | Failed to connect to the service.            |
1295e41f4b71Sopenharmony_ci| 2100003   | System internal error.                       |
1296e41f4b71Sopenharmony_ci
1297e41f4b71Sopenharmony_ci**示例:**
1298e41f4b71Sopenharmony_ci
1299e41f4b71Sopenharmony_ci```ts
1300e41f4b71Sopenharmony_ciimport { connection } from '@kit.NetworkKit';
1301e41f4b71Sopenharmony_ciimport { BusinessError } from '@kit.BasicServicesKit';
1302e41f4b71Sopenharmony_ci
1303e41f4b71Sopenharmony_cipolicy
1304e41f4b71Sopenharmony_ci  .updateRemindPolicy(
1305e41f4b71Sopenharmony_ci    connection.NetBearType.BEARER_CELLULAR,
1306e41f4b71Sopenharmony_ci    '1',
1307e41f4b71Sopenharmony_ci    policy.RemindType.REMIND_TYPE_WARNING
1308e41f4b71Sopenharmony_ci  )
1309e41f4b71Sopenharmony_ci  .then(() => {
1310e41f4b71Sopenharmony_ci    console.log('updateRemindPolicy success');
1311e41f4b71Sopenharmony_ci  })
1312e41f4b71Sopenharmony_ci  .catch((error: BusinessError) => {
1313e41f4b71Sopenharmony_ci    console.log(JSON.stringify(error));
1314e41f4b71Sopenharmony_ci  });
1315e41f4b71Sopenharmony_ci```
1316e41f4b71Sopenharmony_ci
1317e41f4b71Sopenharmony_ci## policy.setPowerSaveTrustlist<sup>10+</sup>
1318e41f4b71Sopenharmony_ci
1319e41f4b71Sopenharmony_cisetPowerSaveTrustlist(uids: Array\<number>, isAllowed: boolean, callback: AsyncCallback\<void>): void
1320e41f4b71Sopenharmony_ci
1321e41f4b71Sopenharmony_ci设置指定 uid 应用是否在省电防火墙的白名单,使用 callback 方式作为异步方法。
1322e41f4b71Sopenharmony_ci
1323e41f4b71Sopenharmony_ci**系统接口**:此接口为系统接口。
1324e41f4b71Sopenharmony_ci
1325e41f4b71Sopenharmony_ci**需要权限**:ohos.permission.MANAGE_NET_STRATEGY
1326e41f4b71Sopenharmony_ci
1327e41f4b71Sopenharmony_ci**系统能力**:SystemCapability.Communication.NetManager.Core
1328e41f4b71Sopenharmony_ci
1329e41f4b71Sopenharmony_ci**参数:**
1330e41f4b71Sopenharmony_ci
1331e41f4b71Sopenharmony_ci| 参数名    | 类型                           | 必填 | 说明                                           |
1332e41f4b71Sopenharmony_ci| --------- | ------------------------------ | ---- | ---------------------------------------------- |
1333e41f4b71Sopenharmony_ci| uids      | Array\<number>                 | 是   | app 唯一标识符                                 |
1334e41f4b71Sopenharmony_ci| isAllowed | boolean                        | 是   | 是否加入白名单                                 |
1335e41f4b71Sopenharmony_ci| callback  | callback: AsyncCallback\<void> | 是   | 回调函数,成功返回空,失败返回错误码错误信息。 |
1336e41f4b71Sopenharmony_ci
1337e41f4b71Sopenharmony_ci**错误码:**
1338e41f4b71Sopenharmony_ci
1339e41f4b71Sopenharmony_ci| 错误码 ID | 错误信息                                     |
1340e41f4b71Sopenharmony_ci| --------- | -------------------------------------------- |
1341e41f4b71Sopenharmony_ci| 201       | Permission denied.                           |
1342e41f4b71Sopenharmony_ci| 202       | Non-system applications use system APIs.     |
1343e41f4b71Sopenharmony_ci| 401       | Parameter error.                             |
1344e41f4b71Sopenharmony_ci| 2100001   | Invalid parameter value.                     |
1345e41f4b71Sopenharmony_ci| 2100002   | Failed to connect to the service.            |
1346e41f4b71Sopenharmony_ci| 2100003   | System internal error.                       |
1347e41f4b71Sopenharmony_ci
1348e41f4b71Sopenharmony_ci**示例:**
1349e41f4b71Sopenharmony_ci
1350e41f4b71Sopenharmony_ci```ts
1351e41f4b71Sopenharmony_ciimport { BusinessError } from '@kit.BasicServicesKit';
1352e41f4b71Sopenharmony_ci
1353e41f4b71Sopenharmony_cipolicy.setPowerSaveTrustlist([11111, 22222], true, (error: BusinessError) => {
1354e41f4b71Sopenharmony_ci  console.log(JSON.stringify(error));
1355e41f4b71Sopenharmony_ci});
1356e41f4b71Sopenharmony_ci```
1357e41f4b71Sopenharmony_ci
1358e41f4b71Sopenharmony_ci## policy.setPowerSaveTrustlist<sup>10+</sup>
1359e41f4b71Sopenharmony_ci
1360e41f4b71Sopenharmony_cisetPowerSaveTrustlist(uids: Array\<number>, isAllowed: boolean): Promise\<void>;
1361e41f4b71Sopenharmony_ci
1362e41f4b71Sopenharmony_ci设置指定 uid 应用是否在省电防火墙的白名单,使用 Promise 方式作为异步方法。
1363e41f4b71Sopenharmony_ci
1364e41f4b71Sopenharmony_ci**系统接口**:此接口为系统接口。
1365e41f4b71Sopenharmony_ci
1366e41f4b71Sopenharmony_ci**需要权限**:ohos.permission.MANAGE_NET_STRATEGY
1367e41f4b71Sopenharmony_ci
1368e41f4b71Sopenharmony_ci**系统能力**:SystemCapability.Communication.NetManager.Core
1369e41f4b71Sopenharmony_ci
1370e41f4b71Sopenharmony_ci**参数:**
1371e41f4b71Sopenharmony_ci
1372e41f4b71Sopenharmony_ci| 参数名    | 类型           | 必填 | 说明           |
1373e41f4b71Sopenharmony_ci| --------- | -------------- | ---- | -------------- |
1374e41f4b71Sopenharmony_ci| uids      | Array\<number> | 是   | app 唯一标识符 |
1375e41f4b71Sopenharmony_ci| isAllowed | boolean        | 是   | 是否加入白名单 |
1376e41f4b71Sopenharmony_ci
1377e41f4b71Sopenharmony_ci**返回值:**
1378e41f4b71Sopenharmony_ci
1379e41f4b71Sopenharmony_ci| 类型           | 说明                                                              |
1380e41f4b71Sopenharmony_ci| -------------- | ----------------------------------------------------------------- |
1381e41f4b71Sopenharmony_ci| Promise\<void> | 以 Promise 形式返回设定结果。成功返回空,失败返回错误码错误信息。 |
1382e41f4b71Sopenharmony_ci
1383e41f4b71Sopenharmony_ci**错误码:**
1384e41f4b71Sopenharmony_ci
1385e41f4b71Sopenharmony_ci| 错误码 ID | 错误信息                                     |
1386e41f4b71Sopenharmony_ci| --------- | -------------------------------------------- |
1387e41f4b71Sopenharmony_ci| 201       | Permission denied.                           |
1388e41f4b71Sopenharmony_ci| 202       | Non-system applications use system APIs.     |
1389e41f4b71Sopenharmony_ci| 401       | Parameter error.                             |
1390e41f4b71Sopenharmony_ci| 2100001   | Invalid parameter value.                     |
1391e41f4b71Sopenharmony_ci| 2100002   | Failed to connect to the service.            |
1392e41f4b71Sopenharmony_ci| 2100003   | System internal error.                       |
1393e41f4b71Sopenharmony_ci
1394e41f4b71Sopenharmony_ci**示例:**
1395e41f4b71Sopenharmony_ci
1396e41f4b71Sopenharmony_ci```ts
1397e41f4b71Sopenharmony_ciimport { BusinessError } from '@kit.BasicServicesKit';
1398e41f4b71Sopenharmony_ci
1399e41f4b71Sopenharmony_cipolicy
1400e41f4b71Sopenharmony_ci  .setPowerSaveTrustlist([11111, 22222], true)
1401e41f4b71Sopenharmony_ci  .then(() => {
1402e41f4b71Sopenharmony_ci    console.log('setPowerSaveTrustlist success');
1403e41f4b71Sopenharmony_ci  })
1404e41f4b71Sopenharmony_ci  .catch((error: BusinessError) => {
1405e41f4b71Sopenharmony_ci    console.log(JSON.stringify(error));
1406e41f4b71Sopenharmony_ci  });
1407e41f4b71Sopenharmony_ci```
1408e41f4b71Sopenharmony_ci
1409e41f4b71Sopenharmony_ci## policy.getPowerSaveTrustlist<sup>10+</sup>
1410e41f4b71Sopenharmony_ci
1411e41f4b71Sopenharmony_cigetPowerSaveTrustlist(callback: AsyncCallback\<Array\<number>>): void
1412e41f4b71Sopenharmony_ci
1413e41f4b71Sopenharmony_ci获取省电模式白名单所包含的 uid 数组,使用 callback 方式作为异步方法。
1414e41f4b71Sopenharmony_ci
1415e41f4b71Sopenharmony_ci**系统接口**:此接口为系统接口。
1416e41f4b71Sopenharmony_ci
1417e41f4b71Sopenharmony_ci**需要权限**:ohos.permission.MANAGE_NET_STRATEGY
1418e41f4b71Sopenharmony_ci
1419e41f4b71Sopenharmony_ci**系统能力**:SystemCapability.Communication.NetManager.Core
1420e41f4b71Sopenharmony_ci
1421e41f4b71Sopenharmony_ci**参数:**
1422e41f4b71Sopenharmony_ci
1423e41f4b71Sopenharmony_ci| 参数名   | 类型                           | 必填 | 说明                     |
1424e41f4b71Sopenharmony_ci| -------- | ------------------------------ | ---- | ------------------------ |
1425e41f4b71Sopenharmony_ci| callback | AsyncCallback\<Array\<number>> | 是   | 回调函数,返回获取结果。 |
1426e41f4b71Sopenharmony_ci
1427e41f4b71Sopenharmony_ci**错误码:**
1428e41f4b71Sopenharmony_ci
1429e41f4b71Sopenharmony_ci| 错误码 ID | 错误信息                                     |
1430e41f4b71Sopenharmony_ci| --------- | -------------------------------------------- |
1431e41f4b71Sopenharmony_ci| 201       | Permission denied.                           |
1432e41f4b71Sopenharmony_ci| 202       | Non-system applications use system APIs.     |
1433e41f4b71Sopenharmony_ci| 401       | Parameter error.                             |
1434e41f4b71Sopenharmony_ci| 2100001   | Invalid parameter value.                     |
1435e41f4b71Sopenharmony_ci| 2100002   | Failed to connect to the service.            |
1436e41f4b71Sopenharmony_ci| 2100003   | System internal error.                       |
1437e41f4b71Sopenharmony_ci
1438e41f4b71Sopenharmony_ci**示例:**
1439e41f4b71Sopenharmony_ci
1440e41f4b71Sopenharmony_ci```ts
1441e41f4b71Sopenharmony_ciimport { BusinessError } from '@kit.BasicServicesKit';
1442e41f4b71Sopenharmony_ci
1443e41f4b71Sopenharmony_cipolicy.getPowerSaveTrustlist((error: BusinessError, data: number[]) => {
1444e41f4b71Sopenharmony_ci  console.log(JSON.stringify(error));
1445e41f4b71Sopenharmony_ci  console.log(JSON.stringify(data));
1446e41f4b71Sopenharmony_ci});
1447e41f4b71Sopenharmony_ci```
1448e41f4b71Sopenharmony_ci
1449e41f4b71Sopenharmony_ci## policy.getPowerSaveTrustlist<sup>10+</sup>
1450e41f4b71Sopenharmony_ci
1451e41f4b71Sopenharmony_cigetPowerSaveTrustlist(): Promise\<Array\<number>>;
1452e41f4b71Sopenharmony_ci
1453e41f4b71Sopenharmony_ci获取休眠模式白名单所包含的 uid 数组,使用 Promise 方式作为异步方法。
1454e41f4b71Sopenharmony_ci
1455e41f4b71Sopenharmony_ci**系统接口**:此接口为系统接口。
1456e41f4b71Sopenharmony_ci
1457e41f4b71Sopenharmony_ci**需要权限**:ohos.permission.MANAGE_NET_STRATEGY
1458e41f4b71Sopenharmony_ci
1459e41f4b71Sopenharmony_ci**系统能力**:SystemCapability.Communication.NetManager.Core
1460e41f4b71Sopenharmony_ci
1461e41f4b71Sopenharmony_ci**返回值:**
1462e41f4b71Sopenharmony_ci
1463e41f4b71Sopenharmony_ci| 类型                     | 说明                          |
1464e41f4b71Sopenharmony_ci| ------------------------ | ----------------------------- |
1465e41f4b71Sopenharmony_ci| Promise\<Array\<number>> | 以 Promise 形式返回设定结果。 |
1466e41f4b71Sopenharmony_ci
1467e41f4b71Sopenharmony_ci**错误码:**
1468e41f4b71Sopenharmony_ci
1469e41f4b71Sopenharmony_ci| 错误码 ID | 错误信息                                     |
1470e41f4b71Sopenharmony_ci| --------- | -------------------------------------------- |
1471e41f4b71Sopenharmony_ci| 201       | Permission denied.                           |
1472e41f4b71Sopenharmony_ci| 202       | Non-system applications use system APIs.     |
1473e41f4b71Sopenharmony_ci| 401       | Parameter error.                             |
1474e41f4b71Sopenharmony_ci| 2100002   | Failed to connect to the service.            |
1475e41f4b71Sopenharmony_ci| 2100003   | System internal error.                       |
1476e41f4b71Sopenharmony_ci
1477e41f4b71Sopenharmony_ci**示例:**
1478e41f4b71Sopenharmony_ci
1479e41f4b71Sopenharmony_ci```ts
1480e41f4b71Sopenharmony_ciimport { BusinessError } from '@kit.BasicServicesKit';
1481e41f4b71Sopenharmony_ci
1482e41f4b71Sopenharmony_cipolicy
1483e41f4b71Sopenharmony_ci  .getPowerSaveTrustlist()
1484e41f4b71Sopenharmony_ci  .then((data: number[]) => {
1485e41f4b71Sopenharmony_ci    console.log(JSON.stringify(data));
1486e41f4b71Sopenharmony_ci  })
1487e41f4b71Sopenharmony_ci  .catch((error: BusinessError) => {
1488e41f4b71Sopenharmony_ci    console.log(JSON.stringify(error));
1489e41f4b71Sopenharmony_ci  });
1490e41f4b71Sopenharmony_ci```
1491e41f4b71Sopenharmony_ci
1492e41f4b71Sopenharmony_ci## policy.setNetworkAccessPolicy<sup>12+</sup>
1493e41f4b71Sopenharmony_ci
1494e41f4b71Sopenharmony_cisetNetworkAccessPolicy(uid: number, policy: NetworkAccessPolicy, isReconfirmed?: boolean): Promise<void>
1495e41f4b71Sopenharmony_ci
1496e41f4b71Sopenharmony_ci设置指定 uid 应用能否能访问网络的策略,使用 Promise 方式作为异步方法。
1497e41f4b71Sopenharmony_ci
1498e41f4b71Sopenharmony_ci**系统接口**:此接口为系统接口。
1499e41f4b71Sopenharmony_ci
1500e41f4b71Sopenharmony_ci**需要权限**:ohos.permission.MANAGE_NET_STRATEGY
1501e41f4b71Sopenharmony_ci
1502e41f4b71Sopenharmony_ci**系统能力**:SystemCapability.Communication.NetManager.Core
1503e41f4b71Sopenharmony_ci
1504e41f4b71Sopenharmony_ci**参数:**
1505e41f4b71Sopenharmony_ci
1506e41f4b71Sopenharmony_ci| 参数名         | 类型                                           | 必填 | 说明                                                                          |
1507e41f4b71Sopenharmony_ci| ------------- | ---------------------------------------------- | ---- | ---------------------------------------------------------------------------- |
1508e41f4b71Sopenharmony_ci| uid           | number                                         | 是   | app 唯一标识符                                                                |
1509e41f4b71Sopenharmony_ci| policy        | [NetworkAccessPolicy](#networkaccesspolicy12)  | 是   | 网络策略                                                                      |
1510e41f4b71Sopenharmony_ci| isReconfirmed | boolean                                        | 否   | 默认false;false 表示需要重确认,应用访问网络会弹框; true 表示不需要重确认,无弹框 |
1511e41f4b71Sopenharmony_ci
1512e41f4b71Sopenharmony_ci**返回值:**
1513e41f4b71Sopenharmony_ci
1514e41f4b71Sopenharmony_ci| 类型           | 说明                                                          |
1515e41f4b71Sopenharmony_ci| -------------- | ------------------------------------------------------------ |
1516e41f4b71Sopenharmony_ci| Promise\<void> | 以 Promise 形式返回设定结果。成功返回空,失败返回错误码错误信息。 |
1517e41f4b71Sopenharmony_ci
1518e41f4b71Sopenharmony_ci**错误码:**
1519e41f4b71Sopenharmony_ci
1520e41f4b71Sopenharmony_ci| 错误码 ID | 错误信息                                     |
1521e41f4b71Sopenharmony_ci| --------- | -------------------------------------------- |
1522e41f4b71Sopenharmony_ci| 201       | Permission denied.                           |
1523e41f4b71Sopenharmony_ci| 202       | Non-system applications use system APIs.     |
1524e41f4b71Sopenharmony_ci| 401       | Parameter error.                             |
1525e41f4b71Sopenharmony_ci| 2100001   | Invalid parameter value.                     |
1526e41f4b71Sopenharmony_ci| 2100002   | Failed to connect to the service.            |
1527e41f4b71Sopenharmony_ci| 2100003   | System internal error.                       |
1528e41f4b71Sopenharmony_ci
1529e41f4b71Sopenharmony_ci**示例:**
1530e41f4b71Sopenharmony_ci
1531e41f4b71Sopenharmony_ci```ts
1532e41f4b71Sopenharmony_ciimport { BusinessError } from '@kit.BasicServicesKit';
1533e41f4b71Sopenharmony_ci
1534e41f4b71Sopenharmony_cilet accessPolicy: policy.NetworkAccessPolicy = {
1535e41f4b71Sopenharmony_ci  allowWiFi: false,
1536e41f4b71Sopenharmony_ci  allowCellular: true,
1537e41f4b71Sopenharmony_ci}
1538e41f4b71Sopenharmony_cipolicy
1539e41f4b71Sopenharmony_ci  .setNetworkAccessPolicy(11111, accessPolicy)
1540e41f4b71Sopenharmony_ci  .then(() => {
1541e41f4b71Sopenharmony_ci    console.log('setNetworkAccessPolicy success');
1542e41f4b71Sopenharmony_ci  })
1543e41f4b71Sopenharmony_ci  .catch((error: BusinessError) => {
1544e41f4b71Sopenharmony_ci    console.error(JSON.stringify(error));
1545e41f4b71Sopenharmony_ci  });
1546e41f4b71Sopenharmony_ci```
1547e41f4b71Sopenharmony_ci
1548e41f4b71Sopenharmony_ci## policy.getNetworkAccessPolicy<sup>12+</sup>
1549e41f4b71Sopenharmony_ci
1550e41f4b71Sopenharmony_cigetNetworkAccessPolicy(uid: number): Promise<NetworkAccessPolicy>
1551e41f4b71Sopenharmony_ci
1552e41f4b71Sopenharmony_ci获取指定 uid 能否访问网络策略,使用 Promise 方式作为异步方法。
1553e41f4b71Sopenharmony_ci
1554e41f4b71Sopenharmony_ci**系统接口**:此接口为系统接口。
1555e41f4b71Sopenharmony_ci
1556e41f4b71Sopenharmony_ci**需要权限**:ohos.permission.MANAGE_NET_STRATEGY
1557e41f4b71Sopenharmony_ci
1558e41f4b71Sopenharmony_ci**系统能力**:SystemCapability.Communication.NetManager.Core
1559e41f4b71Sopenharmony_ci
1560e41f4b71Sopenharmony_ci**参数:**
1561e41f4b71Sopenharmony_ci
1562e41f4b71Sopenharmony_ci| 参数名 | 类型   | 必填 | 说明           |
1563e41f4b71Sopenharmony_ci| ------ | ------ | ---- | -------------- |
1564e41f4b71Sopenharmony_ci| uid    | number | 是   | app 唯一标识符 |
1565e41f4b71Sopenharmony_ci
1566e41f4b71Sopenharmony_ci**返回值:**
1567e41f4b71Sopenharmony_ci
1568e41f4b71Sopenharmony_ci| 类型                                                    | 说明                          |
1569e41f4b71Sopenharmony_ci| ------------------------------------------------------- | ----------------------------- |
1570e41f4b71Sopenharmony_ci| Promise\<[NetworkAccessPolicy](#networkaccesspolicy12)> | 以 Promise 形式返回设定结果。 |
1571e41f4b71Sopenharmony_ci
1572e41f4b71Sopenharmony_ci**错误码:**
1573e41f4b71Sopenharmony_ci
1574e41f4b71Sopenharmony_ci| 错误码 ID | 错误信息                                     |
1575e41f4b71Sopenharmony_ci| --------- | -------------------------------------------- |
1576e41f4b71Sopenharmony_ci| 201       | Permission denied.                           |
1577e41f4b71Sopenharmony_ci| 202       | Non-system applications use system APIs.     |
1578e41f4b71Sopenharmony_ci| 401       | Parameter error.                             |
1579e41f4b71Sopenharmony_ci| 2100001   | Invalid parameter value.                     |
1580e41f4b71Sopenharmony_ci| 2100002   | Failed to connect to the service.            |
1581e41f4b71Sopenharmony_ci| 2100003   | System internal error.                       |
1582e41f4b71Sopenharmony_ci
1583e41f4b71Sopenharmony_ci**示例:**
1584e41f4b71Sopenharmony_ci
1585e41f4b71Sopenharmony_ci```ts
1586e41f4b71Sopenharmony_ciimport { BusinessError } from '@kit.BasicServicesKit';
1587e41f4b71Sopenharmony_ci
1588e41f4b71Sopenharmony_cipolicy
1589e41f4b71Sopenharmony_ci  .getNetworkAccessPolicy(11111)
1590e41f4b71Sopenharmony_ci  .then((data: policy.NetworkAccessPolicy) => {
1591e41f4b71Sopenharmony_ci    console.log(JSON.stringify(data));
1592e41f4b71Sopenharmony_ci  })
1593e41f4b71Sopenharmony_ci  .catch((error: BusinessError) => {
1594e41f4b71Sopenharmony_ci    console.error(JSON.stringify(error));
1595e41f4b71Sopenharmony_ci  });
1596e41f4b71Sopenharmony_ci```
1597e41f4b71Sopenharmony_ci
1598e41f4b71Sopenharmony_ci## policy.getNetworkAccessPolicy<sup>12+</sup>
1599e41f4b71Sopenharmony_ci
1600e41f4b71Sopenharmony_cigetNetworkAccessPolicy(): Promise<UidNetworkAccessPolicy>
1601e41f4b71Sopenharmony_ci
1602e41f4b71Sopenharmony_ci获取当前用户下所有应用 app 能否访问网络策略信息,使用 Promise 方式作为异步方法。
1603e41f4b71Sopenharmony_ci
1604e41f4b71Sopenharmony_ci**系统接口**:此接口为系统接口。
1605e41f4b71Sopenharmony_ci
1606e41f4b71Sopenharmony_ci**需要权限**:ohos.permission.MANAGE_NET_STRATEGY
1607e41f4b71Sopenharmony_ci
1608e41f4b71Sopenharmony_ci**系统能力**:SystemCapability.Communication.NetManager.Core
1609e41f4b71Sopenharmony_ci
1610e41f4b71Sopenharmony_ci**返回值:**
1611e41f4b71Sopenharmony_ci
1612e41f4b71Sopenharmony_ci| 类型                                                          | 说明                        |
1613e41f4b71Sopenharmony_ci| ------------------------------------------------------------- | --------------------------- |
1614e41f4b71Sopenharmony_ci| Promise\<[UidNetworkAccessPolicy](#uidnetworkaccesspolicy12)> | 以 Promise 形式返回设定结果。 |
1615e41f4b71Sopenharmony_ci
1616e41f4b71Sopenharmony_ci**错误码:**
1617e41f4b71Sopenharmony_ci
1618e41f4b71Sopenharmony_ci| 错误码 ID | 错误信息                                     |
1619e41f4b71Sopenharmony_ci| --------- | -------------------------------------------- |
1620e41f4b71Sopenharmony_ci| 201       | Permission denied.                           |
1621e41f4b71Sopenharmony_ci| 202       | Non-system applications use system APIs.     |
1622e41f4b71Sopenharmony_ci| 2100002   | Failed to connect to the service.            |
1623e41f4b71Sopenharmony_ci| 2100003   | System internal error.                       |
1624e41f4b71Sopenharmony_ci
1625e41f4b71Sopenharmony_ci**示例:**
1626e41f4b71Sopenharmony_ci
1627e41f4b71Sopenharmony_ci```ts
1628e41f4b71Sopenharmony_ciimport { BusinessError } from '@kit.BasicServicesKit';
1629e41f4b71Sopenharmony_ci
1630e41f4b71Sopenharmony_cipolicy
1631e41f4b71Sopenharmony_ci  .getNetworkAccessPolicy()
1632e41f4b71Sopenharmony_ci  .then((data: policy.UidNetworkAccessPolicy) => {
1633e41f4b71Sopenharmony_ci    let keyMap: Map<string, object> = new Map<string, object>(Object.entries(data));
1634e41f4b71Sopenharmony_ci    let uid:number = 0;
1635e41f4b71Sopenharmony_ci    let allowWiFi: string = "";
1636e41f4b71Sopenharmony_ci    let allowCellular: string = "";
1637e41f4b71Sopenharmony_ci
1638e41f4b71Sopenharmony_ci    keyMap.forEach((value:object, key:string) => {
1639e41f4b71Sopenharmony_ci      let valueMap: Map<string, string> = new Map<string, string>(Object.entries(value));
1640e41f4b71Sopenharmony_ci      uid = Number.parseInt(key);
1641e41f4b71Sopenharmony_ci      valueMap.forEach((value:string, key:string)=>{
1642e41f4b71Sopenharmony_ci        if (key == "allowWiFi") {
1643e41f4b71Sopenharmony_ci          allowWiFi = value;
1644e41f4b71Sopenharmony_ci        }
1645e41f4b71Sopenharmony_ci        if (key == "allowCellular") {
1646e41f4b71Sopenharmony_ci          allowCellular = value;
1647e41f4b71Sopenharmony_ci        }
1648e41f4b71Sopenharmony_ci      })
1649e41f4b71Sopenharmony_ci    })
1650e41f4b71Sopenharmony_ci    console.log(JSON.stringify(data));
1651e41f4b71Sopenharmony_ci  })
1652e41f4b71Sopenharmony_ci  .catch((error: BusinessError) => {
1653e41f4b71Sopenharmony_ci    console.error(JSON.stringify(error));
1654e41f4b71Sopenharmony_ci  });
1655e41f4b71Sopenharmony_ci```
1656e41f4b71Sopenharmony_ci
1657e41f4b71Sopenharmony_ci## policy.on
1658e41f4b71Sopenharmony_ci
1659e41f4b71Sopenharmony_ci网络策略的句柄。
1660e41f4b71Sopenharmony_ci
1661e41f4b71Sopenharmony_ci### on('netUidPolicyChange')<sup>10+</sup>
1662e41f4b71Sopenharmony_ci
1663e41f4b71Sopenharmony_cion(type: "netUidPolicyChange", callback: Callback\<NetUidPolicyInfo\>): void
1664e41f4b71Sopenharmony_ci
1665e41f4b71Sopenharmony_ci注册 policy 发生改变时的回调,使用 callback 方式作为异步方法。
1666e41f4b71Sopenharmony_ci
1667e41f4b71Sopenharmony_ci**系统接口**:此接口为系统接口。
1668e41f4b71Sopenharmony_ci
1669e41f4b71Sopenharmony_ci**需要权限**:ohos.permission.MANAGE_NET_STRATEGY
1670e41f4b71Sopenharmony_ci
1671e41f4b71Sopenharmony_ci**系统能力**:SystemCapability.Communication.NetManager.Core
1672e41f4b71Sopenharmony_ci
1673e41f4b71Sopenharmony_ci**参数:**
1674e41f4b71Sopenharmony_ci
1675e41f4b71Sopenharmony_ci| 参数名   | 类型                                                                | 必填 | 说明                                   |
1676e41f4b71Sopenharmony_ci| -------- | ------------------------------------------------------------------- | ---- | -------------------------------------- |
1677e41f4b71Sopenharmony_ci| type     | string                                                              | 是   | policy 发生改变的类型                  |
1678e41f4b71Sopenharmony_ci| callback | Callback\<[NetUidPolicyInfo](#netuidpolicyinfo11)> | 是   | 回调函数。注册 policy 发生改变时调用。 |
1679e41f4b71Sopenharmony_ci
1680e41f4b71Sopenharmony_ci**错误码:**
1681e41f4b71Sopenharmony_ci
1682e41f4b71Sopenharmony_ci| 错误码 ID | 错误信息                                     |
1683e41f4b71Sopenharmony_ci| --------- | -------------------------------------------- |
1684e41f4b71Sopenharmony_ci| 201       | Permission denied.                           |
1685e41f4b71Sopenharmony_ci| 202       | Non-system applications use system APIs.     |
1686e41f4b71Sopenharmony_ci| 401       | Parameter error.                             |
1687e41f4b71Sopenharmony_ci| 2100001   | Invalid parameter value.                     |
1688e41f4b71Sopenharmony_ci| 2100002   | Failed to connect to the service.            |
1689e41f4b71Sopenharmony_ci| 2100003   | System internal error.                       |
1690e41f4b71Sopenharmony_ci
1691e41f4b71Sopenharmony_ci**示例:**
1692e41f4b71Sopenharmony_ci
1693e41f4b71Sopenharmony_ci```ts
1694e41f4b71Sopenharmony_ciimport { policy } from '@kit.NetworkKit';
1695e41f4b71Sopenharmony_ci
1696e41f4b71Sopenharmony_ciinterface Data {
1697e41f4b71Sopenharmony_ci  uid: number,
1698e41f4b71Sopenharmony_ci  policy: policy.NetUidPolicy
1699e41f4b71Sopenharmony_ci}
1700e41f4b71Sopenharmony_ci
1701e41f4b71Sopenharmony_citry {
1702e41f4b71Sopenharmony_ci  policy.on('netUidPolicyChange', (data: Data) => {
1703e41f4b71Sopenharmony_ci    console.log('on netUidPolicyChange data: ' + JSON.stringify(data));
1704e41f4b71Sopenharmony_ci  });
1705e41f4b71Sopenharmony_ci} catch(err) {
1706e41f4b71Sopenharmony_ci  console.error('on netUidPolicyChange error: ' + JSON.stringify(err));
1707e41f4b71Sopenharmony_ci}
1708e41f4b71Sopenharmony_ci```
1709e41f4b71Sopenharmony_ci
1710e41f4b71Sopenharmony_ci### off('netUidPolicyChange')<sup>10+</sup>
1711e41f4b71Sopenharmony_ci
1712e41f4b71Sopenharmony_cioff(type: "netUidPolicyChange", callback?: Callback\<NetUidPolicyInfo\>): void
1713e41f4b71Sopenharmony_ci
1714e41f4b71Sopenharmony_ci注销 policy 发生改变时的回调,使用 callback 方式作为异步方法。
1715e41f4b71Sopenharmony_ci
1716e41f4b71Sopenharmony_ci**系统接口**:此接口为系统接口。
1717e41f4b71Sopenharmony_ci
1718e41f4b71Sopenharmony_ci**需要权限**:ohos.permission.MANAGE_NET_STRATEGY
1719e41f4b71Sopenharmony_ci
1720e41f4b71Sopenharmony_ci**系统能力**:SystemCapability.Communication.NetManager.Core
1721e41f4b71Sopenharmony_ci
1722e41f4b71Sopenharmony_ci**参数:**
1723e41f4b71Sopenharmony_ci
1724e41f4b71Sopenharmony_ci| 参数名   | 类型                                                                | 必填 | 说明                                   |
1725e41f4b71Sopenharmony_ci| -------- | ------------------------------------------------------------------- | ---- | -------------------------------------- |
1726e41f4b71Sopenharmony_ci| type     | string                                                              | 是   | policy 发生改变的类型                  |
1727e41f4b71Sopenharmony_ci| callback | Callback\<[NetUidPolicyInfo](#netuidpolicyinfo11)> | 否   | 回调函数。注销 policy 发生改变时调用。 |
1728e41f4b71Sopenharmony_ci
1729e41f4b71Sopenharmony_ci**错误码:**
1730e41f4b71Sopenharmony_ci
1731e41f4b71Sopenharmony_ci| 错误码 ID | 错误信息                                     |
1732e41f4b71Sopenharmony_ci| --------- | -------------------------------------------- |
1733e41f4b71Sopenharmony_ci| 201       | Permission denied.                           |
1734e41f4b71Sopenharmony_ci| 202       | Non-system applications use system APIs.     |
1735e41f4b71Sopenharmony_ci| 401       | Parameter error.                             |
1736e41f4b71Sopenharmony_ci| 2100001   | Invalid parameter value.                     |
1737e41f4b71Sopenharmony_ci| 2100002   | Failed to connect to the service.            |
1738e41f4b71Sopenharmony_ci| 2100003   | System internal error.                       |
1739e41f4b71Sopenharmony_ci
1740e41f4b71Sopenharmony_ci**示例:**
1741e41f4b71Sopenharmony_ci
1742e41f4b71Sopenharmony_ci```ts
1743e41f4b71Sopenharmony_ciimport { policy } from '@kit.NetworkKit';
1744e41f4b71Sopenharmony_ci
1745e41f4b71Sopenharmony_ciinterface Data {
1746e41f4b71Sopenharmony_ci  uid: number,
1747e41f4b71Sopenharmony_ci  policy: policy.NetUidPolicy
1748e41f4b71Sopenharmony_ci}
1749e41f4b71Sopenharmony_ci
1750e41f4b71Sopenharmony_citry {
1751e41f4b71Sopenharmony_ci  policy.on('netUidPolicyChange', (data: Data) => {
1752e41f4b71Sopenharmony_ci    console.log('on netUidPolicyChange data: ' + JSON.stringify(data));
1753e41f4b71Sopenharmony_ci  });
1754e41f4b71Sopenharmony_ci} catch(err) {
1755e41f4b71Sopenharmony_ci  console.error('on netUidPolicyChange error: ' + JSON.stringify(err));
1756e41f4b71Sopenharmony_ci}
1757e41f4b71Sopenharmony_ci
1758e41f4b71Sopenharmony_citry {
1759e41f4b71Sopenharmony_ci  policy.off('netUidPolicyChange', (data: Data) => {
1760e41f4b71Sopenharmony_ci    console.log('off netUidPolicyChange data: ' + JSON.stringify(data));
1761e41f4b71Sopenharmony_ci  });
1762e41f4b71Sopenharmony_ci} catch(err) {
1763e41f4b71Sopenharmony_ci  console.error('off netUidPolicyChange error: ' + JSON.stringify(err));
1764e41f4b71Sopenharmony_ci}
1765e41f4b71Sopenharmony_ci```
1766e41f4b71Sopenharmony_ci
1767e41f4b71Sopenharmony_ci### on('netUidRuleChange')<sup>10+</sup>
1768e41f4b71Sopenharmony_ci
1769e41f4b71Sopenharmony_cion(type: "netUidRuleChange", callback: Callback\<NetUidRuleInfo\>): void
1770e41f4b71Sopenharmony_ci
1771e41f4b71Sopenharmony_ci注册 rule 发生改变时的回调,使用 callback 方式作为异步方法。
1772e41f4b71Sopenharmony_ci
1773e41f4b71Sopenharmony_ci**系统接口**:此接口为系统接口。
1774e41f4b71Sopenharmony_ci
1775e41f4b71Sopenharmony_ci**需要权限**:ohos.permission.MANAGE_NET_STRATEGY
1776e41f4b71Sopenharmony_ci
1777e41f4b71Sopenharmony_ci**系统能力**:SystemCapability.Communication.NetManager.Core
1778e41f4b71Sopenharmony_ci
1779e41f4b71Sopenharmony_ci**参数:**
1780e41f4b71Sopenharmony_ci
1781e41f4b71Sopenharmony_ci| 参数名   | 类型                                                          | 必填 | 说明                                   |
1782e41f4b71Sopenharmony_ci| -------- | ------------------------------------------------------------- | ---- | -------------------------------------- |
1783e41f4b71Sopenharmony_ci| type     | string                                                        | 是   | rule 发生改变的类型                    |
1784e41f4b71Sopenharmony_ci| callback | Callback\<[NetUidRuleInfo](#netuidruleinfo11)> | 是   | 回调函数。注册 rule 发生改变时的调用。 |
1785e41f4b71Sopenharmony_ci
1786e41f4b71Sopenharmony_ci**错误码:**
1787e41f4b71Sopenharmony_ci
1788e41f4b71Sopenharmony_ci| 错误码 ID | 错误信息                                     |
1789e41f4b71Sopenharmony_ci| --------- | -------------------------------------------- |
1790e41f4b71Sopenharmony_ci| 201       | Permission denied.                           |
1791e41f4b71Sopenharmony_ci| 202       | Non-system applications use system APIs.     |
1792e41f4b71Sopenharmony_ci| 401       | Parameter error.                             |
1793e41f4b71Sopenharmony_ci| 2100001   | Invalid parameter value.                     |
1794e41f4b71Sopenharmony_ci| 2100002   | Failed to connect to the service.            |
1795e41f4b71Sopenharmony_ci| 2100003   | System internal error.                       |
1796e41f4b71Sopenharmony_ci
1797e41f4b71Sopenharmony_ci**示例:**
1798e41f4b71Sopenharmony_ci
1799e41f4b71Sopenharmony_ci```ts
1800e41f4b71Sopenharmony_ciimport { policy } from '@kit.NetworkKit';
1801e41f4b71Sopenharmony_ci
1802e41f4b71Sopenharmony_ciinterface Data {
1803e41f4b71Sopenharmony_ci  uid: number,
1804e41f4b71Sopenharmony_ci  rule: policy.NetUidRule
1805e41f4b71Sopenharmony_ci}
1806e41f4b71Sopenharmony_ci
1807e41f4b71Sopenharmony_citry {
1808e41f4b71Sopenharmony_ci  policy.on('netUidRuleChange', (data: Data) => {
1809e41f4b71Sopenharmony_ci    console.log('on netUidRuleChange data: ' + JSON.stringify(data));
1810e41f4b71Sopenharmony_ci  });
1811e41f4b71Sopenharmony_ci} catch(err) {
1812e41f4b71Sopenharmony_ci  console.error('on netUidRuleChange error: ' + JSON.stringify(err));
1813e41f4b71Sopenharmony_ci}
1814e41f4b71Sopenharmony_ci```
1815e41f4b71Sopenharmony_ci
1816e41f4b71Sopenharmony_ci### off('netUidRuleChange')<sup>10+</sup>
1817e41f4b71Sopenharmony_ci
1818e41f4b71Sopenharmony_cioff(type: "netUidRuleChange", callback?: Callback\<NetUidRuleInfo\>): void
1819e41f4b71Sopenharmony_ci
1820e41f4b71Sopenharmony_ci注销 rule 发生改变时的回调,使用 callback 方式作为异步方法。
1821e41f4b71Sopenharmony_ci
1822e41f4b71Sopenharmony_ci**系统接口**:此接口为系统接口。
1823e41f4b71Sopenharmony_ci
1824e41f4b71Sopenharmony_ci**需要权限**:ohos.permission.MANAGE_NET_STRATEGY
1825e41f4b71Sopenharmony_ci
1826e41f4b71Sopenharmony_ci**系统能力**:SystemCapability.Communication.NetManager.Core
1827e41f4b71Sopenharmony_ci
1828e41f4b71Sopenharmony_ci**参数:**
1829e41f4b71Sopenharmony_ci
1830e41f4b71Sopenharmony_ci| 参数名   | 类型                                                          | 必填 | 说明                                   |
1831e41f4b71Sopenharmony_ci| -------- | ------------------------------------------------------------- | ---- | -------------------------------------- |
1832e41f4b71Sopenharmony_ci| type     | string                                                        | 是   | rule 发生改变的类型                    |
1833e41f4b71Sopenharmony_ci| callback | Callback\<[NetUidRuleInfo](#netuidruleinfo11)> | 否   | 回调函数。注销 rule 发生改变时的调用。 |
1834e41f4b71Sopenharmony_ci
1835e41f4b71Sopenharmony_ci**错误码:**
1836e41f4b71Sopenharmony_ci
1837e41f4b71Sopenharmony_ci| 错误码 ID | 错误信息                                     |
1838e41f4b71Sopenharmony_ci| --------- | -------------------------------------------- |
1839e41f4b71Sopenharmony_ci| 201       | Permission denied.                           |
1840e41f4b71Sopenharmony_ci| 202       | Non-system applications use system APIs.     |
1841e41f4b71Sopenharmony_ci| 401       | Parameter error.                             |
1842e41f4b71Sopenharmony_ci| 2100001   | Invalid parameter value.                     |
1843e41f4b71Sopenharmony_ci| 2100002   | Failed to connect to the service.            |
1844e41f4b71Sopenharmony_ci| 2100003   | System internal error.                       |
1845e41f4b71Sopenharmony_ci
1846e41f4b71Sopenharmony_ci**示例:**
1847e41f4b71Sopenharmony_ci
1848e41f4b71Sopenharmony_ci```ts
1849e41f4b71Sopenharmony_ciimport { policy } from '@kit.NetworkKit';
1850e41f4b71Sopenharmony_ci
1851e41f4b71Sopenharmony_ciinterface Data {
1852e41f4b71Sopenharmony_ci  uid: number,
1853e41f4b71Sopenharmony_ci  rule: policy.NetUidRule
1854e41f4b71Sopenharmony_ci}
1855e41f4b71Sopenharmony_ci
1856e41f4b71Sopenharmony_citry {
1857e41f4b71Sopenharmony_ci  policy.on('netUidRuleChange', (data: Data) => {
1858e41f4b71Sopenharmony_ci    console.log('on netUidRuleChange data: ' + JSON.stringify(data));
1859e41f4b71Sopenharmony_ci  });
1860e41f4b71Sopenharmony_ci} catch(err) {
1861e41f4b71Sopenharmony_ci  console.error('on netUidRuleChange error: ' + JSON.stringify(err));
1862e41f4b71Sopenharmony_ci}
1863e41f4b71Sopenharmony_ci
1864e41f4b71Sopenharmony_citry {
1865e41f4b71Sopenharmony_ci  policy.off('netUidRuleChange', (data: Data) => {
1866e41f4b71Sopenharmony_ci    console.log('off netUidRuleChange data: ' + JSON.stringify(data));
1867e41f4b71Sopenharmony_ci  });
1868e41f4b71Sopenharmony_ci} catch(err) {
1869e41f4b71Sopenharmony_ci  console.error('off netUidRuleChange error: ' + JSON.stringify(err));
1870e41f4b71Sopenharmony_ci}
1871e41f4b71Sopenharmony_ci```
1872e41f4b71Sopenharmony_ci
1873e41f4b71Sopenharmony_ci### on('netMeteredIfacesChange')<sup>10+</sup>
1874e41f4b71Sopenharmony_ci
1875e41f4b71Sopenharmony_cion(type: "netMeteredIfacesChange", callback: Callback\<Array\<string>>): void
1876e41f4b71Sopenharmony_ci
1877e41f4b71Sopenharmony_ci注册计量 iface 发生改变时的回调,使用 callback 方式作为异步方法。
1878e41f4b71Sopenharmony_ci
1879e41f4b71Sopenharmony_ci**系统接口**:此接口为系统接口。
1880e41f4b71Sopenharmony_ci
1881e41f4b71Sopenharmony_ci**需要权限**:ohos.permission.MANAGE_NET_STRATEGY
1882e41f4b71Sopenharmony_ci
1883e41f4b71Sopenharmony_ci**系统能力**:SystemCapability.Communication.NetManager.Core
1884e41f4b71Sopenharmony_ci
1885e41f4b71Sopenharmony_ci**参数:**
1886e41f4b71Sopenharmony_ci
1887e41f4b71Sopenharmony_ci| 参数名   | 类型                      | 必填 | 说明                                      |
1888e41f4b71Sopenharmony_ci| -------- | ------------------------- | ---- | ----------------------------------------- |
1889e41f4b71Sopenharmony_ci| type     | string                    | 是   | 计量 iface 发生改变的类型                 |
1890e41f4b71Sopenharmony_ci| callback | Callback\<Array\<string>> | 是   | 回调函数。注册计量 iface 发生改变时调用。 |
1891e41f4b71Sopenharmony_ci
1892e41f4b71Sopenharmony_ci**错误码:**
1893e41f4b71Sopenharmony_ci
1894e41f4b71Sopenharmony_ci| 错误码 ID | 错误信息                                     |
1895e41f4b71Sopenharmony_ci| --------- | -------------------------------------------- |
1896e41f4b71Sopenharmony_ci| 201       | Permission denied.                           |
1897e41f4b71Sopenharmony_ci| 202       | Non-system applications use system APIs.     |
1898e41f4b71Sopenharmony_ci| 401       | Parameter error.                             |
1899e41f4b71Sopenharmony_ci| 2100001   | Invalid parameter value.                     |
1900e41f4b71Sopenharmony_ci| 2100002   | Failed to connect to the service.            |
1901e41f4b71Sopenharmony_ci| 2100003   | System internal error.                       |
1902e41f4b71Sopenharmony_ci
1903e41f4b71Sopenharmony_ci**示例:**
1904e41f4b71Sopenharmony_ci
1905e41f4b71Sopenharmony_ci```ts
1906e41f4b71Sopenharmony_ciimport { policy } from '@kit.NetworkKit';
1907e41f4b71Sopenharmony_ci
1908e41f4b71Sopenharmony_citry {
1909e41f4b71Sopenharmony_ci  policy.on('netMeteredIfacesChange', (data: string[]) => {
1910e41f4b71Sopenharmony_ci    console.log('on netMeteredIfacesChange data: ' + JSON.stringify(data));
1911e41f4b71Sopenharmony_ci  });
1912e41f4b71Sopenharmony_ci} catch(err) {
1913e41f4b71Sopenharmony_ci  console.error('on netMeteredIfacesChange error: ' + JSON.stringify(err));
1914e41f4b71Sopenharmony_ci}
1915e41f4b71Sopenharmony_ci```
1916e41f4b71Sopenharmony_ci
1917e41f4b71Sopenharmony_ci### off('netMeteredIfacesChange')<sup>10+</sup>
1918e41f4b71Sopenharmony_ci
1919e41f4b71Sopenharmony_cioff(type: "netMeteredIfacesChange", callback?: Callback\<Array\<string>>): void
1920e41f4b71Sopenharmony_ci
1921e41f4b71Sopenharmony_ci注销计量 iface 发生改变时的回调,使用 callback 方式作为异步方法。
1922e41f4b71Sopenharmony_ci
1923e41f4b71Sopenharmony_ci**系统接口**:此接口为系统接口。
1924e41f4b71Sopenharmony_ci
1925e41f4b71Sopenharmony_ci**需要权限**:ohos.permission.MANAGE_NET_STRATEGY
1926e41f4b71Sopenharmony_ci
1927e41f4b71Sopenharmony_ci**系统能力**:SystemCapability.Communication.NetManager.Core
1928e41f4b71Sopenharmony_ci
1929e41f4b71Sopenharmony_ci**参数:**
1930e41f4b71Sopenharmony_ci
1931e41f4b71Sopenharmony_ci| 参数名   | 类型                      | 必填 | 说明                                      |
1932e41f4b71Sopenharmony_ci| -------- | ------------------------- | ---- | ----------------------------------------- |
1933e41f4b71Sopenharmony_ci| type     | string                    | 是   | 计量 iface 发生改变的类型                 |
1934e41f4b71Sopenharmony_ci| callback | Callback\<Array\<string>> | 否   | 回调函数。注册计量 iface 发生改变时调用。 |
1935e41f4b71Sopenharmony_ci
1936e41f4b71Sopenharmony_ci**错误码:**
1937e41f4b71Sopenharmony_ci
1938e41f4b71Sopenharmony_ci| 错误码 ID | 错误信息                                     |
1939e41f4b71Sopenharmony_ci| --------- | -------------------------------------------- |
1940e41f4b71Sopenharmony_ci| 201       | Permission denied.                           |
1941e41f4b71Sopenharmony_ci| 202       | Non-system applications use system APIs.     |
1942e41f4b71Sopenharmony_ci| 401       | Parameter error.                             |
1943e41f4b71Sopenharmony_ci| 2100001   | Invalid parameter value.                     |
1944e41f4b71Sopenharmony_ci| 2100002   | Failed to connect to the service.            |
1945e41f4b71Sopenharmony_ci| 2100003   | System internal error.                       |
1946e41f4b71Sopenharmony_ci
1947e41f4b71Sopenharmony_ci**示例:**
1948e41f4b71Sopenharmony_ci
1949e41f4b71Sopenharmony_ci```ts
1950e41f4b71Sopenharmony_ciimport { policy } from '@kit.NetworkKit';
1951e41f4b71Sopenharmony_ci
1952e41f4b71Sopenharmony_citry {
1953e41f4b71Sopenharmony_ci  policy.on('netMeteredIfacesChange', (data: string[]) => {
1954e41f4b71Sopenharmony_ci    console.log('on netMeteredIfacesChange data: ' + JSON.stringify(data));
1955e41f4b71Sopenharmony_ci  });
1956e41f4b71Sopenharmony_ci} catch(err) {
1957e41f4b71Sopenharmony_ci  console.error('on netMeteredIfacesChange error: ' + JSON.stringify(err));
1958e41f4b71Sopenharmony_ci}
1959e41f4b71Sopenharmony_ci
1960e41f4b71Sopenharmony_citry {
1961e41f4b71Sopenharmony_ci  policy.off('netMeteredIfacesChange', (data: string[]) => {
1962e41f4b71Sopenharmony_ci    console.log('off netMeteredIfacesChange data: ' + JSON.stringify(data));
1963e41f4b71Sopenharmony_ci  });
1964e41f4b71Sopenharmony_ci} catch(err) {
1965e41f4b71Sopenharmony_ci  console.error('off netMeteredIfacesChange error: ' + JSON.stringify(err));
1966e41f4b71Sopenharmony_ci}
1967e41f4b71Sopenharmony_ci```
1968e41f4b71Sopenharmony_ci
1969e41f4b71Sopenharmony_ci### on('netQuotaPolicyChange')<sup>10+</sup>
1970e41f4b71Sopenharmony_ci
1971e41f4b71Sopenharmony_cion(type: "netQuotaPolicyChange", callback: Callback\<Array\<NetQuotaPolicy>>): void
1972e41f4b71Sopenharmony_ci
1973e41f4b71Sopenharmony_ci注册计量网络策略发生改变时的回调,使用 callback 方式作为异步方法。
1974e41f4b71Sopenharmony_ci
1975e41f4b71Sopenharmony_ci**系统接口**:此接口为系统接口。
1976e41f4b71Sopenharmony_ci
1977e41f4b71Sopenharmony_ci**需要权限**:ohos.permission.MANAGE_NET_STRATEGY
1978e41f4b71Sopenharmony_ci
1979e41f4b71Sopenharmony_ci**系统能力**:SystemCapability.Communication.NetManager.Core
1980e41f4b71Sopenharmony_ci
1981e41f4b71Sopenharmony_ci**参数:**
1982e41f4b71Sopenharmony_ci
1983e41f4b71Sopenharmony_ci| 参数名   | 类型                                                   | 必填 | 说明                                       |
1984e41f4b71Sopenharmony_ci| -------- | ------------------------------------------------------ | ---- | ------------------------------------------ |
1985e41f4b71Sopenharmony_ci| type     | string                                                 | 是   | 计量网络策略发生改变的类型                 |
1986e41f4b71Sopenharmony_ci| callback | Callback\<Array\<[NetQuotaPolicy](#netquotapolicy10)>> | 是   | 回调函数。注册计量网络策略发生改变时调用。 |
1987e41f4b71Sopenharmony_ci
1988e41f4b71Sopenharmony_ci**错误码:**
1989e41f4b71Sopenharmony_ci
1990e41f4b71Sopenharmony_ci| 错误码 ID | 错误信息                                     |
1991e41f4b71Sopenharmony_ci| --------- | -------------------------------------------- |
1992e41f4b71Sopenharmony_ci| 201       | Permission denied.                           |
1993e41f4b71Sopenharmony_ci| 202       | Non-system applications use system APIs.     |
1994e41f4b71Sopenharmony_ci| 401       | Parameter error.                             |
1995e41f4b71Sopenharmony_ci| 2100001   | Invalid parameter value.                     |
1996e41f4b71Sopenharmony_ci| 2100002   | Failed to connect to the service.            |
1997e41f4b71Sopenharmony_ci| 2100003   | System internal error.                       |
1998e41f4b71Sopenharmony_ci
1999e41f4b71Sopenharmony_ci**示例:**
2000e41f4b71Sopenharmony_ci
2001e41f4b71Sopenharmony_ci```ts
2002e41f4b71Sopenharmony_ciimport { policy } from '@kit.NetworkKit';
2003e41f4b71Sopenharmony_ci
2004e41f4b71Sopenharmony_ciinterface Data {
2005e41f4b71Sopenharmony_ci  uid: number,
2006e41f4b71Sopenharmony_ci  policy: policy.NetUidPolicy
2007e41f4b71Sopenharmony_ci}
2008e41f4b71Sopenharmony_ci
2009e41f4b71Sopenharmony_citry {
2010e41f4b71Sopenharmony_ci  policy.on('netQuotaPolicyChange', (data: policy.NetQuotaPolicy[]) => {
2011e41f4b71Sopenharmony_ci    console.log('on netQuotaPolicyChange data: ' + JSON.stringify(data));
2012e41f4b71Sopenharmony_ci  });
2013e41f4b71Sopenharmony_ci} catch(err) {
2014e41f4b71Sopenharmony_ci  console.error('on netQuotaPolicyChange error: ' + JSON.stringify(err));
2015e41f4b71Sopenharmony_ci}
2016e41f4b71Sopenharmony_ci```
2017e41f4b71Sopenharmony_ci
2018e41f4b71Sopenharmony_ci### off('netQuotaPolicyChange')<sup>10+</sup>
2019e41f4b71Sopenharmony_ci
2020e41f4b71Sopenharmony_cioff(type: "netQuotaPolicyChange", callback?: Callback\<Array\<NetQuotaPolicy>>): void
2021e41f4b71Sopenharmony_ci
2022e41f4b71Sopenharmony_ci注销计量网络策略发生改变时的回调,使用 callback 方式作为异步方法。
2023e41f4b71Sopenharmony_ci
2024e41f4b71Sopenharmony_ci**系统接口**:此接口为系统接口。
2025e41f4b71Sopenharmony_ci
2026e41f4b71Sopenharmony_ci**需要权限**:ohos.permission.MANAGE_NET_STRATEGY
2027e41f4b71Sopenharmony_ci
2028e41f4b71Sopenharmony_ci**系统能力**:SystemCapability.Communication.NetManager.Core
2029e41f4b71Sopenharmony_ci
2030e41f4b71Sopenharmony_ci**参数:**
2031e41f4b71Sopenharmony_ci
2032e41f4b71Sopenharmony_ci| 参数名   | 类型                                                   | 必填 | 说明                                       |
2033e41f4b71Sopenharmony_ci| -------- | ------------------------------------------------------ | ---- | ------------------------------------------ |
2034e41f4b71Sopenharmony_ci| type     | string                                                 | 是   | 计量网络策略发生改变的类型                 |
2035e41f4b71Sopenharmony_ci| callback | Callback\<Array\<[NetQuotaPolicy](#netquotapolicy10)>> | 否   | 回调函数。注册计量网络策略发生改变时调用。 |
2036e41f4b71Sopenharmony_ci
2037e41f4b71Sopenharmony_ci**错误码:**
2038e41f4b71Sopenharmony_ci
2039e41f4b71Sopenharmony_ci| 错误码 ID | 错误信息                                     |
2040e41f4b71Sopenharmony_ci| --------- | -------------------------------------------- |
2041e41f4b71Sopenharmony_ci| 201       | Permission denied.                           |
2042e41f4b71Sopenharmony_ci| 202       | Non-system applications use system APIs.     |
2043e41f4b71Sopenharmony_ci| 401       | Parameter error.                             |
2044e41f4b71Sopenharmony_ci| 2100001   | Invalid parameter value.                     |
2045e41f4b71Sopenharmony_ci| 2100002   | Failed to connect to the service.            |
2046e41f4b71Sopenharmony_ci| 2100003   | System internal error.                       |
2047e41f4b71Sopenharmony_ci
2048e41f4b71Sopenharmony_ci**示例:**
2049e41f4b71Sopenharmony_ci
2050e41f4b71Sopenharmony_ci```ts
2051e41f4b71Sopenharmony_ciimport { policy } from '@kit.NetworkKit';
2052e41f4b71Sopenharmony_ci
2053e41f4b71Sopenharmony_citry {
2054e41f4b71Sopenharmony_ci  policy.on('netQuotaPolicyChange', (data: Array<policy.NetQuotaPolicy>) => {
2055e41f4b71Sopenharmony_ci    console.log('on netQuotaPolicyChange data: ' + JSON.stringify(data));
2056e41f4b71Sopenharmony_ci  });
2057e41f4b71Sopenharmony_ci} catch(err) {
2058e41f4b71Sopenharmony_ci  console.error('on netQuotaPolicyChange error: ' + JSON.stringify(err));
2059e41f4b71Sopenharmony_ci}
2060e41f4b71Sopenharmony_ci
2061e41f4b71Sopenharmony_citry {
2062e41f4b71Sopenharmony_ci  policy.off('netQuotaPolicyChange', (data: Array<policy.NetQuotaPolicy>) => {
2063e41f4b71Sopenharmony_ci    console.log('off netQuotaPolicyChange data: ' + JSON.stringify(data));
2064e41f4b71Sopenharmony_ci  });
2065e41f4b71Sopenharmony_ci} catch(err) {
2066e41f4b71Sopenharmony_ci  console.error('off netQuotaPolicyChange error: ' + JSON.stringify(err));
2067e41f4b71Sopenharmony_ci}
2068e41f4b71Sopenharmony_ci```
2069e41f4b71Sopenharmony_ci
2070e41f4b71Sopenharmony_ci### on('netBackgroundPolicyChange')<sup>10+</sup>
2071e41f4b71Sopenharmony_ci
2072e41f4b71Sopenharmony_cion(type: "netBackgroundPolicyChange", callback: Callback\<boolean>): void
2073e41f4b71Sopenharmony_ci
2074e41f4b71Sopenharmony_ci注册后台网络策略发生改变时的回调,使用 callback 方式作为异步方法。
2075e41f4b71Sopenharmony_ci
2076e41f4b71Sopenharmony_ci**系统接口**:此接口为系统接口。
2077e41f4b71Sopenharmony_ci
2078e41f4b71Sopenharmony_ci**需要权限**:ohos.permission.MANAGE_NET_STRATEGY
2079e41f4b71Sopenharmony_ci
2080e41f4b71Sopenharmony_ci**系统能力**:SystemCapability.Communication.NetManager.Core
2081e41f4b71Sopenharmony_ci
2082e41f4b71Sopenharmony_ci**参数:**
2083e41f4b71Sopenharmony_ci
2084e41f4b71Sopenharmony_ci| 参数名   | 类型               | 必填 | 说明                                       |
2085e41f4b71Sopenharmony_ci| -------- | ------------------ | ---- | ------------------------------------------ |
2086e41f4b71Sopenharmony_ci| type     | string             | 是   | 后台网络策略发生改变的类型                 |
2087e41f4b71Sopenharmony_ci| callback | Callback\<boolean> | 是   | 回调函数。注册后台网络策略发生改变时调用。 |
2088e41f4b71Sopenharmony_ci
2089e41f4b71Sopenharmony_ci**错误码:**
2090e41f4b71Sopenharmony_ci
2091e41f4b71Sopenharmony_ci| 错误码 ID | 错误信息                                     |
2092e41f4b71Sopenharmony_ci| --------- | -------------------------------------------- |
2093e41f4b71Sopenharmony_ci| 201       | Permission denied.                           |
2094e41f4b71Sopenharmony_ci| 202       | Non-system applications use system APIs.     |
2095e41f4b71Sopenharmony_ci| 401       | Parameter error.                             |
2096e41f4b71Sopenharmony_ci| 2100001   | Invalid parameter value.                     |
2097e41f4b71Sopenharmony_ci| 2100002   | Failed to connect to the service.            |
2098e41f4b71Sopenharmony_ci| 2100003   | System internal error.                       |
2099e41f4b71Sopenharmony_ci
2100e41f4b71Sopenharmony_ci**示例:**
2101e41f4b71Sopenharmony_ci
2102e41f4b71Sopenharmony_ci```ts
2103e41f4b71Sopenharmony_ciimport { policy } from '@kit.NetworkKit';
2104e41f4b71Sopenharmony_ci
2105e41f4b71Sopenharmony_citry {
2106e41f4b71Sopenharmony_ci  policy.on('netBackgroundPolicyChange', (data: boolean) => {
2107e41f4b71Sopenharmony_ci    console.log('on netBackgroundPolicyChange data: ' + JSON.stringify(data));
2108e41f4b71Sopenharmony_ci  });
2109e41f4b71Sopenharmony_ci} catch(err) {
2110e41f4b71Sopenharmony_ci  console.error('on netBackgroundPolicyChange error: ' + JSON.stringify(err));
2111e41f4b71Sopenharmony_ci}
2112e41f4b71Sopenharmony_ci```
2113e41f4b71Sopenharmony_ci
2114e41f4b71Sopenharmony_ci### off('netBackgroundPolicyChange')<sup>10+</sup>
2115e41f4b71Sopenharmony_ci
2116e41f4b71Sopenharmony_cioff(type: "netBackgroundPolicyChange", callback?: Callback\<boolean>): void
2117e41f4b71Sopenharmony_ci
2118e41f4b71Sopenharmony_ci注销后台网络策略发生改变时的回调,使用 callback 方式作为异步方法。
2119e41f4b71Sopenharmony_ci
2120e41f4b71Sopenharmony_ci**系统接口**:此接口为系统接口。
2121e41f4b71Sopenharmony_ci
2122e41f4b71Sopenharmony_ci**需要权限**:ohos.permission.MANAGE_NET_STRATEGY
2123e41f4b71Sopenharmony_ci
2124e41f4b71Sopenharmony_ci**系统能力**:SystemCapability.Communication.NetManager.Core
2125e41f4b71Sopenharmony_ci
2126e41f4b71Sopenharmony_ci**参数:**
2127e41f4b71Sopenharmony_ci
2128e41f4b71Sopenharmony_ci| 参数名   | 类型               | 必填 | 说明                                       |
2129e41f4b71Sopenharmony_ci| -------- | ------------------ | ---- | ------------------------------------------ |
2130e41f4b71Sopenharmony_ci| type     | string             | 是   | 后台网络策略发生改变的类型                 |
2131e41f4b71Sopenharmony_ci| callback | Callback\<boolean> | 否   | 回调函数。注册后台网络策略发生改变时调用。 |
2132e41f4b71Sopenharmony_ci
2133e41f4b71Sopenharmony_ci**错误码:**
2134e41f4b71Sopenharmony_ci
2135e41f4b71Sopenharmony_ci| 错误码 ID | 错误信息                                     |
2136e41f4b71Sopenharmony_ci| --------- | -------------------------------------------- |
2137e41f4b71Sopenharmony_ci| 201       | Permission denied.                           |
2138e41f4b71Sopenharmony_ci| 202       | Non-system applications use system APIs.     |
2139e41f4b71Sopenharmony_ci| 401       | Parameter error.                             |
2140e41f4b71Sopenharmony_ci| 2100001   | Invalid parameter value.                     |
2141e41f4b71Sopenharmony_ci| 2100002   | Failed to connect to the service.            |
2142e41f4b71Sopenharmony_ci| 2100003   | System internal error.                       |
2143e41f4b71Sopenharmony_ci
2144e41f4b71Sopenharmony_ci**示例:**
2145e41f4b71Sopenharmony_ci
2146e41f4b71Sopenharmony_ci```ts
2147e41f4b71Sopenharmony_ciimport { policy } from '@kit.NetworkKit';
2148e41f4b71Sopenharmony_ci
2149e41f4b71Sopenharmony_citry {
2150e41f4b71Sopenharmony_ci  policy.on('netBackgroundPolicyChange', (data: boolean) => {
2151e41f4b71Sopenharmony_ci    console.log('on netBackgroundPolicyChange data: ' + JSON.stringify(data));
2152e41f4b71Sopenharmony_ci  });
2153e41f4b71Sopenharmony_ci} catch(err) {
2154e41f4b71Sopenharmony_ci  console.error('on netBackgroundPolicyChange error: ' + JSON.stringify(err));
2155e41f4b71Sopenharmony_ci}
2156e41f4b71Sopenharmony_ci
2157e41f4b71Sopenharmony_citry {
2158e41f4b71Sopenharmony_ci  policy.off('netBackgroundPolicyChange', (data: boolean) => {
2159e41f4b71Sopenharmony_ci    console.log('off netBackgroundPolicyChange data: ' + JSON.stringify(data));
2160e41f4b71Sopenharmony_ci  });
2161e41f4b71Sopenharmony_ci} catch(err) {
2162e41f4b71Sopenharmony_ci  console.error('off netBackgroundPolicyChange error: ' + JSON.stringify(err));
2163e41f4b71Sopenharmony_ci}
2164e41f4b71Sopenharmony_ci```
2165e41f4b71Sopenharmony_ci
2166e41f4b71Sopenharmony_ci## NetBackgroundPolicy<sup>10+</sup>
2167e41f4b71Sopenharmony_ci
2168e41f4b71Sopenharmony_ci后台网络策略。
2169e41f4b71Sopenharmony_ci
2170e41f4b71Sopenharmony_ci**系统接口**:此接口为系统接口。
2171e41f4b71Sopenharmony_ci
2172e41f4b71Sopenharmony_ci**系统能力**:SystemCapability.Communication.NetManager.Core
2173e41f4b71Sopenharmony_ci
2174e41f4b71Sopenharmony_ci| 名称                            | 值  | 说明                                       |
2175e41f4b71Sopenharmony_ci| ------------------------------- | --- | ------------------------------------------ |
2176e41f4b71Sopenharmony_ci| NET_BACKGROUND_POLICY_NONE      | 0   | 默认值。                                   |
2177e41f4b71Sopenharmony_ci| NET_BACKGROUND_POLICY_ENABLE    | 1   | 应用在后台可以使用计量网路。               |
2178e41f4b71Sopenharmony_ci| NET_BACKGROUND_POLICY_DISABLE   | 2   | 应用在后台不可以使用计量网路。             |
2179e41f4b71Sopenharmony_ci| NET_BACKGROUND_POLICY_TRUSTLIST | 3   | 只有应用指定的列表在后台可以使用计量网络。 |
2180e41f4b71Sopenharmony_ci
2181e41f4b71Sopenharmony_ci## NetQuotaPolicy<sup>10+</sup>
2182e41f4b71Sopenharmony_ci
2183e41f4b71Sopenharmony_ci计量网络策略。
2184e41f4b71Sopenharmony_ci
2185e41f4b71Sopenharmony_ci**系统接口**:此接口为系统接口。
2186e41f4b71Sopenharmony_ci
2187e41f4b71Sopenharmony_ci**系统能力**:SystemCapability.Communication.NetManager.Core
2188e41f4b71Sopenharmony_ci
2189e41f4b71Sopenharmony_ci| 名称             | 类型                                    | 必填 | 说明                             |
2190e41f4b71Sopenharmony_ci| ---------------- | --------------------------------------- | ---- | -------------------------------- |
2191e41f4b71Sopenharmony_ci| networkMatchRule | [NetworkMatchRule](#networkmatchrule10) | 是   | 网络标识,用来确定设置哪一个网络 |
2192e41f4b71Sopenharmony_ci| quotaPolicy      | [QuotaPolicy](#quotapolicy10)           | 是   | 具体的计量网络策略               |
2193e41f4b71Sopenharmony_ci
2194e41f4b71Sopenharmony_ci## NetworkMatchRule<sup>10+</sup>
2195e41f4b71Sopenharmony_ci
2196e41f4b71Sopenharmony_ci网络标识,用来确定设置哪一个网络
2197e41f4b71Sopenharmony_ci
2198e41f4b71Sopenharmony_ci**系统接口**:此接口为系统接口。
2199e41f4b71Sopenharmony_ci
2200e41f4b71Sopenharmony_ci**系统能力**:SystemCapability.Communication.NetManager.Core
2201e41f4b71Sopenharmony_ci
2202e41f4b71Sopenharmony_ci| 名称     | 类型                                                 | 必填 | 说明                                                                         |
2203e41f4b71Sopenharmony_ci| -------- | ---------------------------------------------------- | ---- | ---------------------------------------------------------------------------- |
2204e41f4b71Sopenharmony_ci| netType  | [NetBearType](js-apis-net-connection.md#netbeartype) | 是   | 网络类型。                                                                   |
2205e41f4b71Sopenharmony_ci| simId    | string                                               | 是   | 计量蜂窝网络的 SIM 卡的标识值。以太网,wifi 网络不会用到                     |
2206e41f4b71Sopenharmony_ci| identity | string                                               | 是   | 计量蜂窝网络中配合 simId 联合使用。以太网,wifi 网络单独使用。用于标记类型。 |
2207e41f4b71Sopenharmony_ci
2208e41f4b71Sopenharmony_ci## QuotaPolicy<sup>10+</sup>
2209e41f4b71Sopenharmony_ci
2210e41f4b71Sopenharmony_ci计量网络策略
2211e41f4b71Sopenharmony_ci
2212e41f4b71Sopenharmony_ci**系统接口**:此接口为系统接口。
2213e41f4b71Sopenharmony_ci
2214e41f4b71Sopenharmony_ci**系统能力**:SystemCapability.Communication.NetManager.Core
2215e41f4b71Sopenharmony_ci
2216e41f4b71Sopenharmony_ci| 名称              | 类型                            | 必填 | 说明                                                  |
2217e41f4b71Sopenharmony_ci| ----------------- |-------------------------------| ---- |-----------------------------------------------------|
2218e41f4b71Sopenharmony_ci| periodDuration    | string                        | 是   | 流量限制计量周期。D1,M1,Y1 分别代表 1 天,1 个月,1 年内流量限制,超出时间则不受限制。 |
2219e41f4b71Sopenharmony_ci| warningBytes      | number                        | 是   | 发出警告的流量阈值。                                          |
2220e41f4b71Sopenharmony_ci| limitBytes        | number                        | 是   | 流量设置的配额。                                            |
2221e41f4b71Sopenharmony_ci| metered           | boolean                       | 是   | 是否为计量网络。                                            |
2222e41f4b71Sopenharmony_ci| limitAction       | [LimitAction](#limitaction10) | 是   | 到达流量限制后的动作。                                         |
2223e41f4b71Sopenharmony_ci| lastWarningRemind | number                        | 否   | 最新一次发出警告的时间。默认值:-1                                  |
2224e41f4b71Sopenharmony_ci| lastLimitRemind   | number                        | 否   | 最新一次配额耗尽的时间。默认值:-1                                        |
2225e41f4b71Sopenharmony_ci
2226e41f4b71Sopenharmony_ci## LimitAction<sup>10+</sup>
2227e41f4b71Sopenharmony_ci
2228e41f4b71Sopenharmony_ci限制动作。
2229e41f4b71Sopenharmony_ci
2230e41f4b71Sopenharmony_ci**系统接口**:此接口为系统接口。
2231e41f4b71Sopenharmony_ci
2232e41f4b71Sopenharmony_ci**系统能力**:SystemCapability.Communication.NetManager.Core
2233e41f4b71Sopenharmony_ci
2234e41f4b71Sopenharmony_ci| 名称                         | 值  | 说明                               |
2235e41f4b71Sopenharmony_ci| ---------------------------- | --- | ---------------------------------- |
2236e41f4b71Sopenharmony_ci| LIMIT_ACTION_NONE            | -1  | 默认值。                           |
2237e41f4b71Sopenharmony_ci| LIMIT_ACTION_ACCESS_DISABLED | 0   | 当配额策略达到限制时,访问被禁用。 |
2238e41f4b71Sopenharmony_ci| LIMIT_ACTION_ALERT_ONLY      | 1   | 当配额策略达到限制时,将警告用户。 |
2239e41f4b71Sopenharmony_ci
2240e41f4b71Sopenharmony_ci## NetUidRule<sup>10+</sup>
2241e41f4b71Sopenharmony_ci
2242e41f4b71Sopenharmony_ci计量网络规则。
2243e41f4b71Sopenharmony_ci
2244e41f4b71Sopenharmony_ci**系统接口**:此接口为系统接口。
2245e41f4b71Sopenharmony_ci
2246e41f4b71Sopenharmony_ci**系统能力**:SystemCapability.Communication.NetManager.Core
2247e41f4b71Sopenharmony_ci
2248e41f4b71Sopenharmony_ci| 名称                              | 值     | 说明                 |
2249e41f4b71Sopenharmony_ci| --------------------------------- | ------ | -------------------- |
2250e41f4b71Sopenharmony_ci| NET_RULE_NONE                     | 0      | 默认规则             |
2251e41f4b71Sopenharmony_ci| NET_RULE_ALLOW_METERED_FOREGROUND | 1 << 0 | 允许前台访问计量网络 |
2252e41f4b71Sopenharmony_ci| NET_RULE_ALLOW_METERED            | 1 << 1 | 允许访问计量网络     |
2253e41f4b71Sopenharmony_ci| NET_RULE_REJECT_METERED           | 1 << 2 | 拒绝访问计量网络     |
2254e41f4b71Sopenharmony_ci| NET_RULE_ALLOW_ALL                | 1 << 5 | 允许访问所有网络     |
2255e41f4b71Sopenharmony_ci| NET_RULE_REJECT_ALL               | 1 << 6 | 拒绝访问所有网络     |
2256e41f4b71Sopenharmony_ci
2257e41f4b71Sopenharmony_ci## NetUidRuleInfo<sup>11+</sup>
2258e41f4b71Sopenharmony_ci
2259e41f4b71Sopenharmony_ci生成网络唯一标识
2260e41f4b71Sopenharmony_ci
2261e41f4b71Sopenharmony_ci**系统接口**:此接口为系统接口。
2262e41f4b71Sopenharmony_ci
2263e41f4b71Sopenharmony_ci**系统能力**:SystemCapability.Communication.NetManager.Core
2264e41f4b71Sopenharmony_ci
2265e41f4b71Sopenharmony_ci| 名称              | 类型                           | 必填 | 说明                                      |
2266e41f4b71Sopenharmony_ci| ----------------- | ----------------------------- | ---- | ----------------------------------------- |
2267e41f4b71Sopenharmony_ci| uid               | number                        | 是   | 流量警告的阈值,默认:DATA_USAGE_UNKNOWN。 |
2268e41f4b71Sopenharmony_ci| rule              | [NetUidRule](#netuidrule10)   | 是   | 规定一个UID访问计量网络还是非计量网络。     |
2269e41f4b71Sopenharmony_ci
2270e41f4b71Sopenharmony_ci## NetUidPolicyInfo<sup>11+</sup>
2271e41f4b71Sopenharmony_ci
2272e41f4b71Sopenharmony_ci注册网络UID策略变化的回调函数
2273e41f4b71Sopenharmony_ci
2274e41f4b71Sopenharmony_ci**系统接口**:此接口为系统接口。
2275e41f4b71Sopenharmony_ci
2276e41f4b71Sopenharmony_ci**系统能力**:SystemCapability.Communication.NetManager.Core
2277e41f4b71Sopenharmony_ci
2278e41f4b71Sopenharmony_ci| 名称              | 类型                            | 必填 | 说明                                    |
2279e41f4b71Sopenharmony_ci| ----------------- | ------------------------------- | ---- | -------------------------------------- |
2280e41f4b71Sopenharmony_ci| uid               | number                          | 是   | 流量警告的阈值,默认:DATA_USAGE_UNKNOWN |
2281e41f4b71Sopenharmony_ci| policy            | [NetUidPolicy](#netuidpolicy10) | 是   | UID指定了在后台模式下网络访问的策略。    |
2282e41f4b71Sopenharmony_ci
2283e41f4b71Sopenharmony_ci## RemindType<sup>10+</sup>
2284e41f4b71Sopenharmony_ci
2285e41f4b71Sopenharmony_ci提醒类型。
2286e41f4b71Sopenharmony_ci
2287e41f4b71Sopenharmony_ci**系统接口**:此接口为系统接口。
2288e41f4b71Sopenharmony_ci
2289e41f4b71Sopenharmony_ci**系统能力**:SystemCapability.Communication.NetManager.Core
2290e41f4b71Sopenharmony_ci
2291e41f4b71Sopenharmony_ci| 名称                | 值  | 说明     |
2292e41f4b71Sopenharmony_ci| ------------------- | --- | -------- |
2293e41f4b71Sopenharmony_ci| REMIND_TYPE_WARNING | 1   | 警告提醒 |
2294e41f4b71Sopenharmony_ci| REMIND_TYPE_LIMIT   | 2   | 限制提醒 |
2295e41f4b71Sopenharmony_ci
2296e41f4b71Sopenharmony_ci## NetUidPolicy<sup>10+</sup>
2297e41f4b71Sopenharmony_ci
2298e41f4b71Sopenharmony_ci应用对应的网络策略。
2299e41f4b71Sopenharmony_ci
2300e41f4b71Sopenharmony_ci**系统接口**:此接口为系统接口。
2301e41f4b71Sopenharmony_ci
2302e41f4b71Sopenharmony_ci**系统能力**:SystemCapability.Communication.NetManager.Core
2303e41f4b71Sopenharmony_ci
2304e41f4b71Sopenharmony_ci| 名称                                 | 值     | 说明                       |
2305e41f4b71Sopenharmony_ci| ------------------------------------ | ------ | -------------------------- |
2306e41f4b71Sopenharmony_ci| NET_POLICY_NONE                      | 0      | 默认网络策略               |
2307e41f4b71Sopenharmony_ci| NET_POLICY_ALLOW_METERED_BACKGROUND  | 1 << 0 | 允许应用在后台访问计量网络 |
2308e41f4b71Sopenharmony_ci| NET_POLICY_REJECT_METERED_BACKGROUND | 1 << 1 | 拒绝应用在后台访问计量网络 |
2309e41f4b71Sopenharmony_ci
2310e41f4b71Sopenharmony_ci## NetworkAccessPolicy<sup>12+</sup>
2311e41f4b71Sopenharmony_ci
2312e41f4b71Sopenharmony_ci应用对应的连接网络的策略。
2313e41f4b71Sopenharmony_ci
2314e41f4b71Sopenharmony_ci**系统接口**:此接口为系统接口。
2315e41f4b71Sopenharmony_ci
2316e41f4b71Sopenharmony_ci**系统能力**:SystemCapability.Communication.NetManager.Core
2317e41f4b71Sopenharmony_ci
2318e41f4b71Sopenharmony_ci| 名称              | 类型       | 必填 | 说明                          |
2319e41f4b71Sopenharmony_ci| ----------------- | --------- | ---- | ----------------------------- |
2320e41f4b71Sopenharmony_ci| allowWiFi         | boolean   | 是   | 能否允许访问wifi网络 |
2321e41f4b71Sopenharmony_ci| allowCellular     | boolean   | 是   | 能否允许访问蜂窝网络 |
2322e41f4b71Sopenharmony_ci
2323e41f4b71Sopenharmony_ci## UidNetworkAccessPolicy<sup>12+</sup>
2324e41f4b71Sopenharmony_ci
2325e41f4b71Sopenharmony_ci应用标识以及对应应用连接网络的策略。
2326e41f4b71Sopenharmony_ci
2327e41f4b71Sopenharmony_ci**系统接口**:此接口为系统接口。
2328e41f4b71Sopenharmony_ci
2329e41f4b71Sopenharmony_ci**系统能力**:SystemCapability.Communication.NetManager.Core
2330e41f4b71Sopenharmony_ci
2331e41f4b71Sopenharmony_ci| 名称       | 类型                                                         | 必填 | 说明                 |
2332e41f4b71Sopenharmony_ci| --------- | -----------------------------------------------------------  | ---- | ------------------- |
2333e41f4b71Sopenharmony_ci| undefined | [uid: string]: [NetworkAccessPolicy](#networkaccesspolicy12) | 否   | 数据类型为键值对      |