• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# @ohos.telephony.data (蜂窝数据)
2
3蜂窝数据提供了移动数据管理能力,包括获取、设置默认移动数据的SIM卡,获取蜂窝数据业务的上下行和分组交换域(PS域)的连接状态,以及检查蜂窝数据业务和漫游是否启用等。
4
5>**说明:**
6>
7>本模块首批接口从API version 7开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。
8
9## 导入模块
10
11```ts
12import data from '@ohos.telephony.data';
13```
14
15## data.getDefaultCellularDataSlotId
16
17getDefaultCellularDataSlotId(callback: AsyncCallback\<number\>): void
18
19获取默认移动数据的SIM卡,使用callback方式作为异步方法。
20
21**系统能力**:SystemCapability.Telephony.CellularData
22
23**参数:**
24
25| 参数名   | 类型                    | 必填 | 说明                                       |
26| -------- | ----------------------- | ---- | ------------------------------------------ |
27| callback | AsyncCallback\<number\> | 是   | 回调函数。<br />0:卡槽1。<br />1:卡槽2。 |
28
29**示例:**
30
31```ts
32import data from '@ohos.telephony.data';
33import { BusinessError } from '@ohos.base';
34
35data.getDefaultCellularDataSlotId((err: BusinessError, data: number) => {
36    console.log(`callback: err->${JSON.stringify(err)}, data->${JSON.stringify(data)}`);
37});
38```
39
40## data.getDefaultCellularDataSlotId
41
42getDefaultCellularDataSlotId(): Promise\<number\>
43
44获取默认移动数据的SIM卡,使用Promise方式作为异步方法。
45
46**系统能力**:SystemCapability.Telephony.CellularData
47
48**返回值:**
49
50| 类型              | 说明                                                         |
51| ----------------- | ------------------------------------------------------------ |
52| Promise\<number\> | 以Promise形式返回获取默认移动数据的SIM卡。<br />0:卡槽1。<br />1:卡槽2。 |
53
54**示例:**
55
56```ts
57import data from '@ohos.telephony.data';
58import { BusinessError } from '@ohos.base';
59
60data.getDefaultCellularDataSlotId().then((data: number) => {
61    console.log(`getDefaultCellularDataSlotId success, promise: data->${JSON.stringify(data)}`);
62}).catch((err: BusinessError) => {
63    console.error(`getDefaultCellularDataSlotId fail, promise: err->${JSON.stringify(err)}`);
64});
65```
66
67## data.getDefaultCellularDataSlotIdSync<sup>9+</sup>
68
69getDefaultCellularDataSlotIdSync(): number
70
71获取默认移动数据的SIM卡
72
73**系统能力**:SystemCapability.Telephony.CellularData
74
75**返回值:**
76
77| 类型              | 说明                                                         |
78| ------ | -------------------------------------------------- |
79| number | 获取默认移动数据的SIM卡。<br />0:卡槽1。<br />1:卡槽2。 |
80
81**示例:**
82
83```ts
84import data from '@ohos.telephony.data';
85
86console.log("Result: "+ data.getDefaultCellularDataSlotIdSync())
87```
88
89## data.setDefaultCellularDataSlotId
90
91setDefaultCellularDataSlotId(slotId: number, callback: AsyncCallback\<void\>): void
92
93设置默认移动数据的SIM卡,使用callback方式作为异步方法。
94
95**系统接口:** 此接口为系统接口。
96
97**需要权限**:ohos.permission.SET_TELEPHONY_STATE
98
99**系统能力**:SystemCapability.Telephony.CellularData
100
101**参数:**
102
103| 参数名   | 类型                  | 必填 | 说明                                                         |
104| -------- | --------------------- | ---- | ------------------------------------------------------------ |
105| slotId   | number                | 是   | SIM卡槽ID。<br/>- 0:卡槽1。<br/>- 1:卡槽2。<br/>- -1:清除默认配置。 |
106| callback | AsyncCallback\<void\> | 是   | 回调函数。                                                   |
107
108**错误码:**
109
110以下错误码的详细介绍请参见[ohos.telephony(电话子系统)错误码](../../reference/errorcodes/errorcode-telephony.md)。
111
112| 错误码ID |                 错误信息                     |
113| -------- | -------------------------------------------- |
114| 201      | Permission denied.                           |
115| 202      | Non-system applications use system APIs.     |
116| 401      | Parameter error.                             |
117| 8300001  | Invalid parameter value.                     |
118| 8300002  | Operation failed. Cannot connect to service. |
119| 8300003  | System internal error.                       |
120| 8300004  | Do not have sim card.                        |
121| 8300999  | Unknown error code.                          |
122| 8301001  | SIM card is not activated.                   |
123
124**示例:**
125
126```ts
127import data from '@ohos.telephony.data';
128import { BusinessError } from '@ohos.base';
129
130data.setDefaultCellularDataSlotId(0, (err: BusinessError) => {
131    console.log(`callback: err->${JSON.stringify(err)}.`);
132});
133```
134
135## data.setDefaultCellularDataSlotId
136
137setDefaultCellularDataSlotId(slotId: number): Promise\<void\>
138
139设置默认移动数据的SIM卡,使用Promise方式作为异步方法。
140
141**系统接口:** 此接口为系统接口。
142
143**需要权限**:ohos.permission.SET_TELEPHONY_STATE
144
145**系统能力**:SystemCapability.Telephony.CellularData
146
147**参数:**
148
149| 参数名 | 类型   | 必填 | 说明                                                         |
150| ------ | ------ | ---- | ------------------------------------------------------------ |
151| slotId | number | 是   | SIM卡槽ID。<br/>- 0:卡槽1。<br/>- 1:卡槽2。<br/>- -1:清除默认配置。 |
152
153**返回值:**
154
155| 类型            | 说明                            |
156| --------------- | ------------------------------- |
157| Promise\<void\> | 以Promise形式异步返回设置结果。 |
158
159**错误码:**
160
161以下错误码的详细介绍请参见[ohos.telephony(电话子系统)错误码](../../reference/errorcodes/errorcode-telephony.md)。
162
163| 错误码ID |                 错误信息                     |
164| -------- | -------------------------------------------- |
165| 201      | Permission denied.                           |
166| 202      | Non-system applications use system APIs.     |
167| 401      | Parameter error.                             |
168| 8300001  | Invalid parameter value.                     |
169| 8300002  | Operation failed. Cannot connect to service. |
170| 8300003  | System internal error.                       |
171| 8300004  | Do not have sim card.                        |
172| 8300999  | Unknown error code.                          |
173| 8301001  | SIM card is not activated.                   |
174
175**示例:**
176
177```ts
178import data from '@ohos.telephony.data';
179import { BusinessError } from '@ohos.base';
180
181data.setDefaultCellularDataSlotId(0).then(() => {
182    console.log(`setDefaultCellularDataSlotId success.`);
183}).catch((err: BusinessError) => {
184    console.error(`setDefaultCellularDataSlotId fail, promise: err->${JSON.stringify(err)}`);
185});
186```
187
188## data.getCellularDataFlowType
189
190getCellularDataFlowType(callback: AsyncCallback\<DataFlowType\>): void
191
192获取蜂窝数据业务的上下行状态,使用callback方式作为异步方法。
193
194**系统能力**:SystemCapability.Telephony.CellularData
195
196**参数:**
197
198| 参数名   | 类型                                           | 必填 | 说明       |
199| -------- | ---------------------------------------------- | ---- | ---------- |
200| callback | AsyncCallback\<[DataFlowType](#dataflowtype)\> | 是   | 回调函数。 |
201
202**示例:**
203
204```ts
205import data from '@ohos.telephony.data';
206import { BusinessError } from '@ohos.base';
207
208data.getCellularDataFlowType((err: BusinessError, data: data.DataFlowType) => {
209    console.log(`callback: err->${JSON.stringify(err)}, data->${JSON.stringify(data)}`);
210});
211```
212
213## data.getCellularDataFlowType
214
215getCellularDataFlowType(): Promise\<DataFlowType\>
216
217获取蜂窝数据业务的上下行状态,使用Promise方式作为异步方法。
218
219**系统能力**:SystemCapability.Telephony.CellularData
220
221**返回值:**
222
223| 类型                                     | 说明                                            |
224| ---------------------------------------- | ----------------------------------------------- |
225| Promise\<[DataFlowType](#dataflowtype)\> | 以Promise形式返回获取蜂窝数据业务的上下行状态。 |
226
227**示例:**
228
229```ts
230import data from '@ohos.telephony.data';
231import { BusinessError } from '@ohos.base';
232
233data.getCellularDataFlowType().then((data: data.DataFlowType) => {
234    console.log(`test success, promise: data->${JSON.stringify(data)}`);
235}).catch((err: BusinessError) => {
236    console.error(`test fail, promise: err->${JSON.stringify(err)}`);
237});
238```
239
240## data.getCellularDataState
241
242getCellularDataState(callback: AsyncCallback\<DataConnectState\>): void
243
244获取分组交换域(PS域)的连接状态,使用callback方式作为异步方法。
245
246**系统能力**:SystemCapability.Telephony.CellularData
247
248**参数:**
249
250| 参数名   | 类型                                                   | 必填 | 说明       |
251| -------- | ------------------------------------------------------ | ---- | ---------- |
252| callback | AsyncCallback\<[DataConnectState](#dataconnectstate)\> | 是   | 回调函数。 |
253
254**示例:**
255
256```ts
257import data from '@ohos.telephony.data';
258import { BusinessError } from '@ohos.base';
259
260data.getCellularDataState((err: BusinessError, data: data.DataConnectState) => {
261    console.log(`callback: err->${JSON.stringify(err)}, data->${JSON.stringify(data)}`);
262});
263```
264
265## data.getCellularDataState
266
267getCellularDataState(): Promise\<DataConnectState\>
268
269获取分组交换域(PS域)的连接状态,使用Promise方式作为异步方法。
270
271**系统能力**:SystemCapability.Telephony.CellularData
272
273**返回值:**
274
275| 类型                                             | 说明                                  |
276| ------------------------------------------------ | ------------------------------------- |
277| Promise\<[DataConnectState](#dataconnectstate)\> | 以Promise形式返回获取PS域的连接状态。 |
278
279**示例:**
280
281```ts
282import data from '@ohos.telephony.data';
283import { BusinessError } from '@ohos.base';
284
285data.getCellularDataState().then((data: data.DataConnectState) => {
286    console.log(`test success, promise: data->${JSON.stringify(data)}`);
287}).catch((err: BusinessError) => {
288    console.error(`test fail, promise: err->${JSON.stringify(err)}`);
289});
290```
291
292## data.isCellularDataEnabled
293
294isCellularDataEnabled(callback: AsyncCallback\<boolean\>): void
295
296检查蜂窝数据业务是否启用,使用callback方式作为异步方法。
297
298**需要权限**:ohos.permission.GET_NETWORK_INFO
299
300**系统能力**:SystemCapability.Telephony.CellularData
301
302**参数:**
303
304| 参数名   | 类型                     | 必填 | 说明                                                         |
305| -------- | ------------------------ | ---- | ------------------------------------------------------------ |
306| callback | AsyncCallback\<boolean\> | 是   | 回调函数。<br />true:蜂窝数据业务已启用。<br />false:蜂窝数据业务已禁用。 |
307
308**错误码:**
309
310以下错误码的详细介绍请参见[ohos.telephony(电话子系统)错误码](../../reference/errorcodes/errorcode-telephony.md)。
311
312| 错误码ID |                 错误信息                     |
313| -------- | -------------------------------------------- |
314| 201      | Permission denied.                           |
315| 401      | Parameter error.                             |
316| 8300001  | Invalid parameter value.                     |
317| 8300002  | Operation failed. Cannot connect to service. |
318| 8300003  | System internal error.                       |
319| 8300999  | Unknown error code.                          |
320
321**示例:**
322
323```ts
324import data from '@ohos.telephony.data';
325import { BusinessError } from '@ohos.base';
326
327data.isCellularDataEnabled((err: BusinessError, data: boolean) => {
328    console.log(`callback: err->${JSON.stringify(err)}, data->${JSON.stringify(data)}`);
329});
330```
331
332## data.isCellularDataEnabled
333
334isCellularDataEnabled(): Promise\<boolean\>
335
336检查蜂窝数据业务是否启用,使用Promise方式作为异步方法。
337
338**需要权限**:ohos.permission.GET_NETWORK_INFO
339
340**系统能力**:SystemCapability.Telephony.CellularData
341
342**返回值:**
343
344| 类型               | 说明                                                         |
345| ------------------ | ------------------------------------------------------------ |
346| Promise\<boolean\> | 以Promise形式返回检查蜂窝数据业务是否启用。<br />true:蜂窝数据业务已启用。<br />false:蜂窝数据业务已禁用。 |
347
348**错误码:**
349
350以下错误码的详细介绍请参见[ohos.telephony(电话子系统)错误码](../../reference/errorcodes/errorcode-telephony.md)。
351
352| 错误码ID |                 错误信息                     |
353| -------- | -------------------------------------------- |
354| 201      | Permission denied.                           |
355| 8300002  | Operation failed. Cannot connect to service. |
356| 8300003  | System internal error.                       |
357| 8300999  | Unknown error code.                          |
358
359**示例:**
360
361```ts
362import data from '@ohos.telephony.data';
363import { BusinessError } from '@ohos.base';
364
365data.isCellularDataEnabled().then((data: boolean) => {
366    console.log(`test success, promise: data->${JSON.stringify(data)}`);
367}).catch((err: BusinessError) => {
368    console.error(`test fail, promise: err->${JSON.stringify(err)}`);
369});
370```
371
372## data.isCellularDataRoamingEnabled
373
374isCellularDataRoamingEnabled(slotId: number, callback: AsyncCallback\<boolean\>): void
375
376检查蜂窝数据业务是否启用漫游,使用callback方式作为异步方法。
377
378**需要权限**:ohos.permission.GET_NETWORK_INFO
379
380**系统能力**:SystemCapability.Telephony.CellularData
381
382**参数:**
383
384| 参数名   | 类型                     | 必填 | 说明                                                         |
385| -------- | ------------------------ | ---- | ------------------------------------------------------------ |
386| slotId   | number                   | 是   | 卡槽ID。<br />0:卡槽1。<br />1:卡槽2。                     |
387| callback | AsyncCallback\<boolean\> | 是   | 回调函数。<br />true:蜂窝数据业务已启用漫游。<br />false:蜂窝数据业务已禁用漫游。 |
388
389**错误码:**
390
391以下错误码的详细介绍请参见[ohos.telephony(电话子系统)错误码](../../reference/errorcodes/errorcode-telephony.md)。
392
393| 错误码ID |                  错误信息                    |
394| -------- | -------------------------------------------- |
395| 201      | Permission denied.                           |
396| 401      | Parameter error.                             |
397| 8300001  | Invalid parameter value.                     |
398| 8300002  | Operation failed. Cannot connect to service. |
399| 8300003  | System internal error.                       |
400| 8300999  | Unknown error code.                          |
401
402**示例:**
403
404```ts
405import data from '@ohos.telephony.data';
406import { BusinessError } from '@ohos.base';
407
408data.isCellularDataRoamingEnabled(0, (err: BusinessError, data: boolean) => {
409    console.log(`callback: err->${JSON.stringify(err)}, data->${JSON.stringify(data)}`);
410});
411```
412
413## data.isCellularDataRoamingEnabled
414
415isCellularDataRoamingEnabled(slotId: number): Promise\<boolean\>
416
417检查蜂窝数据业务是否启用漫游,使用Promise方式作为异步方法。
418
419**需要权限**:ohos.permission.GET_NETWORK_INFO
420
421**系统能力**:SystemCapability.Telephony.CellularData
422
423**参数:**
424
425| 参数名 | 类型   | 必填 | 说明                                     |
426| ------ | ------ | ---- | ---------------------------------------- |
427| slotId | number | 是   | 卡槽ID。<br />0:卡槽1。<br />1:卡槽2。 |
428
429**返回值:**
430
431| 类型               | 说明                                                         |
432| ------------------ | ------------------------------------------------------------ |
433| Promise\<boolean\> | 以Promise形式返回检查蜂窝数据业务是否启用漫游。<br />true:蜂窝数据业务已启用漫游。<br />false:蜂窝数据业务已禁用漫游。 |
434
435**错误码:**
436
437以下错误码的详细介绍请参见[ohos.telephony(电话子系统)错误码](../../reference/errorcodes/errorcode-telephony.md)。
438
439| 错误码ID |                  错误信息                    |
440| -------- | -------------------------------------------- |
441| 201      | Permission denied.                           |
442| 401      | Parameter error.                             |
443| 8300001  | Invalid parameter value.                     |
444| 8300002  | Operation failed. Cannot connect to service. |
445| 8300003  | System internal error.                       |
446| 8300999  | Unknown error code.                          |
447
448**示例:**
449
450```ts
451import data from '@ohos.telephony.data';
452import { BusinessError } from '@ohos.base';
453
454data.isCellularDataRoamingEnabled(0).then((data: boolean) => {
455    console.log(`test success, promise: data->${JSON.stringify(data)}`);
456}).catch((err: BusinessError) => {
457    console.error(`test fail, promise: err->${JSON.stringify(err)}`);
458});
459```
460
461## data.enableCellularData
462
463enableCellularData(callback: AsyncCallback\<void\>): void
464
465启用蜂窝数据服务,使用callback方式作为异步方法。
466
467**系统接口:** 此接口为系统接口。
468
469**需要权限**:ohos.permission.SET_TELEPHONY_STATE
470
471**系统能力**:SystemCapability.Telephony.CellularData
472
473**参数:**
474
475| 参数名   | 类型                  | 必填 | 说明       |
476| -------- | --------------------- | ---- | ---------- |
477| callback | AsyncCallback\<void\> | 是   | 回调函数。 |
478
479**错误码:**
480
481以下错误码的详细介绍请参见[ohos.telephony(电话子系统)错误码](../../reference/errorcodes/errorcode-telephony.md)。
482
483| 错误码ID |                  错误信息                    |
484| -------- | -------------------------------------------- |
485| 201      | Permission denied.                           |
486| 202      | Non-system applications use system APIs.     |
487| 401      | Parameter error.                             |
488| 8300001  | Invalid parameter value.                     |
489| 8300002  | Operation failed. Cannot connect to service. |
490| 8300003  | System internal error.                       |
491| 8300999  | Unknown error code.                          |
492
493**示例:**
494
495```ts
496import data from '@ohos.telephony.data';
497import { BusinessError } from '@ohos.base';
498
499data.enableCellularData((err: BusinessError) => {
500    console.log(`callback: err->${JSON.stringify(err)}`);
501});
502```
503
504## data.enableCellularData
505
506enableCellularData(): Promise\<void\>
507
508启用蜂窝数据服务,使用Promise方式作为异步方法。
509
510**系统接口:** 此接口为系统接口。
511
512**需要权限**:ohos.permission.SET_TELEPHONY_STATE
513
514**系统能力**:SystemCapability.Telephony.CellularData
515
516**返回值:**
517
518| 类型            | 说明                    |
519| --------------- | ----------------------- |
520| Promise\<void\> | 以Promise形式返回结果。 |
521
522**错误码:**
523
524以下错误码的详细介绍请参见[ohos.telephony(电话子系统)错误码](../../reference/errorcodes/errorcode-telephony.md)。
525
526| 错误码ID |                  错误信息                    |
527| -------- | -------------------------------------------- |
528| 201      | Permission denied.                           |
529| 202      | Non-system applications use system APIs.     |
530| 8300002  | Operation failed. Cannot connect to service. |
531| 8300003  | System internal error.                       |
532| 8300999  | Unknown error code.                          |
533
534**示例:**
535
536```ts
537import data from '@ohos.telephony.data';
538import { BusinessError } from '@ohos.base';
539
540data.enableCellularData().then(() => {
541    console.log(`enableCellularData success.`);
542}).catch((err: BusinessError) => {
543    console.error(`enableCellularData fail, promise: err->${JSON.stringify(err)}`);
544});
545```
546
547## data.disableCellularData
548
549disableCellularData(callback: AsyncCallback\<void\>): void
550
551禁用蜂窝数据服务,使用callback方式作为异步方法。
552
553**系统接口:** 此接口为系统接口。
554
555**需要权限**:ohos.permission.SET_TELEPHONY_STATE
556
557**系统能力**:SystemCapability.Telephony.CellularData
558
559**参数:**
560
561| 参数名   | 类型                  | 必填 | 说明       |
562| -------- | --------------------- | ---- | ---------- |
563| callback | AsyncCallback\<void\> | 是   | 回调函数。 |
564
565**错误码:**
566
567以下错误码的详细介绍请参见[ohos.telephony(电话子系统)错误码](../../reference/errorcodes/errorcode-telephony.md)。
568
569| 错误码ID |                  错误信息                    |
570| -------- | -------------------------------------------- |
571| 201      | Permission denied.                           |
572| 202      | Non-system applications use system APIs.     |
573| 401      | Parameter error.                             |
574| 8300001  | Invalid parameter value.                     |
575| 8300002  | Operation failed. Cannot connect to service. |
576| 8300003  | System internal error.                       |
577| 8300999  | Unknown error code.                          |
578
579**示例:**
580
581```ts
582import data from '@ohos.telephony.data';
583import { BusinessError } from '@ohos.base';
584
585data.disableCellularData((err: BusinessError) => {
586    console.log(`callback: err->${JSON.stringify(err)}`);
587});
588```
589
590## data.disableCellularData
591
592disableCellularData(): Promise\<void\>
593
594禁用蜂窝数据服务,使用Promise方式作为异步方法。
595
596**系统接口:** 此接口为系统接口。
597
598**需要权限**:ohos.permission.SET_TELEPHONY_STATE
599
600**系统能力**:SystemCapability.Telephony.CellularData
601
602**返回值:**
603
604| 类型            | 说明                        |
605| --------------- | --------------------------- |
606| Promise\<void\> | 以Promise形式返回禁用结果。 |
607
608**错误码:**
609
610以下错误码的详细介绍请参见[ohos.telephony(电话子系统)错误码](../../reference/errorcodes/errorcode-telephony.md)。
611
612| 错误码ID |                  错误信息                    |
613| -------- | -------------------------------------------- |
614| 201      | Permission denied.                           |
615| 202      | Non-system applications use system APIs.     |
616| 8300002  | Operation failed. Cannot connect to service. |
617| 8300003  | System internal error.                       |
618| 8300999  | Unknown error code.                          |
619
620**示例:**
621
622```ts
623import data from '@ohos.telephony.data';
624import { BusinessError } from '@ohos.base';
625
626data.disableCellularData().then(() => {
627    console.log(`disableCellularData success.`);
628}).catch((err: BusinessError) => {
629    console.error(`disableCellularData fail, promise: err->${JSON.stringify(err)}`);
630});
631```
632
633## data.enableCellularDataRoaming
634
635enableCellularDataRoaming(slotId: number, callback: AsyncCallback\<void\>): void
636
637启用蜂窝数据漫游,使用callback方式作为异步方法。
638
639**系统接口:** 此接口为系统接口。
640
641**需要权限**:ohos.permission.SET_TELEPHONY_STATE
642
643**系统能力**:SystemCapability.Telephony.CellularData
644
645**参数:**
646
647| 参数名   | 类型                  | 必填 | 说明                                     |
648| -------- | --------------------- | ---- | ---------------------------------------- |
649| slotId   | number                | 是   | 卡槽ID。<br />0:卡槽1。<br />1:卡槽2。 |
650| callback | AsyncCallback\<void\> | 是   | 回调函数。                               |
651
652**错误码:**
653
654以下错误码的详细介绍请参见[ohos.telephony(电话子系统)错误码](../../reference/errorcodes/errorcode-telephony.md)。
655
656| 错误码ID |                  错误信息                    |
657| -------- | -------------------------------------------- |
658| 201      | Permission denied.                           |
659| 202      | Non-system applications use system APIs.     |
660| 401      | Parameter error.                             |
661| 8300001  | Invalid parameter value.                     |
662| 8300002  | Operation failed. Cannot connect to service. |
663| 8300003  | System internal error.                       |
664| 8300999  | Unknown error code.                          |
665
666**示例:**
667
668```ts
669import data from '@ohos.telephony.data';
670import { BusinessError } from '@ohos.base';
671
672data.enableCellularDataRoaming(0, (err: BusinessError) => {
673    console.log(`callback: err->${JSON.stringify(err)}`);
674});
675```
676
677## data.enableCellularDataRoaming
678
679enableCellularDataRoaming(slotId: number): Promise\<void\>
680
681启用蜂窝数据漫游,使用Promise方式作为异步方法。
682
683**系统接口:** 此接口为系统接口。
684
685**需要权限**:ohos.permission.SET_TELEPHONY_STATE
686
687**系统能力**:SystemCapability.Telephony.CellularData
688
689**参数:**
690
691| 参数名 | 类型   | 必填 | 说明                                     |
692| ------ | ------ | ---- | ---------------------------------------- |
693| slotId | number | 是   | 卡槽ID。<br />0:卡槽1。<br />1:卡槽2。 |
694
695**返回值:**
696
697| 类型            | 说明                      |
698| --------------- | ------------------------- |
699| Promise\<void\> | 以Promise形式返回启用结果 |
700
701**错误码:**
702
703以下错误码的详细介绍请参见[ohos.telephony(电话子系统)错误码](../../reference/errorcodes/errorcode-telephony.md)。
704
705| 错误码ID |                  错误信息                    |
706| -------- | -------------------------------------------- |
707| 201      | Permission denied.                           |
708| 202      | Non-system applications use system APIs.     |
709| 401      | Parameter error.                             |
710| 8300001  | Invalid parameter value.                     |
711| 8300002  | Operation failed. Cannot connect to service. |
712| 8300003  | System internal error.                       |
713| 8300999  | Unknown error code.                          |
714
715**示例:**
716
717```ts
718import data from '@ohos.telephony.data';
719import { BusinessError } from '@ohos.base';
720
721data.enableCellularDataRoaming(0).then(() => {
722    console.log(`enableCellularDataRoaming success.`);
723}).catch((err: BusinessError) => {
724    console.error(`enableCellularDataRoaming fail, promise: err->${JSON.stringify(err)}`);
725});
726```
727
728## data.disableCellularDataRoaming
729
730disableCellularDataRoaming(slotId: number, callback: AsyncCallback\<void\>): void
731
732禁用蜂窝数据漫游,使用callback方式作为异步方法。
733
734**系统接口:** 此接口为系统接口。
735
736**需要权限**:ohos.permission.SET_TELEPHONY_STATE
737
738**系统能力**:SystemCapability.Telephony.CellularData
739
740**参数:**
741
742| 参数名   | 类型                  | 必填 | 说明                                     |
743| -------- | --------------------- | ---- | ---------------------------------------- |
744| slotId   | number                | 是   | 卡槽ID。<br />0:卡槽1。<br />1:卡槽2。 |
745| callback | AsyncCallback\<void\> | 是   | 回调函数。                               |
746
747**错误码:**
748
749以下错误码的详细介绍请参见[ohos.telephony(电话子系统)错误码](../../reference/errorcodes/errorcode-telephony.md)。
750
751| 错误码ID |                  错误信息                    |
752| -------- | -------------------------------------------- |
753| 201      | Permission denied.                           |
754| 202      | Non-system applications use system APIs.     |
755| 401      | Parameter error.                             |
756| 8300001  | Invalid parameter value.                     |
757| 8300002  | Operation failed. Cannot connect to service. |
758| 8300003  | System internal error.                       |
759| 8300999  | Unknown error code.                          |
760
761**示例:**
762
763```ts
764import data from '@ohos.telephony.data';
765import { BusinessError } from '@ohos.base';
766
767data.disableCellularDataRoaming(0, (err: BusinessError) => {
768    console.log(`callback: err->${JSON.stringify(err)}`);
769});
770```
771
772## data.disableCellularDataRoaming
773
774disableCellularDataRoaming(slotId: number): Promise\<void\>
775
776禁用蜂窝数据漫游,使用Promise方式作为异步方法。
777
778**系统接口:** 此接口为系统接口。
779
780**需要权限**:ohos.permission.SET_TELEPHONY_STATE
781
782**系统能力**:SystemCapability.Telephony.CellularData
783
784**参数:**
785
786| 参数名 | 类型   | 必填 | 说明                                     |
787| ------ | ------ | ---- | ---------------------------------------- |
788| slotId | number | 是   | 卡槽ID。<br />0:卡槽1。<br />1:卡槽2。 |
789
790**返回值:**
791
792| 类型            | 说明                      |
793| --------------- | ------------------------- |
794| Promise\<void\> | 以Promise形式返回禁用结果 |
795
796**错误码:**
797
798以下错误码的详细介绍请参见[ohos.telephony(电话子系统)错误码](../../reference/errorcodes/errorcode-telephony.md)。
799
800| 错误码ID |                  错误信息                    |
801| -------- | -------------------------------------------- |
802| 201      | Permission denied.                           |
803| 202      | Non-system applications use system APIs.     |
804| 401      | Parameter error.                             |
805| 8300001  | Invalid parameter value.                     |
806| 8300002  | Operation failed. Cannot connect to service. |
807| 8300003  | System internal error.                       |
808| 8300999  | Unknown error code.                          |
809
810**示例:**
811
812```ts
813import data from '@ohos.telephony.data';
814import { BusinessError } from '@ohos.base';
815
816data.disableCellularDataRoaming(0).then(() => {
817    console.log(`disableCellularDataRoaming success.`);
818}).catch((err: BusinessError) => {
819    console.error(`disableCellularDataRoaming fail, promise: err->${JSON.stringify(err)}`);
820});
821```
822
823## data.getDefaultCellularDataSimId<sup>10+</sup>
824
825getDefaultCellularDataSimId(): number
826
827获取默认移动数据的SIM卡ID。
828
829**系统能力**:SystemCapability.Telephony.CellularData
830
831**返回值:**
832
833| 类型              | 说明                                                         |
834| ------ | -------------------------------------------------- |
835| number | 获取默认移动数据的SIM卡ID。<br/>与SIM卡绑定,从1开始递增。 |
836
837**示例:**
838
839```ts
840import data from '@ohos.telephony.data';
841
842console.log("Result: "+ data.getDefaultCellularDataSimId());
843```
844
845## DataFlowType
846
847描述蜂窝数据流类型。
848
849**系统能力**:SystemCapability.Telephony.CellularData
850
851| 名称                   | 值   | 说明                                       |
852| ---------------------- | ---- | ------------------------------------------ |
853| DATA_FLOW_TYPE_NONE    | 0    | 表示没有上行或下行数据。                   |
854| DATA_FLOW_TYPE_DOWN    | 1    | 表示只有下行数据。                         |
855| DATA_FLOW_TYPE_UP      | 2    | 表示只有上行数据。                         |
856| DATA_FLOW_TYPE_UP_DOWN | 3    | 表示有上下行数据。                         |
857| DATA_FLOW_TYPE_DORMANT | 4    | 表示没有上下行数据,底层链路处于休眠状态。 |
858
859## DataConnectState
860
861描述蜂窝数据链路连接状态。
862
863**系统能力**:SystemCapability.Telephony.CellularData
864
865| 名称                    | 值   | 说明                       |
866| ----------------------- | ---- | -------------------------- |
867| DATA_STATE_UNKNOWN      | -1   | 表示蜂窝数据链路未知。     |
868| DATA_STATE_DISCONNECTED | 0    | 表示蜂窝数据链路断开。     |
869| DATA_STATE_CONNECTING   | 1    | 表示正在连接蜂窝数据链路。 |
870| DATA_STATE_CONNECTED    | 2    | 表示蜂窝数据链路已连接。   |
871| DATA_STATE_SUSPENDED    | 3    | 表示蜂窝数据链路被挂起。   |
872