1# @ohos.telephony.sim (SIM卡管理) 2 3SIM卡管理模块提供了SIM卡管理的基础能力,包括获取指定卡槽SIM卡的名称、号码、ISO国家码、归属PLMN号、服务提供商名称、SIM卡状态、卡类型、是否插卡、是否激活、锁状态,设置指定卡槽SIM卡显示的名称、号码、锁状态,激活、禁用指定卡槽SIM卡,更改Pin密码,以及解锁指定卡槽SIM卡密码、SIM卡密码的解锁密码等。 4 5>**说明:** 6> 7>本模块首批接口从API version 6开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。 8> 9 10## 导入模块 11 12```js 13import sim from '@ohos.telephony.sim'; 14``` 15 16## sim.isSimActive<sup>7+</sup> 17 18isSimActive\(slotId: number, callback: AsyncCallback<boolean\>\): void 19 20获取指定卡槽SIM卡是否激活。使用callback异步回调。 21 22**系统能力**:SystemCapability.Telephony.CoreService 23 24**参数:** 25 26| 参数名 | 类型 | 必填 | 说明 | 27| -------- | --------------------------- | ---- | -------------------------------------- | 28| slotId | number | 是 | 卡槽ID。<br/>- 0:卡槽1<br/>- 1:卡槽2 | 29| callback | AsyncCallback<boolean> | 是 | 回调函数。 | 30 31**示例:** 32 33```js 34sim.isSimActive(0, (err, data) => { 35 console.log(`callback: err->${JSON.stringify(err)}, data->${JSON.stringify(data)}`); 36}); 37``` 38 39 40## sim.isSimActive<sup>7+</sup> 41 42isSimActive\(slotId: number\): Promise<boolean\> 43 44获取指定卡槽SIM卡是否激活。使用Promise异步回调。 45 46**系统能力**:SystemCapability.Telephony.CoreService 47 48**参数:** 49 50| 参数名 | 类型 | 必填 | 说明 | 51| ------ | ------ | ---- | -------------------------------------- | 52| slotId | number | 是 | 卡槽ID。<br/>- 0:卡槽1<br/>- 1:卡槽2 | 53 54**返回值:** 55 56| 类型 | 说明 | 57| --------------------- | ---------------------------------- | 58| Promise<boolean> | 以Promise形式返回指定卡槽是否激活,如果激活返回true。 | 59 60**示例:** 61 62```js 63let promise = sim.isSimActive(0); 64promise.then(data => { 65 console.log(`isSimActive success, promise: data->${JSON.stringify(data)}`); 66}).catch(err => { 67 console.log(`isSimActive failed, promise: err->${JSON.stringify(err)}`); 68}); 69``` 70 71 72## sim.getDefaultVoiceSlotId<sup>7+</sup> 73 74getDefaultVoiceSlotId\(callback: AsyncCallback<number\>\): void 75 76获取默认语音业务的卡槽ID。使用callback异步回调。 77 78**系统能力**:SystemCapability.Telephony.CoreService 79 80**参数:** 81 82| 参数名 | 类型 | 必填 | 说明 | 83| -------- | --------------------------- | ---- | ---------- | 84| callback | AsyncCallback<number> | 是 | 回调函数。 | 85 86**示例:** 87 88```js 89sim.getDefaultVoiceSlotId((err, data) => { 90 console.log(`callback: err->${JSON.stringify(err)}, data->${JSON.stringify(data)}`); 91}); 92``` 93 94 95## sim.getDefaultVoiceSlotId<sup>7+</sup> 96 97getDefaultVoiceSlotId\(\): Promise<number\> 98 99获取默认语音业务的卡槽ID。使用Promise异步回调。 100 101**系统能力**:SystemCapability.Telephony.CoreService 102 103**返回值:** 104 105| 类型 | 说明 | 106| ----------------- | --------------------------------------- | 107| Promise\<number\> | 以Promise形式返回默认语音业务的卡槽ID。 | 108 109**示例:** 110 111```js 112let promise = sim.getDefaultVoiceSlotId(); 113promise.then(data => { 114 console.log(`getDefaultVoiceSlotId success, promise: data->${JSON.stringify(data)}`); 115}).catch(err => { 116 console.log(`getDefaultVoiceSlotId failed, promise: err->${JSON.stringify(err)}`); 117}); 118``` 119 120## sim.hasOperatorPrivileges<sup>7+</sup> 121 122hasOperatorPrivileges(slotId: number, callback: AsyncCallback\<boolean\>): void 123 124检查应用(调用者)是否已被授予运营商权限。使用callback异步回调。 125 126**系统能力**:SystemCapability.Telephony.CoreService 127 128**参数:** 129 130| 参数名 | 类型 | 必填 | 说明 | 131| -------- | ------------------------ | ---- | ---------------------------------------- | 132| slotId | number | 是 | 卡槽ID。<br />- 0:卡槽1<br />- 1:卡槽2 | 133| callback | AsyncCallback\<boolean\> | 是 | 回调函数。 | 134 135**错误码:** 136 137以下错误码的详细介绍请参见[ohos.telephony(电话子系统)错误码](../../reference/errorcodes/errorcode-telephony.md)错误码。 138 139| 错误码ID | 错误信息 | 140| -------- | -------------------------------------------- | 141| 401 | Parameter error. | 142| 8300001 | Invalid parameter value. | 143| 8300002 | Operation failed. Cannot connect to service. | 144| 8300003 | System internal error. | 145| 8300999 | Unknown error code. | 146 147**示例:** 148 149```js 150sim.hasOperatorPrivileges(0, (err, data) => { 151 console.log(`callback: err->${JSON.stringify(err)}, data->${JSON.stringify(data)}`); 152}); 153``` 154 155## sim.hasOperatorPrivileges<sup>7+</sup> 156 157hasOperatorPrivileges(slotId: number): Promise<boolean\> 158 159检查应用(调用者)是否已被授予运营商权限。使用Promise异步回调。 160 161**系统能力**:SystemCapability.Telephony.CoreService 162 163**参数:** 164 165| 参数名 | 类型 | 必填 | 说明 | 166| ------ | ------ | ---- | ---------------------------------------- | 167| slotId | number | 是 | 卡槽ID。<br />- 0:卡槽1<br />- 1:卡槽2 | 168 169**返回值:** 170 171| 类型 | 说明 | 172| :----------------- | :---------------------------------------------------------- | 173| Promise\<boolean\> | 以Promise形式返回检查应用(调用者)是否已被授予运营商权限。 | 174 175**错误码:** 176 177以下错误码的详细介绍请参见[ohos.telephony(电话子系统)错误码](../../reference/errorcodes/errorcode-telephony.md)错误码。 178 179| 错误码ID | 错误信息 | 180| -------- | -------------------------------------------- | 181| 401 | Parameter error. | 182| 8300001 | Invalid parameter value. | 183| 8300002 | Operation failed. Cannot connect to service. | 184| 8300003 | System internal error. | 185| 8300999 | Unknown error code. | 186 187**示例:** 188 189```js 190let promise = sim.hasOperatorPrivileges(0); 191promise.then(data => { 192 console.log(`hasOperatorPrivileges success, promise: data->${JSON.stringify(data)}`); 193}).catch(err => { 194 console.log(`hasOperatorPrivileges failed, promise: err->${JSON.stringify(err)}`); 195}); 196``` 197 198## sim.getISOCountryCodeForSim 199 200getISOCountryCodeForSim\(slotId: number, callback: AsyncCallback<string\>\): void 201 202获取指定卡槽SIM卡的ISO国家码。使用callback异步回调。 203 204**系统能力**:SystemCapability.Telephony.CoreService 205 206**参数:** 207 208| 参数名 | 类型 | 必填 | 说明 | 209| -------- | ----------------------- | ---- | ---------------------------------------- | 210| slotId | number | 是 | 卡槽ID。<br/>- 0:卡槽1<br/>- 1:卡槽2 | 211| callback | AsyncCallback\<string\> | 是 | 回调函数。返回国家码,例如:CN(中国)。 | 212 213**错误码:** 214 215以下错误码的详细介绍请参见[ohos.telephony(电话子系统)错误码](../../reference/errorcodes/errorcode-telephony.md)错误码。 216 217| 错误码ID | 错误信息 | 218| -------- | -------------------------------------------- | 219| 401 | Parameter error. | 220| 8300001 | Invalid parameter value. | 221| 8300002 | Operation failed. Cannot connect to service. | 222| 8300003 | System internal error. | 223| 8300004 | Do not have sim card. | 224| 8300999 | Unknown error code. | 225 226**示例:** 227 228```js 229sim.getISOCountryCodeForSim(0, (err, data) => { 230 console.log(`callback: err->${JSON.stringify(err)}, data->${JSON.stringify(data)}`); 231}); 232``` 233 234 235## sim.getISOCountryCodeForSim 236 237getISOCountryCodeForSim\(slotId: number\): Promise<string\> 238 239获取指定卡槽SIM卡的ISO国家码。使用Promise异步回调。 240 241**系统能力**:SystemCapability.Telephony.CoreService 242 243**参数:** 244 245| 参数名 | 类型 | 必填 | 说明 | 246| ------ | ------ | ---- | -------------------------------------- | 247| slotId | number | 是 | 卡槽ID。<br/>- 0:卡槽1<br/>- 1:卡槽2 | 248 249**返回值:** 250 251| 类型 | 说明 | 252| ----------------- | ------------------------------------------------------------ | 253| Promise\<string\> | 以Promise形式返回获取指定卡槽SIM卡的ISO国家码,例如:CN(中国)。 | 254 255**错误码:** 256 257以下错误码的详细介绍请参见[ohos.telephony(电话子系统)错误码](../../reference/errorcodes/errorcode-telephony.md)错误码。 258 259| 错误码ID | 错误信息 | 260| -------- | -------------------------------------------- | 261| 401 | Parameter error. | 262| 8300001 | Invalid parameter value. | 263| 8300002 | Operation failed. Cannot connect to service. | 264| 8300003 | System internal error. | 265| 8300004 | Do not have sim card. | 266| 8300999 | Unknown error code. | 267 268**示例:** 269 270```js 271let promise = sim.getISOCountryCodeForSim(0); 272promise.then(data => { 273 console.log(`getISOCountryCodeForSim success, promise: data->${JSON.stringify(data)}`); 274}).catch(err => { 275 console.log(`getISOCountryCodeForSim failed, promise: err->${JSON.stringify(err)}`); 276}); 277``` 278 279 280## sim.getSimOperatorNumeric 281 282getSimOperatorNumeric\(slotId: number, callback: AsyncCallback<string\>\): void 283 284获取指定卡槽SIM卡的归属PLMN(Public Land Mobile Network)号。使用callback异步回调。 285 286**系统能力**:SystemCapability.Telephony.CoreService 287 288**参数:** 289 290| 参数名 | 类型 | 必填 | 说明 | 291| -------- | ----------------------- | ---- | -------------------------------------- | 292| slotId | number | 是 | 卡槽ID。<br/>- 0:卡槽1<br/>- 1:卡槽2 | 293| callback | AsyncCallback\<string\> | 是 | 回调函数。 | 294 295**错误码:** 296 297以下错误码的详细介绍请参见[ohos.telephony(电话子系统)错误码](../../reference/errorcodes/errorcode-telephony.md)错误码。 298 299| 错误码ID | 错误信息 | 300| -------- | -------------------------------------------- | 301| 401 | Parameter error. | 302| 8300001 | Invalid parameter value. | 303| 8300002 | Operation failed. Cannot connect to service. | 304| 8300003 | System internal error. | 305| 8300004 | Do not have sim card. | 306| 8300999 | Unknown error code. | 307 308**示例:** 309 310```js 311sim.getSimOperatorNumeric(0, (err, data) => { 312 console.log(`callback: err->${JSON.stringify(err)}, data->${JSON.stringify(data)}`); 313}); 314``` 315 316 317## sim.getSimOperatorNumeric 318 319getSimOperatorNumeric\(slotId: number\): Promise<string\> 320 321获取指定卡槽SIM卡的归属PLMN(Public Land Mobile Network)号。使用Promise异步回调。 322 323**系统能力**:SystemCapability.Telephony.CoreService 324 325**参数:** 326 327| 参数名 | 类型 | 必填 | 说明 | 328| ------ | ------ | ---- | -------------------------------------- | 329| slotId | number | 是 | 卡槽ID。<br/>- 0:卡槽1<br/>- 1:卡槽2 | 330 331**返回值:** 332 333| 类型 | 说明 | 334| ----------------- | ------------------------------------------------ | 335| Promise\<string\> | 以Promise形式返回获取指定卡槽SIM卡的归属PLMN号。 | 336 337**错误码:** 338 339以下错误码的详细介绍请参见[ohos.telephony(电话子系统)错误码](../../reference/errorcodes/errorcode-telephony.md)错误码。 340 341| 错误码ID | 错误信息 | 342| -------- | -------------------------------------------- | 343| 401 | Parameter error. | 344| 8300001 | Invalid parameter value. | 345| 8300002 | Operation failed. Cannot connect to service. | 346| 8300003 | System internal error. | 347| 8300004 | Do not have sim card. | 348| 8300999 | Unknown error code. | 349 350**示例:** 351 352```js 353let promise = sim.getSimOperatorNumeric(0); 354promise.then(data => { 355 console.log(`getSimOperatorNumeric success, promise: data->${JSON.stringify(data)}`); 356}).catch(err => { 357 console.log(`getSimOperatorNumeric failed, promise: err->${JSON.stringify(err)}`); 358}); 359``` 360 361 362## sim.getSimSpn 363 364getSimSpn\(slotId: number, callback: AsyncCallback<string\>\): void 365 366获取指定卡槽SIM卡的服务提供商名称(Service Provider Name,SPN)。使用callback异步回调。 367 368**系统能力**:SystemCapability.Telephony.CoreService 369 370**参数:** 371 372| 参数名 | 类型 | 必填 | 说明 | 373| -------- | ----------------------- | ---- | -------------------------------------- | 374| slotId | number | 是 | 卡槽ID。<br/>- 0:卡槽1<br/>- 1:卡槽2 | 375| callback | AsyncCallback\<string\> | 是 | 回调函数。 | 376 377**错误码:** 378 379以下错误码的详细介绍请参见[ohos.telephony(电话子系统)错误码](../../reference/errorcodes/errorcode-telephony.md)错误码。 380 381| 错误码ID | 错误信息 | 382| -------- | -------------------------------------------- | 383| 401 | Parameter error. | 384| 8300001 | Invalid parameter value. | 385| 8300002 | Operation failed. Cannot connect to service. | 386| 8300003 | System internal error. | 387| 8300004 | Do not have sim card. | 388| 8300999 | Unknown error code. | 389 390**示例:** 391 392```js 393sim.getSimSpn(0, (err, data) => { 394 console.log(`callback: err->${JSON.stringify(err)}, data->${JSON.stringify(data)}`); 395}); 396``` 397 398 399## sim.getSimSpn 400 401getSimSpn\(slotId: number\): Promise<string\> 402 403获取指定卡槽SIM卡的服务提供商名称(Service Provider Name,SPN)。使用Promise异步回调。 404 405**系统能力**:SystemCapability.Telephony.CoreService 406 407**参数:** 408 409| 参数名 | 类型 | 必填 | 说明 | 410| ------ | ------ | ---- | -------------------------------------- | 411| slotId | number | 是 | 卡槽ID。<br/>- 0:卡槽1<br/>- 1:卡槽2 | 412 413**返回值:** 414 415| 类型 | 说明 | 416| ----------------- | ----------------------------------------- | 417| Promise\<string\> | 以Promise形式返回获取指定卡槽SIM卡的SPN。 | 418 419**错误码:** 420 421以下错误码的详细介绍请参见[ohos.telephony(电话子系统)错误码](../../reference/errorcodes/errorcode-telephony.md)错误码。 422 423| 错误码ID | 错误信息 | 424| -------- | -------------------------------------------- | 425| 401 | Parameter error. | 426| 8300001 | Invalid parameter value. | 427| 8300002 | Operation failed. Cannot connect to service. | 428| 8300003 | System internal error. | 429| 8300004 | Do not have sim card. | 430| 8300999 | Unknown error code. | 431 432**示例:** 433 434```js 435let promise = sim.getSimSpn(0); 436promise.then(data => { 437 console.log(`getSimSpn success, promise: data->${JSON.stringify(data)}`); 438}).catch(err => { 439 console.log(`getSimSpn failed, promise: err->${JSON.stringify(err)}`); 440}); 441``` 442 443 444## sim.getSimState 445 446getSimState\(slotId: number, callback: AsyncCallback<SimState\>\): void 447 448获取指定卡槽的SIM卡状态。使用callback异步回调。 449 450**系统能力**:SystemCapability.Telephony.CoreService 451 452**参数:** 453 454| 参数名 | 类型 | 必填 | 说明 | 455| -------- | -------------------------------------- | ---- | -------------------------------------- | 456| slotId | number | 是 | 卡槽ID。<br/>- 0:卡槽1<br/>- 1:卡槽2 | 457| callback | AsyncCallback\<[SimState](#simstate)\> | 是 | 回调函数。参考[SimState](#simstate)。 | 458 459**错误码:** 460 461以下错误码的详细介绍请参见[ohos.telephony(电话子系统)错误码](../../reference/errorcodes/errorcode-telephony.md)错误码。 462 463| 错误码ID | 错误信息 | 464| -------- | -------------------------------------------- | 465| 401 | Parameter error. | 466| 8300001 | Invalid parameter value. | 467| 8300002 | Operation failed. Cannot connect to service. | 468| 8300003 | System internal error. | 469| 8300999 | Unknown error code. | 470 471**示例:** 472 473```js 474sim.getSimState(0, (err, data) => { 475 console.log(`callback: err->${JSON.stringify(err)}, data->${JSON.stringify(data)}`); 476}); 477``` 478 479 480## sim.getSimState 481 482getSimState\(slotId: number\): Promise<SimState\> 483 484获取指定卡槽的SIM卡状态。使用Promise异步回调。 485 486**系统能力**:SystemCapability.Telephony.CoreService 487 488**参数:** 489 490| 参数名 | 类型 | 必填 | 说明 | 491| ------ | ------ | ---- | -------------------------------------- | 492| slotId | number | 是 | 卡槽ID。<br/>- 0:卡槽1<br/>- 1:卡槽2 | 493 494**返回值:** 495 496| 类型 | 说明 | 497| -------------------------------- | ------------------------------------------ | 498| Promise\<[SimState](#simstate)\> | 以Promise形式返回获取指定卡槽的SIM卡状态。 | 499 500**错误码:** 501 502以下错误码的详细介绍请参见[ohos.telephony(电话子系统)错误码](../../reference/errorcodes/errorcode-telephony.md)错误码。 503 504| 错误码ID | 错误信息 | 505| -------- | -------------------------------------------- | 506| 401 | Parameter error. | 507| 8300001 | Invalid parameter value. | 508| 8300002 | Operation failed. Cannot connect to service. | 509| 8300003 | System internal error. | 510| 8300999 | Unknown error code. | 511 512**示例:** 513 514```js 515let promise = sim.getSimState(0); 516promise.then(data => { 517 console.log(`getSimState success, promise: data->${JSON.stringify(data)}`); 518}).catch(err => { 519 console.log(`getSimState failed, promise: err->${JSON.stringify(err)}`); 520}); 521``` 522 523## sim.getCardType<sup>7+</sup> 524 525getCardType\(slotId: number, callback: AsyncCallback<CardType\>\): void 526 527获取指定卡槽SIM卡的卡类型。使用callback异步回调。 528 529**系统能力**:SystemCapability.Telephony.CoreService 530 531**参数:** 532 533| 参数名 | 类型 | 必填 | 说明 | 534| -------- | ----------------------- | ---- | -------------------------------------- | 535| slotId | number | 是 | 卡槽ID。<br/>- 0:卡槽1<br/>- 1:卡槽2 | 536| callback | AsyncCallback\<[CardType](#cardtype7)\> | 是 | 回调函数。 | 537 538**错误码:** 539 540以下错误码的详细介绍请参见[ohos.telephony(电话子系统)错误码](../../reference/errorcodes/errorcode-telephony.md)错误码。 541 542| 错误码ID | 错误信息 | 543| -------- | -------------------------------------------- | 544| 401 | Parameter error. | 545| 8300001 | Invalid parameter value. | 546| 8300002 | Operation failed. Cannot connect to service. | 547| 8300003 | System internal error. | 548| 8300004 | Do not have sim card. | 549| 8300999 | Unknown error code. | 550 551**示例:** 552 553```js 554sim.getCardType(0, (err, data) => { 555 console.log(`callback: err->${JSON.stringify(err)}, data->${JSON.stringify(data)}`); 556}); 557``` 558 559 560## sim.getCardType<sup>7+</sup> 561 562getCardType\(slotId: number\): Promise<CardType\> 563 564获取指定卡槽SIM卡的卡类型。使用Promise异步回调。 565 566**系统能力**:SystemCapability.Telephony.CoreService 567 568**参数:** 569 570| 参数名 | 类型 | 必填 | 说明 | 571| ------ | ------ | ---- | -------------------------------------- | 572| slotId | number | 是 | 卡槽ID。<br/>- 0:卡槽1<br/>- 1:卡槽2 | 573 574**返回值:** 575 576| 类型 | 说明 | 577| ----------------- | ------------------------------------------------------------ | 578| Promise\<[CardType](#cardtype7)\> | 以Promise形式返回指定卡槽SIM卡的卡类型。 | 579 580**错误码:** 581 582以下错误码的详细介绍请参见[ohos.telephony(电话子系统)错误码](../../reference/errorcodes/errorcode-telephony.md)错误码。 583 584| 错误码ID | 错误信息 | 585| -------- | -------------------------------------------- | 586| 401 | Parameter error. | 587| 8300001 | Invalid parameter value. | 588| 8300002 | Operation failed. Cannot connect to service. | 589| 8300003 | System internal error. | 590| 8300999 | Unknown error code. | 591 592**示例:** 593 594```js 595let promise = sim.getCardType(0); 596promise.then(data => { 597 console.log(`getCardType success, promise: data->${JSON.stringify(data)}`); 598}).catch(err => { 599 console.log(`getCardType failed, promise: err->${JSON.stringify(err)}`); 600}); 601``` 602 603 604## sim.hasSimCard<sup>7+</sup> 605 606hasSimCard\(slotId: number, callback: AsyncCallback<boolean\>\): void 607 608获取指定卡槽SIM卡是否插卡。使用callback异步回调。 609 610**系统能力**:SystemCapability.Telephony.CoreService 611 612**参数:** 613 614| 参数名 | 类型 | 必填 | 说明 | 615| -------- | --------------------------- | ---- | -------------------------------------- | 616| slotId | number | 是 | 卡槽ID。<br/>- 0:卡槽1<br/>- 1:卡槽2 | 617| callback | AsyncCallback<boolean> | 是 | 回调函数。 | 618 619**错误码:** 620 621以下错误码的详细介绍请参见[ohos.telephony(电话子系统)错误码](../../reference/errorcodes/errorcode-telephony.md)错误码。 622 623| 错误码ID | 错误信息 | 624| -------- | -------------------------------------------- | 625| 401 | Parameter error. | 626| 8300001 | Invalid parameter value. | 627| 8300002 | Operation failed. Cannot connect to service. | 628| 8300003 | System internal error. | 629| 8300999 | Unknown error code. | 630 631**示例:** 632 633```js 634sim.hasSimCard(0, (err, data) => { 635 console.log(`callback: err->${JSON.stringify(err)}, data->${JSON.stringify(data)}`); 636}); 637``` 638 639 640## sim.hasSimCard<sup>7+</sup> 641 642hasSimCard\(slotId: number\): Promise<boolean\> 643 644获取指定卡槽SIM卡是否插卡。使用Promise异步回调。 645 646**系统能力**:SystemCapability.Telephony.CoreService 647 648**参数:** 649 650| 参数名 | 类型 | 必填 | 说明 | 651| ------ | ------ | ---- | -------------------------------------- | 652| slotId | number | 是 | 卡槽ID。<br/>- 0:卡槽1<br/>- 1:卡槽2 | 653 654**返回值:** 655 656| 类型 | 说明 | 657| --------------------- | ---------------------------------- | 658| Promise<boolean> | 以Promise形式返回指定卡槽是否插卡,如果插卡返回true。 | 659 660**错误码:** 661 662以下错误码的详细介绍请参见[ohos.telephony(电话子系统)错误码](../../reference/errorcodes/errorcode-telephony.md)错误码。 663 664| 错误码ID | 错误信息 | 665| -------- | -------------------------------------------- | 666| 401 | Parameter error. | 667| 8300001 | Invalid parameter value. | 668| 8300002 | Operation failed. Cannot connect to service. | 669| 8300003 | System internal error. | 670| 8300004 | Do not have sim card. | 671| 8300999 | Unknown error code. | 672 673**示例:** 674 675```js 676let promise = sim.hasSimCard(0); 677promise.then(data => { 678 console.log(`hasSimCard success, promise: data->${JSON.stringify(data)}`); 679}).catch(err => { 680 console.log(`hasSimCard failed, promise: err->${JSON.stringify(err)}`); 681}); 682``` 683 684## sim.getSimAccountInfo<sup>7+</sup> 685 686getSimAccountInfo(slotId: number, callback: AsyncCallback<IccAccountInfo\>): void 687 688获取SIM卡账户信息。使用callback异步回调。 689 690**系统接口:** 此接口为系统接口。 691 692**需要权限**:ohos.permission.GET_TELEPHONY_STATE 693 694**系统能力**:SystemCapability.Telephony.CoreService 695 696**参数:** 697 698| 参数名 | 类型 | 必填 | 说明 | 699| -------- | --------------------------------------------------- | ---- | -------------------------------------- | 700| slotId | number | 是 | 卡槽ID。<br/>- 0:卡槽1<br/>- 1:卡槽2 | 701| callback | AsyncCallback\<[IccAccountInfo](#iccaccountinfo7)\> | 是 | 回调函数。 | 702 703**错误码:** 704 705以下错误码的详细介绍请参见[ohos.telephony(电话子系统)错误码](../../reference/errorcodes/errorcode-telephony.md)错误码。 706 707| 错误码ID | 错误信息 | 708| -------- | -------------------------------------------- | 709| 201 | Permission denied. | 710| 401 | Parameter error. | 711| 8300001 | Invalid parameter value. | 712| 8300002 | Operation failed. Cannot connect to service. | 713| 8300003 | System internal error. | 714| 8300004 | Do not have sim card. | 715| 8300999 | Unknown error code. | 716| 8301002 | SIM card operation error. | 717 718**示例:** 719 720```js 721sim.getSimAccountInfo(0, (err, data) => { 722 console.log(`callback: err->${JSON.stringify(err)}, data->${JSON.stringify(data)}`); 723}); 724``` 725 726 727## sim.getSimAccountInfo<sup>7+</sup> 728 729getSimAccountInfo(slotId: number): Promise<IccAccountInfo\> 730 731获取SIM卡账户信息。使用Promise异步回调。 732 733**系统接口:** 此接口为系统接口。 734 735**需要权限**:ohos.permission.GET_TELEPHONY_STATE 736 737**系统能力**:SystemCapability.Telephony.CoreService 738 739**参数:** 740 741| 参数名 | 类型 | 必填 | 说明 | 742| ------ | ------ | ---- | -------------------------------------- | 743| slotId | number | 是 | 卡槽ID。<br/>- 0:卡槽1<br/>- 1:卡槽2 | 744 745**返回值:** 746 747| 类型 | 说明 | 748| -------------------------------------------- | ------------------------------------------ | 749| Promise<[IccAccountInfo](#iccaccountinfo7)\> | 以Promise形式返回指定卡槽SIM卡的账户信息。 | 750 751**错误码:** 752 753以下错误码的详细介绍请参见[ohos.telephony(电话子系统)错误码](../../reference/errorcodes/errorcode-telephony.md)错误码。 754 755| 错误码ID | 错误信息 | 756| -------- | -------------------------------------------- | 757| 201 | Permission denied. | 758| 401 | Parameter error. | 759| 8300001 | Invalid parameter value. | 760| 8300002 | Operation failed. Cannot connect to service. | 761| 8300003 | System internal error. | 762| 8300004 | Do not have sim card. | 763| 8300999 | Unknown error code. | 764| 8301002 | SIM card operation error. | 765 766**示例:** 767 768```js 769let promise = sim.getSimAccountInfo(0); 770promise.then(data => { 771 console.log(`getSimAccountInfo success, promise: data->${JSON.stringify(data)}`); 772}).catch(err => { 773 console.log(`getSimAccountInfo failed, promise: err->${JSON.stringify(err)}`); 774}); 775``` 776 777## sim.getActiveSimAccountInfoList<sup>8+</sup> 778 779getActiveSimAccountInfoList(callback: AsyncCallback<Array<IccAccountInfo\>>): void 780 781获取活跃SIM卡账户信息列表。使用callback异步回调。 782 783**系统接口:** 此接口为系统接口。 784 785**需要权限**:ohos.permission.GET_TELEPHONY_STATE 786 787**系统能力**:SystemCapability.Telephony.CoreService 788 789**参数:** 790 791| 参数名 | 类型 | 必填 | 说明 | 792| -------- | ----------------------------------------------------------- | ---- | ---------- | 793| callback | AsyncCallback\<Array<[IccAccountInfo](#iccaccountinfo7)\>\> | 是 | 回调函数。 | 794 795**错误码:** 796 797以下错误码的详细介绍请参见[ohos.telephony(电话子系统)错误码](../../reference/errorcodes/errorcode-telephony.md)错误码。 798 799| 错误码ID | 错误信息 | 800| -------- | -------------------------------------------- | 801| 201 | Permission denied. | 802| 401 | Parameter error. | 803| 8300001 | Invalid parameter value. | 804| 8300002 | Operation failed. Cannot connect to service. | 805| 8300003 | System internal error. | 806| 8300004 | Do not have sim card. | 807| 8300999 | Unknown error code. | 808 809**示例:** 810 811```js 812sim.getActiveSimAccountInfoList((err, data) => { 813 console.log(`callback: err->${JSON.stringify(err)}, data->${JSON.stringify(data)}`); 814}); 815``` 816 817 818## sim.getActiveSimAccountInfoList<sup>8+</sup> 819 820getActiveSimAccountInfoList(): Promise<Array<IccAccountInfo\>>; 821 822获取活跃SIM卡账户信息列表。使用Promise异步回调。 823 824**系统接口:** 此接口为系统接口。 825 826**需要权限**:ohos.permission.GET_TELEPHONY_STATE 827 828**系统能力**:SystemCapability.Telephony.CoreService 829 830**返回值:** 831 832| 类型 | 说明 | 833| ---------------------------------------------------- | ---------------------------------------------- | 834| Promise<Array<[IccAccountInfo](#iccaccountinfo7)\>\> | 以Promise形式返回活跃卡槽SIM卡的账户信息列表。 | 835 836**错误码:** 837 838以下错误码的详细介绍请参见[ohos.telephony(电话子系统)错误码](../../reference/errorcodes/errorcode-telephony.md)错误码。 839 840| 错误码ID | 错误信息 | 841| -------- | -------------------------------------------- | 842| 201 | Permission denied. | 843| 401 | Parameter error. | 844| 8300001 | Invalid parameter value. | 845| 8300002 | Operation failed. Cannot connect to service. | 846| 8300003 | System internal error. | 847| 8300004 | Do not have sim card. | 848| 8300999 | Unknown error code. | 849 850**示例:** 851 852```js 853let promise = sim.getActiveSimAccountInfoList(); 854promise.then(data => { 855 console.log(`getActiveSimAccountInfoList success, promise: data->${JSON.stringify(data)}`); 856}).catch(err => { 857 console.log(`getActiveSimAccountInfoList failed, promise: err->${JSON.stringify(err)}`); 858}); 859``` 860 861## sim.setDefaultVoiceSlotId<sup>7+</sup> 862 863setDefaultVoiceSlotId(slotId: number, callback: AsyncCallback<void\>): void 864 865设置默认语音业务的卡槽ID。使用callback异步回调。 866 867**系统接口:** 此接口为系统接口。 868 869**需要权限**:ohos.permission.SET_TELEPHONY_STATE 870 871**系统能力**:SystemCapability.Telephony.CoreService 872 873**参数:** 874 875| 参数名 | 类型 | 必填 | 说明 | 876| -------- | ------------------------- | ---- | ------------------------------------------------------------ | 877| slotId | number | 是 | SIM卡槽ID:<br/>- 0:卡槽1<br/>- 1:卡槽2<br/>- -1:清除默认配置 | 878| callback | AsyncCallback<void> | 是 | 回调函数。 | 879 880**错误码:** 881 882以下错误码的详细介绍请参见[ohos.telephony(电话子系统)错误码](../../reference/errorcodes/errorcode-telephony.md)错误码。 883 884| 错误码ID | 错误信息 | 885| -------- | -------------------------------------------- | 886| 201 | Permission denied. | 887| 401 | Parameter error. | 888| 8300001 | Invalid parameter value. | 889| 8300002 | Operation failed. Cannot connect to service. | 890| 8300003 | System internal error. | 891| 8300004 | Do not have sim card. | 892| 8300999 | Unknown error code. | 893| 8301001 | SIM card is not activated. | 894 895**示例:** 896 897```js 898sim.setDefaultVoiceSlotId(0, (err) => { 899 console.log(`callback: err->${JSON.stringify(err)}`); 900}); 901``` 902 903 904## sim.setDefaultVoiceSlotId<sup>7+</sup> 905 906setDefaultVoiceSlotId(slotId: number): Promise\<void\> 907 908设置默认语音业务的卡槽ID。使用Promise异步回调。 909 910**系统接口:** 此接口为系统接口。 911 912**需要权限**:ohos.permission.SET_TELEPHONY_STATE 913 914**系统能力**:SystemCapability.Telephony.CoreService 915 916**参数:** 917 918| 参数名 | 类型 | 必填 | 说明 | 919| ------ | ------ | ---- | ------------------------------------------------------------ | 920| slotId | number | 是 | SIM卡槽ID:<br/>- 0:卡槽1<br/>- 1:卡槽2<br/>- -1:清除默认配置 | 921 922**返回值:** 923 924| 类型 | 说明 | 925| --------------- | ------------------------------- | 926| Promise\<void\> | 以Promise形式异步返回设置结果。 | 927 928**错误码:** 929 930以下错误码的详细介绍请参见[ohos.telephony(电话子系统)错误码](../../reference/errorcodes/errorcode-telephony.md)错误码。 931 932| 错误码ID | 错误信息 | 933| -------- | -------------------------------------------- | 934| 201 | Permission denied. | 935| 401 | Parameter error. | 936| 8300001 | Invalid parameter value. | 937| 8300002 | Operation failed. Cannot connect to service. | 938| 8300003 | System internal error. | 939| 8300004 | Do not have sim card. | 940| 8300999 | Unknown error code. | 941| 8301001 | SIM card is not activated. | 942 943**示例:** 944 945```js 946let promise = sim.setDefaultVoiceSlotId(0); 947promise.then(() => { 948 console.log(`setDefaultVoiceSlotId success.`); 949}).catch((err) => { 950 console.log(`setDefaultVoiceSlotId failed, promise: err->${JSON.stringify(err)}`); 951}); 952``` 953 954## sim.setShowName<sup>8+</sup> 955 956setShowName\(slotId: number, name: string, callback: AsyncCallback<void\>\): void 957 958设置指定卡槽SIM卡显示的名称。使用callback异步回调。 959 960**系统接口:** 此接口为系统接口。 961 962**需要权限**:ohos.permission.SET_TELEPHONY_STATE 963 964**系统能力**:SystemCapability.Telephony.CoreService 965 966**参数:** 967 968| 参数名 | 类型 | 必填 | 说明 | 969| -------- | ------------------------- | ---- | -------------------------------------- | 970| slotId | number | 是 | 卡槽ID。<br/>- 0:卡槽1<br/>- 1:卡槽2 | 971| name | string | 是 | SIM卡名称。 | 972| callback | AsyncCallback<void> | 是 | 回调函数。 | 973 974**错误码:** 975 976以下错误码的详细介绍请参见[ohos.telephony(电话子系统)错误码](../../reference/errorcodes/errorcode-telephony.md)错误码。 977 978| 错误码ID | 错误信息 | 979| -------- | -------------------------------------------- | 980| 201 | Permission denied. | 981| 401 | Parameter error. | 982| 8300001 | Invalid parameter value. | 983| 8300002 | Operation failed. Cannot connect to service. | 984| 8300003 | System internal error. | 985| 8300004 | Do not have sim card. | 986| 8300999 | Unknown error code. | 987 988**示例:** 989 990```js 991let name = "ShowName"; 992sim.setShowName(0, name, (err) => { 993 console.log(`callback: err->${JSON.stringify(err)}`); 994}); 995``` 996 997## sim.setShowName<sup>8+</sup> 998 999setShowName\(slotId: number, name: string\): Promise\<void\> 1000 1001设置指定卡槽SIM卡显示的名称。使用Promise异步回调。 1002 1003**系统接口:** 此接口为系统接口。 1004 1005**需要权限**:ohos.permission.SET_TELEPHONY_STATE 1006 1007**系统能力**:SystemCapability.Telephony.CoreService 1008 1009**参数:** 1010 1011| 参数名 | 类型 | 必填 | 说明 | 1012| ------ | ------ | ---- | -------------------------------------- | 1013| slotId | number | 是 | 卡槽ID。<br/>- 0:卡槽1<br/>- 1:卡槽2 | 1014| name | string | 是 | SIM卡名称。 | 1015 1016**返回值:** 1017 1018| 类型 | 说明 | 1019| --------------- | ------------------------------- | 1020| Promise\<void\> | 以Promise形式异步返回设置结果。 | 1021 1022**错误码:** 1023 1024以下错误码的详细介绍请参见[ohos.telephony(电话子系统)错误码](../../reference/errorcodes/errorcode-telephony.md)错误码。 1025 1026| 错误码ID | 错误信息 | 1027| -------- | -------------------------------------------- | 1028| 201 | Permission denied. | 1029| 401 | Parameter error. | 1030| 8300001 | Invalid parameter value. | 1031| 8300002 | Operation failed. Cannot connect to service. | 1032| 8300003 | System internal error. | 1033| 8300004 | Do not have sim card. | 1034| 8300999 | Unknown error code. | 1035 1036**示例:** 1037 1038```js 1039let name = "ShowName"; 1040let promise = sim.setShowName(0, name); 1041promise.then(() => { 1042 console.log(`setShowName success.`); 1043}).catch((err) => { 1044 console.log(`setShowName failed, promise: err->${JSON.stringify(err)}`); 1045}); 1046``` 1047 1048## sim.getShowName<sup>8+</sup> 1049 1050getShowName(slotId: number, callback: AsyncCallback<string\>): void 1051 1052获取指定卡槽SIM卡的名称。使用callback异步回调。 1053 1054**系统接口:** 此接口为系统接口。 1055 1056**需要权限**:ohos.permission.GET_TELEPHONY_STATE 1057 1058**系统能力**:SystemCapability.Telephony.CoreService 1059 1060**参数:** 1061 1062| 参数名 | 类型 | 必填 | 说明 | 1063| -------- | --------------------------- | ---- | -------------------------------------- | 1064| slotId | number | 是 | 卡槽ID。<br/>- 0:卡槽1<br/>- 1:卡槽2 | 1065| callback | AsyncCallback<string> | 是 | 回调函数。 | 1066 1067**错误码:** 1068 1069以下错误码的详细介绍请参见[ohos.telephony(电话子系统)错误码](../../reference/errorcodes/errorcode-telephony.md)错误码。 1070 1071| 错误码ID | 错误信息 | 1072| -------- | -------------------------------------------- | 1073| 201 | Permission denied. | 1074| 401 | Parameter error. | 1075| 8300001 | Invalid parameter value. | 1076| 8300002 | Operation failed. Cannot connect to service. | 1077| 8300003 | System internal error. | 1078| 8300004 | Do not have sim card. | 1079| 8300999 | Unknown error code. | 1080 1081**示例:** 1082 1083```js 1084sim.getShowName(0, (err, data) => { 1085 console.log(`callback: err->${JSON.stringify(err)}, data->${JSON.stringify(data)}`); 1086}); 1087``` 1088 1089 1090## sim.getShowName<sup>8+</sup> 1091 1092getShowName(slotId: number): Promise<string\> 1093 1094获取指定卡槽SIM卡的名称。使用Promise异步回调。 1095 1096**系统接口:** 此接口为系统接口。 1097 1098**需要权限**:ohos.permission.GET_TELEPHONY_STATE 1099 1100**系统能力**:SystemCapability.Telephony.CoreService 1101 1102**参数:** 1103 1104| 参数名 | 类型 | 必填 | 说明 | 1105| ------ | ------ | ---- | -------------------------------------- | 1106| slotId | number | 是 | 卡槽ID。<br/>- 0:卡槽1<br/>- 1:卡槽2 | 1107 1108**返回值:** 1109 1110| 类型 | 说明 | 1111| --------------------- | -------------------------------------- | 1112| Promise<string> | 以Promise形式返回指定卡槽SIM卡的名称。 | 1113 1114**错误码:** 1115 1116以下错误码的详细介绍请参见[ohos.telephony(电话子系统)错误码](../../reference/errorcodes/errorcode-telephony.md)错误码。 1117 1118| 错误码ID | 错误信息 | 1119| -------- | -------------------------------------------- | 1120| 201 | Permission denied. | 1121| 401 | Parameter error. | 1122| 8300001 | Invalid parameter value. | 1123| 8300002 | Operation failed. Cannot connect to service. | 1124| 8300003 | System internal error. | 1125| 8300004 | Do not have sim card. | 1126| 8300999 | Unknown error code. | 1127 1128**示例:** 1129 1130```js 1131let promise = sim.getShowName(0); 1132promise.then(data => { 1133 console.log(`getShowName success, promise: data->${JSON.stringify(data)}`); 1134}).catch(err => { 1135 console.log(`getShowName failed, promise: err->${JSON.stringify(err)}`); 1136}); 1137``` 1138 1139## sim.setShowNumber<sup>8+</sup> 1140 1141setShowNumber\(slotId: number, number: string, callback: AsyncCallback<void\>\): void 1142 1143设置指定卡槽SIM卡的号码。使用callback异步回调。 1144 1145**系统接口:** 此接口为系统接口。 1146 1147**需要权限**:ohos.permission.SET_TELEPHONY_STATE 1148 1149**系统能力**:SystemCapability.Telephony.CoreService 1150 1151**参数:** 1152 1153| 参数名 | 类型 | 必填 | 说明 | 1154| -------- | ------------------------- | ---- | -------------------------------------- | 1155| slotId | number | 是 | 卡槽ID。<br/>- 0:卡槽1<br/>- 1:卡槽2 | 1156| number | string | 是 | SIM卡号码。 | 1157| callback | AsyncCallback<void> | 是 | 回调函数。 | 1158 1159**错误码:** 1160 1161以下错误码的详细介绍请参见[ohos.telephony(电话子系统)错误码](../../reference/errorcodes/errorcode-telephony.md)错误码。 1162 1163| 错误码ID | 错误信息 | 1164| -------- | -------------------------------------------- | 1165| 201 | Permission denied. | 1166| 401 | Parameter error. | 1167| 8300001 | Invalid parameter value. | 1168| 8300002 | Operation failed. Cannot connect to service. | 1169| 8300003 | System internal error. | 1170| 8300004 | Do not have sim card. | 1171| 8300999 | Unknown error code. | 1172 1173**示例:** 1174 1175```js 1176let number = '+861xxxxxxxxxx'; 1177sim.setShowNumber(0, number, (err) => { 1178 console.log(`callback: err->${JSON.stringify(err)}`); 1179}); 1180``` 1181 1182 1183## sim.setShowNumber<sup>8+</sup> 1184 1185setShowNumber\(slotId: number, number: string\): Promise\<void\> 1186 1187设置指定卡槽SIM卡的号码。使用Promise异步回调。 1188 1189**系统接口:** 此接口为系统接口。 1190 1191**需要权限**:ohos.permission.SET_TELEPHONY_STATE 1192 1193**系统能力**:SystemCapability.Telephony.CoreService 1194 1195**参数:** 1196 1197| 参数名 | 类型 | 必填 | 说明 | 1198| ------ | ------ | ---- | -------------------------------------- | 1199| slotId | number | 是 | 卡槽ID。<br/>- 0:卡槽1<br/>- 1:卡槽2 | 1200| number | string | 是 | SIM卡号码。 | 1201 1202**返回值:** 1203 1204| 类型 | 说明 | 1205| -------------- | ------------------------------- | 1206| Promise<void\> | 以Promise形式异步返回设置结果。 | 1207 1208**错误码:** 1209 1210以下错误码的详细介绍请参见[ohos.telephony(电话子系统)错误码](../../reference/errorcodes/errorcode-telephony.md)错误码。 1211 1212| 错误码ID | 错误信息 | 1213| -------- | -------------------------------------------- | 1214| 201 | Permission denied. | 1215| 401 | Parameter error. | 1216| 8300001 | Invalid parameter value. | 1217| 8300002 | Operation failed. Cannot connect to service. | 1218| 8300003 | System internal error. | 1219| 8300004 | Do not have sim card. | 1220| 8300999 | Unknown error code. | 1221 1222**示例:** 1223 1224```js 1225let number = '+861xxxxxxxxxx'; 1226let promise = sim.setShowNumber(0, number); 1227promise.then(() => { 1228 console.log(`setShowNumber success.`); 1229}).catch((err) => { 1230 console.log(`setShowNumber failed, promise: err->${JSON.stringify(err)}`); 1231}); 1232``` 1233 1234## sim.getShowNumber<sup>8+</sup> 1235 1236getShowNumber(slotId: number, callback: AsyncCallback<string\>): void 1237 1238获取指定卡槽SIM卡的号码。使用callback异步回调。 1239 1240**系统接口:** 此接口为系统接口。 1241 1242**需要权限**:ohos.permission.GET_TELEPHONY_STATE 1243 1244**系统能力**:SystemCapability.Telephony.CoreService 1245 1246**参数:** 1247 1248| 参数名 | 类型 | 必填 | 说明 | 1249| -------- | --------------------------- | ---- | -------------------------------------- | 1250| slotId | number | 是 | 卡槽ID。<br/>- 0:卡槽1<br/>- 1:卡槽2 | 1251| callback | AsyncCallback<string> | 是 | 回调函数。 | 1252 1253**错误码:** 1254 1255以下错误码的详细介绍请参见[ohos.telephony(电话子系统)错误码](../../reference/errorcodes/errorcode-telephony.md)错误码。 1256 1257| 错误码ID | 错误信息 | 1258| -------- | -------------------------------------------- | 1259| 201 | Permission denied. | 1260| 401 | Parameter error. | 1261| 8300001 | Invalid parameter value. | 1262| 8300002 | Operation failed. Cannot connect to service. | 1263| 8300003 | System internal error. | 1264| 8300004 | Do not have sim card. | 1265| 8300999 | Unknown error code. | 1266 1267**示例:** 1268 1269```js 1270sim.getShowNumber(0, (err, data) => { 1271 console.log(`callback: err->${JSON.stringify(err)}, data->${JSON.stringify(data)}`); 1272}); 1273``` 1274 1275 1276## sim.getShowNumber<sup>8+</sup> 1277 1278getShowNumber(slotId: number): Promise<string\> 1279 1280获取指定卡槽SIM卡的号码。使用Promise异步回调。 1281 1282**系统接口:** 此接口为系统接口。 1283 1284**需要权限**:ohos.permission.GET_TELEPHONY_STATE 1285 1286**系统能力**:SystemCapability.Telephony.CoreService 1287 1288**参数:** 1289 1290| 参数名 | 类型 | 必填 | 说明 | 1291| ------ | ------ | ---- | -------------------------------------- | 1292| slotId | number | 是 | 卡槽ID。<br/>- 0:卡槽1<br/>- 1:卡槽2 | 1293 1294**返回值:** 1295 1296| 类型 | 说明 | 1297| --------------------- | --------------------------------- | 1298| Promise<string> | 以Promise形式返回指定卡槽的号码。 | 1299 1300**错误码:** 1301 1302以下错误码的详细介绍请参见[ohos.telephony(电话子系统)错误码](../../reference/errorcodes/errorcode-telephony.md)错误码。 1303 1304| 错误码ID | 错误信息 | 1305| -------- | -------------------------------------------- | 1306| 201 | Permission denied. | 1307| 401 | Parameter error. | 1308| 8300001 | Invalid parameter value. | 1309| 8300002 | Operation failed. Cannot connect to service. | 1310| 8300003 | System internal error. | 1311| 8300004 | Do not have sim card. | 1312| 8300999 | Unknown error code. | 1313 1314**示例:** 1315 1316```js 1317let promise = sim.getShowNumber(0); 1318promise.then(data => { 1319 console.log(`getShowNumber success, promise: data->${JSON.stringify(data)}`); 1320}).catch(err => { 1321 console.log(`getShowNumber failed, promise: err->${JSON.stringify(err)}`); 1322}); 1323``` 1324 1325## sim.activateSim<sup>8+</sup> 1326 1327activateSim(slotId: number, callback: AsyncCallback<void\>): void 1328 1329激活指定卡槽SIM卡。使用callback异步回调。 1330 1331**系统接口:** 此接口为系统接口。 1332 1333**需要权限**:ohos.permission.SET_TELEPHONY_STATE 1334 1335**系统能力**:SystemCapability.Telephony.CoreService 1336 1337**参数:** 1338 1339| 参数名 | 类型 | 必填 | 说明 | 1340| -------- | ------------------------- | ---- | -------------------------------------- | 1341| slotId | number | 是 | 卡槽ID。<br/>- 0:卡槽1<br/>- 1:卡槽2 | 1342| callback | AsyncCallback<void> | 是 | 回调函数。 | 1343 1344**错误码:** 1345 1346以下错误码的详细介绍请参见[ohos.telephony(电话子系统)错误码](../../reference/errorcodes/errorcode-telephony.md)错误码。 1347 1348| 错误码ID | 错误信息 | 1349| -------- | -------------------------------------------- | 1350| 201 | Permission denied. | 1351| 401 | Parameter error. | 1352| 8300001 | Invalid parameter value. | 1353| 8300002 | Operation failed. Cannot connect to service. | 1354| 8300003 | System internal error. | 1355| 8300004 | Do not have sim card. | 1356| 8300999 | Unknown error code. | 1357 1358**示例:** 1359 1360```js 1361sim.activateSim(0, (err) => { 1362 console.log(`callback: err->${JSON.stringify(err)}`); 1363}); 1364``` 1365 1366 1367## sim.activateSim<sup>8+</sup> 1368 1369activateSim(slotId: number): Promise\<void\> 1370 1371激活指定卡槽SIM卡。使用Promise异步回调。 1372 1373**系统接口:** 此接口为系统接口。 1374 1375**需要权限**:ohos.permission.SET_TELEPHONY_STATE 1376 1377**系统能力**:SystemCapability.Telephony.CoreService 1378 1379**参数:** 1380 1381| 参数名 | 类型 | 必填 | 说明 | 1382| ------ | ------ | ---- | -------------------------------------- | 1383| slotId | number | 是 | 卡槽ID。<br/>- 0:卡槽1<br/>- 1:卡槽2 | 1384 1385**返回值:** 1386 1387| 类型 | 说明 | 1388| --------------- | ------------------------------- | 1389| Promise\<void\> | 以Promise形式异步返回设置结果。 | 1390 1391**错误码:** 1392 1393以下错误码的详细介绍请参见[ohos.telephony(电话子系统)错误码](../../reference/errorcodes/errorcode-telephony.md)错误码。 1394 1395| 错误码ID | 错误信息 | 1396| -------- | -------------------------------------------- | 1397| 201 | Permission denied. | 1398| 401 | Parameter error. | 1399| 8300001 | Invalid parameter value. | 1400| 8300002 | Operation failed. Cannot connect to service. | 1401| 8300003 | System internal error. | 1402| 8300004 | Do not have sim card. | 1403| 8300999 | Unknown error code. | 1404 1405**示例:** 1406 1407```js 1408let promise = sim.activateSim(0); 1409promise.then(() => { 1410 console.log(`activateSim success.`); 1411}).catch((err) => { 1412 console.log(`activateSim failed, promise: err->${JSON.stringify(err)}`); 1413}); 1414``` 1415 1416## sim.deactivateSim<sup>8+</sup> 1417 1418deactivateSim(slotId: number, callback: AsyncCallback<void\>): void 1419 1420禁用指定卡槽SIM卡。使用callback异步回调。 1421 1422**系统接口:** 此接口为系统接口。 1423 1424**需要权限**:ohos.permission.SET_TELEPHONY_STATE 1425 1426**系统能力**:SystemCapability.Telephony.CoreService 1427 1428**参数:** 1429 1430| 参数名 | 类型 | 必填 | 说明 | 1431| -------- | ------------------------- | ---- | -------------------------------------- | 1432| slotId | number | 是 | 卡槽ID。<br/>- 0:卡槽1<br/>- 1:卡槽2 | 1433| callback | AsyncCallback<void> | 是 | 回调函数。 | 1434 1435**错误码:** 1436 1437以下错误码的详细介绍请参见[ohos.telephony(电话子系统)错误码](../../reference/errorcodes/errorcode-telephony.md)错误码。 1438 1439| 错误码ID | 错误信息 | 1440| -------- | -------------------------------------------- | 1441| 201 | Permission denied. | 1442| 401 | Parameter error. | 1443| 8300001 | Invalid parameter value. | 1444| 8300002 | Operation failed. Cannot connect to service. | 1445| 8300003 | System internal error. | 1446| 8300004 | Do not have sim card. | 1447| 8300999 | Unknown error code. | 1448 1449**示例:** 1450 1451```js 1452sim.deactivateSim(0, (err) => { 1453 console.log(`callback: err->${JSON.stringify(err)}`); 1454}); 1455``` 1456 1457 1458## sim.deactivateSim<sup>8+</sup> 1459 1460deactivateSim(slotId: number): Promise\<void\> 1461 1462禁用指定卡槽SIM卡。使用Promise异步回调。 1463 1464**系统接口:** 此接口为系统接口。 1465 1466**需要权限**:ohos.permission.SET_TELEPHONY_STATE 1467 1468**系统能力**:SystemCapability.Telephony.CoreService 1469 1470**参数:** 1471 1472| 参数名 | 类型 | 必填 | 说明 | 1473| ------ | ------ | ---- | -------------------------------------- | 1474| slotId | number | 是 | 卡槽ID。<br/>- 0:卡槽1<br/>- 1:卡槽2 | 1475 1476**返回值:** 1477 1478| 类型 | 说明 | 1479| --------------- | ------------------------------- | 1480| Promise\<void\> | 以Promise形式异步返回设置结果。 | 1481 1482**错误码:** 1483 1484以下错误码的详细介绍请参见[ohos.telephony(电话子系统)错误码](../../reference/errorcodes/errorcode-telephony.md)错误码。 1485 1486| 错误码ID | 错误信息 | 1487| -------- | -------------------------------------------- | 1488| 201 | Permission denied. | 1489| 401 | Parameter error. | 1490| 8300001 | Invalid parameter value. | 1491| 8300002 | Operation failed. Cannot connect to service. | 1492| 8300003 | System internal error. | 1493| 8300004 | Do not have sim card. | 1494| 8300999 | Unknown error code. | 1495 1496**示例:** 1497 1498```js 1499let promise = sim.deactivateSim(0); 1500promise.then(() => { 1501 console.log(`deactivateSim success.`); 1502}).catch((err) => { 1503 console.log(`deactivateSim failed, promise: err->${JSON.stringify(err)}`); 1504}); 1505``` 1506 1507## sim.setLockState<sup>7+</sup> 1508 1509setLockState(slotId: number, options: LockInfo, callback: AsyncCallback<LockStatusResponse\>): void 1510 1511设置指定卡槽SIM卡的锁状态。使用callback异步回调。 1512 1513**系统接口:** 此接口为系统接口。 1514 1515**需要权限**:ohos.permission.SET_TELEPHONY_STATE 1516 1517**系统能力**:SystemCapability.Telephony.CoreService 1518 1519**参数:** 1520 1521| 参数名 | 类型 | 必填 | 说明 | 1522| -------- | ----------------------------------------------------------- | ---- | ------------------------------------------------------------ | 1523| slotId | number | 是 | 卡槽ID。<br/>- 0:卡槽1<br/>- 1:卡槽2 | 1524| callback | AsyncCallback\<[LockStatusResponse](#lockstatusresponse7)\> | 是 | 回调函数。 | 1525| options | [LockInfo](#lockinfo8) | 是 | 锁信息。<br/>- lockType: [LockType](#locktype8)<br/>- password: string<br/>- state: [LockState](#lockstate8) | 1526 1527**错误码:** 1528 1529以下错误码的详细介绍请参见[ohos.telephony(电话子系统)错误码](../../reference/errorcodes/errorcode-telephony.md)错误码。 1530 1531| 错误码ID | 错误信息 | 1532| -------- | -------------------------------------------- | 1533| 201 | Permission denied. | 1534| 401 | Parameter error. | 1535| 8300001 | Invalid parameter value. | 1536| 8300002 | Operation failed. Cannot connect to service. | 1537| 8300003 | System internal error. | 1538| 8300004 | Do not have sim card. | 1539| 8300999 | Unknown error code. | 1540| 8301002 | SIM card operation error. | 1541 1542**示例:** 1543 1544```js 1545let lockInfo = { 1546 lockType: sim.LockType.PIN_LOCK, 1547 password: "1234", 1548 state: sim.LockState.LOCK_OFF 1549}; 1550sim.setLockState(0, lockInfo, (err, data) => { 1551 console.log(`callback: err->${JSON.stringify(err)}, data->${JSON.stringify(data)}`); 1552}); 1553``` 1554 1555 1556## sim.setLockState<sup>7+</sup> 1557 1558setLockState(slotId: number, options: LockInfo): Promise<LockStatusResponse\> 1559 1560设置指定卡槽SIM卡的锁状态。使用Promise异步回调。 1561 1562**系统接口:** 此接口为系统接口。 1563 1564**需要权限**:ohos.permission.SET_TELEPHONY_STATE 1565 1566**系统能力**:SystemCapability.Telephony.CoreService 1567 1568**参数:** 1569 1570| 参数名 | 类型 | 必填 | 说明 | 1571| ------- | ---------------------- | ---- | ------------------------------------------------------------ | 1572| slotId | number | 是 | 卡槽ID。<br/>- 0:卡槽1<br/>- 1:卡槽2 | 1573| options | [LockInfo](#lockinfo8) | 是 | 锁信息。<br/>- lockType: [LockType](#locktype8)<br/>- password: string<br/>- state: [LockState](#lockstate8) | 1574 1575**返回值:** 1576 1577| 类型 | 说明 | 1578| ---------------------------------------------------- | -------------------------------------------- | 1579| Promise<[LockStatusResponse](#lockstatusresponse7)\> | 以Promise形式返回获取指定卡槽SIM卡的锁状态。 | 1580 1581**错误码:** 1582 1583以下错误码的详细介绍请参见[ohos.telephony(电话子系统)错误码](../../reference/errorcodes/errorcode-telephony.md)错误码。 1584 1585| 错误码ID | 错误信息 | 1586| -------- | -------------------------------------------- | 1587| 201 | Permission denied. | 1588| 401 | Parameter error. | 1589| 8300001 | Invalid parameter value. | 1590| 8300002 | Operation failed. Cannot connect to service. | 1591| 8300003 | System internal error. | 1592| 8300004 | Do not have sim card. | 1593| 8300999 | Unknown error code. | 1594| 8301002 | SIM card operation error. | 1595 1596**示例:** 1597 1598```js 1599let lockInfo = { 1600 lockType: sim.LockType.PIN_LOCK, 1601 password: "1234", 1602 state: sim.LockState.LOCK_OFF 1603}; 1604let promise = sim.setLockState(0, lockInfo); 1605promise.then(data => { 1606 console.log(`setLockState success, promise: data->${JSON.stringify(data)}`); 1607}).catch(err => { 1608 console.log(`setLockState failed, promise: err->${JSON.stringify(err)}`); 1609}); 1610``` 1611 1612## sim.getLockState<sup>8+</sup> 1613 1614getLockState(slotId: number, lockType: LockType, callback: AsyncCallback<LockState\>): void 1615 1616获取指定卡槽SIM卡的锁状态。使用callback异步回调。 1617 1618**系统接口:** 此接口为系统接口。 1619 1620**需要权限**:ohos.permission.GET_TELEPHONY_STATE 1621 1622**系统能力**:SystemCapability.Telephony.CoreService 1623 1624**参数:** 1625 1626| 参数名 | 类型 | 必填 | 说明 | 1627| -------- | ----------------------------------------- | ---- | --------------------------------------- | 1628| slotId | number | 是 | 卡槽ID。<br/>- 0:卡槽1<br/>- 1:卡槽2 | 1629| callback | AsyncCallback\<[LockState](#lockstate8)\> | 是 | 回调函数。 | 1630| options | [LockType](#locktype8) | 是 | 锁类型。<br/>- 1: PIN锁<br/>- 2: PIN2锁 | 1631 1632**错误码:** 1633 1634以下错误码的详细介绍请参见[ohos.telephony(电话子系统)错误码](../../reference/errorcodes/errorcode-telephony.md)错误码。 1635 1636| 错误码ID | 错误信息 | 1637| -------- | -------------------------------------------- | 1638| 201 | Permission denied. | 1639| 401 | Parameter error. | 1640| 8300001 | Invalid parameter value. | 1641| 8300002 | Operation failed. Cannot connect to service. | 1642| 8300003 | System internal error. | 1643| 8300004 | Do not have sim card. | 1644| 8300999 | Unknown error code. | 1645| 8301002 | SIM card operation error. | 1646 1647**示例:** 1648 1649```js 1650sim.getLockState(0, 1, (err, data) => { 1651 console.log(`callback: err->${JSON.stringify(err)}, data->${JSON.stringify(data)}`); 1652}); 1653``` 1654 1655 1656## sim.getLockState<sup>8+</sup> 1657 1658getLockState(slotId: number, lockType: LockType): Promise<LockState\> 1659 1660获取指定卡槽SIM卡的锁状态。使用Promise异步回调。 1661 1662**系统接口:** 此接口为系统接口。 1663 1664**需要权限**:ohos.permission.GET_TELEPHONY_STATE 1665 1666**系统能力**:SystemCapability.Telephony.CoreService 1667 1668**参数:** 1669 1670| 参数名 | 类型 | 必填 | 说明 | 1671| ------- | ---------------------- | ---- | --------------------------------------- | 1672| slotId | number | 是 | 卡槽ID。<br/>- 0:卡槽1<br/>- 1:卡槽2 | 1673| options | [LockType](#locktype8) | 是 | 锁类型。<br/>- 1: PIN锁<br/>- 2: PIN2锁 | 1674 1675**返回值:** 1676 1677| 类型 | 说明 | 1678| ---------------------------------- | -------------------------------------------- | 1679| Promise<[LockState](#lockstate8)\> | 以Promise形式返回获取指定卡槽SIM卡的锁状态。 | 1680 1681**错误码:** 1682 1683以下错误码的详细介绍请参见[ohos.telephony(电话子系统)错误码](../../reference/errorcodes/errorcode-telephony.md)错误码。 1684 1685| 错误码ID | 错误信息 | 1686| -------- | -------------------------------------------- | 1687| 201 | Permission denied. | 1688| 401 | Parameter error. | 1689| 8300001 | Invalid parameter value. | 1690| 8300002 | Operation failed. Cannot connect to service. | 1691| 8300003 | System internal error. | 1692| 8300004 | Do not have sim card. | 1693| 8300999 | Unknown error code. | 1694| 8301002 | SIM card operation error. | 1695 1696**示例:** 1697 1698```js 1699let promise = sim.getLockState(0, 1); 1700promise.then(data => { 1701 console.log(`getLockState success, promise: data->${JSON.stringify(data)}`); 1702}).catch(err => { 1703 console.log(`getLockState failed, promise: err->${JSON.stringify(err)}`); 1704}); 1705``` 1706 1707## sim.alterPin<sup>7+</sup> 1708 1709alterPin(slotId: number, newPin: string, oldPin: string, callback: AsyncCallback<LockStatusResponse\>): void 1710 1711更改Pin密码。使用callback异步回调。 1712 1713**系统接口:** 此接口为系统接口。 1714 1715**需要权限**:ohos.permission.SET_TELEPHONY_STATE 1716 1717**系统能力**:SystemCapability.Telephony.CoreService 1718 1719**参数:** 1720 1721| 参数名 | 类型 | 必填 | 说明 | 1722| -------- | ----------------------------------------------------------- | ---- | -------------------------------------- | 1723| slotId | number | 是 | 卡槽ID。<br/>- 0:卡槽1<br/>- 1:卡槽2 | 1724| callback | AsyncCallback\<[LockStatusResponse](#lockstatusresponse7)\> | 是 | 回调函数。 | 1725| newPin | string | 是 | 新密码。 | 1726| oldPin | string | 是 | 旧密码。 | 1727 1728**错误码:** 1729 1730以下错误码的详细介绍请参见[ohos.telephony(电话子系统)错误码](../../reference/errorcodes/errorcode-telephony.md)错误码。 1731 1732| 错误码ID | 错误信息 | 1733| -------- | -------------------------------------------- | 1734| 201 | Permission denied. | 1735| 401 | Parameter error. | 1736| 8300001 | Invalid parameter value. | 1737| 8300002 | Operation failed. Cannot connect to service. | 1738| 8300003 | System internal error. | 1739| 8300004 | Do not have sim card. | 1740| 8300999 | Unknown error code. | 1741| 8301002 | SIM card operation error. | 1742 1743**示例:** 1744 1745```js 1746sim.alterPin(0, "1234", "0000", (err, data) => { 1747 console.log(`callback: err->${JSON.stringify(err)}, data->${JSON.stringify(data)}`); 1748}); 1749``` 1750 1751 1752## sim.alterPin<sup>7+</sup> 1753 1754alterPin(slotId: number, newPin: string, oldPin: string): Promise<LockStatusResponse\>; 1755 1756更改Pin密码。使用Promise异步回调。 1757 1758**系统接口:** 此接口为系统接口。 1759 1760**需要权限**:ohos.permission.SET_TELEPHONY_STATE 1761 1762**系统能力**:SystemCapability.Telephony.CoreService 1763 1764**参数:** 1765 1766| 参数名 | 类型 | 必填 | 说明 | 1767| ------ | ------ | ---- | -------------------------------------- | 1768| slotId | number | 是 | 卡槽ID。<br/>- 0:卡槽1<br/>- 1:卡槽2 | 1769| newPin | string | 是 | 新密码。 | 1770| oldPin | string | 是 | 旧密码。 | 1771 1772**返回值:** 1773 1774| 类型 | 说明 | 1775| ---------------------------------------------------- | --------------------------------------------- | 1776| Promise<[LockStatusResponse](#lockstatusresponse7)\> | 以Promise形式返回指定卡槽SIM卡的Pin是否成功。 | 1777 1778**错误码:** 1779 1780以下错误码的详细介绍请参见[ohos.telephony(电话子系统)错误码](../../reference/errorcodes/errorcode-telephony.md)错误码。 1781 1782| 错误码ID | 错误信息 | 1783| -------- | -------------------------------------------- | 1784| 201 | Permission denied. | 1785| 401 | Parameter error. | 1786| 8300001 | Invalid parameter value. | 1787| 8300002 | Operation failed. Cannot connect to service. | 1788| 8300003 | System internal error. | 1789| 8300004 | Do not have sim card. | 1790| 8300999 | Unknown error code. | 1791| 8301002 | SIM card operation error. | 1792 1793**示例:** 1794 1795```js 1796let promise = sim.alterPin(0, "1234", "0000"); 1797promise.then(data => { 1798 console.log(`alterPin success, promise: data->${JSON.stringify(data)}`); 1799}).catch(err => { 1800 console.log(`alterPin failed, promise: err->${JSON.stringify(err)}`); 1801}); 1802``` 1803 1804## sim.alterPin2<sup>8+</sup> 1805 1806alterPin2(slotId: number, newPin2: string, oldPin2: string, callback: AsyncCallback<LockStatusResponse\>): void 1807 1808更改Pin2密码。使用callback异步回调。 1809 1810**系统接口:** 此接口为系统接口。 1811 1812**需要权限**:ohos.permission.SET_TELEPHONY_STATE 1813 1814**系统能力**:SystemCapability.Telephony.CoreService 1815 1816**参数:** 1817 1818| 参数名 | 类型 | 必填 | 说明 | 1819| -------- | ----------------------------------------------------------- | ---- | -------------------------------------- | 1820| slotId | number | 是 | 卡槽ID。<br/>- 0:卡槽1<br/>- 1:卡槽2 | 1821| callback | AsyncCallback\<[LockStatusResponse](#lockstatusresponse7)\> | 是 | 回调函数。 | 1822| newPin2 | string | 是 | 新密码。 | 1823| oldPin2 | string | 是 | 旧密码。 | 1824 1825**错误码:** 1826 1827以下错误码的详细介绍请参见[ohos.telephony(电话子系统)错误码](../../reference/errorcodes/errorcode-telephony.md)错误码。 1828 1829| 错误码ID | 错误信息 | 1830| -------- | -------------------------------------------- | 1831| 201 | Permission denied. | 1832| 401 | Parameter error. | 1833| 8300001 | Invalid parameter value. | 1834| 8300002 | Operation failed. Cannot connect to service. | 1835| 8300003 | System internal error. | 1836| 8300004 | Do not have sim card. | 1837| 8300999 | Unknown error code. | 1838| 8301002 | SIM card operation error. | 1839 1840**示例:** 1841 1842```js 1843sim.alterPin2(0, "1234", "0000", (err, data) => { 1844 console.log(`callback: err->${JSON.stringify(err)}, data->${JSON.stringify(data)}`); 1845}); 1846``` 1847 1848 1849## sim.alterPin2<sup>8+</sup> 1850 1851alterPin2(slotId: number, newPin2: string, oldPin2: string): Promise<LockStatusResponse\> 1852 1853更改Pin2密码。使用Promise异步回调。 1854 1855**系统接口:** 此接口为系统接口。 1856 1857**需要权限**:ohos.permission.SET_TELEPHONY_STATE 1858 1859**系统能力**:SystemCapability.Telephony.CoreService 1860 1861**参数:** 1862 1863| 参数名 | 类型 | 必填 | 说明 | 1864| ------- | ------ | ---- | -------------------------------------- | 1865| slotId | number | 是 | 卡槽ID。<br/>- 0:卡槽1<br/>- 1:卡槽2 | 1866| newPin2 | string | 是 | 新密码。 | 1867| oldPin2 | string | 是 | 旧密码。 | 1868 1869**返回值:** 1870 1871| 类型 | 说明 | 1872| ---------------------------------------------------- | --------------------------------------------- | 1873| Promise<[LockStatusResponse](#lockstatusresponse7)\> | 以Promise形式返回指定卡槽SIM卡的Pin是否成功。 | 1874 1875**错误码:** 1876 1877以下错误码的详细介绍请参见[ohos.telephony(电话子系统)错误码](../../reference/errorcodes/errorcode-telephony.md)错误码。 1878 1879| 错误码ID | 错误信息 | 1880| -------- | -------------------------------------------- | 1881| 201 | Permission denied. | 1882| 401 | Parameter error. | 1883| 8300001 | Invalid parameter value. | 1884| 8300002 | Operation failed. Cannot connect to service. | 1885| 8300003 | System internal error. | 1886| 8300004 | Do not have sim card. | 1887| 8300999 | Unknown error code. | 1888| 8301002 | SIM card operation error. | 1889 1890**示例:** 1891 1892```js 1893let promise = sim.alterPin2(0, "1234", "0000"); 1894promise.then(data => { 1895 console.log(`alterPin2 success, promise: data->${JSON.stringify(data)}`); 1896}).catch(err => { 1897 console.log(`alterPin2 failed, promise: err->${JSON.stringify(err)}`); 1898}); 1899``` 1900 1901## sim.unlockPin<sup>7+</sup> 1902 1903unlockPin(slotId: number, pin: string, callback: AsyncCallback<LockStatusResponse\>): void 1904 1905解锁指定卡槽SIM卡密码。使用callback异步回调。 1906 1907**系统接口:** 此接口为系统接口。 1908 1909**需要权限**:ohos.permission.SET_TELEPHONY_STATE 1910 1911**系统能力**:SystemCapability.Telephony.CoreService 1912 1913**参数:** 1914 1915| 参数名 | 类型 | 必填 | 说明 | 1916| -------- | ------------------------------------------------------------ | ---- | -------------------------------------- | 1917| slotId | number | 是 | 卡槽ID。<br/>- 0:卡槽1<br/>- 1:卡槽2 | 1918| pin | string | 是 | SIM卡的密码。 | 1919| callback | AsyncCallback<[LockStatusResponse](#lockstatusresponse7)> | 是 | 回调函数。 | 1920 1921**错误码:** 1922 1923以下错误码的详细介绍请参见[ohos.telephony(电话子系统)错误码](../../reference/errorcodes/errorcode-telephony.md)错误码。 1924 1925| 错误码ID | 错误信息 | 1926| -------- | -------------------------------------------- | 1927| 201 | Permission denied. | 1928| 401 | Parameter error. | 1929| 8300001 | Invalid parameter value. | 1930| 8300002 | Operation failed. Cannot connect to service. | 1931| 8300003 | System internal error. | 1932| 8300004 | Do not have sim card. | 1933| 8300999 | Unknown error code. | 1934| 8301002 | SIM card operation error. | 1935 1936**示例:** 1937 1938```js 1939let pin = '1234'; 1940sim.unlockPin(0, pin, (err, data) => { 1941 console.log(`callback: err->${JSON.stringify(err)}, data->${JSON.stringify(data)}`); 1942}); 1943``` 1944 1945 1946## sim.unlockPin<sup>7+</sup> 1947 1948unlockPin(slotId: number, pin: string): Promise<LockStatusResponse\> 1949 1950解锁指定卡槽SIM卡密码。使用Promise异步回调。 1951 1952**系统接口:** 此接口为系统接口。 1953 1954**需要权限**:ohos.permission.SET_TELEPHONY_STATE 1955 1956**系统能力**:SystemCapability.Telephony.CoreService 1957 1958**参数:** 1959 1960| 参数名 | 类型 | 必填 | 说明 | 1961| ------ | ------ | ---- | -------------------------------------- | 1962| slotId | number | 是 | 卡槽ID。<br/>- 0:卡槽1<br/>- 1:卡槽2 | 1963| pin | string | 是 | SIM卡的密码。 | 1964 1965**返回值:** 1966 1967| 类型 | 说明 | 1968| ---------------------------------------------------- | -------------------------------------------------- | 1969| Promise\<[LockStatusResponse](#lockstatusresponse7)\> | 以Promise形式返回获取指定卡槽的SIM卡锁状态的响应。 | 1970 1971**错误码:** 1972 1973以下错误码的详细介绍请参见[ohos.telephony(电话子系统)错误码](../../reference/errorcodes/errorcode-telephony.md)错误码。 1974 1975| 错误码ID | 错误信息 | 1976| -------- | -------------------------------------------- | 1977| 201 | Permission denied. | 1978| 401 | Parameter error. | 1979| 8300001 | Invalid parameter value. | 1980| 8300002 | Operation failed. Cannot connect to service. | 1981| 8300003 | System internal error. | 1982| 8300004 | Do not have sim card. | 1983| 8300999 | Unknown error code. | 1984| 8301002 | SIM card operation error. | 1985 1986**示例:** 1987 1988```js 1989let pin = '1234'; 1990let promise = sim.unlockPin(0, pin); 1991promise.then(data => { 1992 console.log(`unlockPin success, promise: data->${JSON.stringify(data)}`); 1993}).catch(err => { 1994 console.log(`unlockPin failed, promise: err->${JSON.stringify(err)}`); 1995}); 1996``` 1997 1998## sim.unlockPuk<sup>7+</sup> 1999 2000unlockPuk(slotId: number, newPin: string, puk: string, callback: AsyncCallback<LockStatusResponse\>): void 2001 2002解锁指定卡槽SIM卡密码的解锁密码。使用callback异步回调。 2003 2004**系统接口:** 此接口为系统接口。 2005 2006**需要权限**:ohos.permission.SET_TELEPHONY_STATE 2007 2008**系统能力**:SystemCapability.Telephony.CoreService 2009 2010**参数:** 2011 2012| 参数名 | 类型 | 必填 | 说明 | 2013| -------- | ------------------------------------------------------------ | ---- | -------------------------------------- | 2014| slotId | number | 是 | 卡槽ID。<br/>- 0:卡槽1<br/>- 1:卡槽2 | 2015| newPin | string | 是 | 重置SIM卡的密码。 | 2016| puk | string | 是 | SIM卡密码的解锁密码。 | 2017| callback | AsyncCallback<[LockStatusResponse](#lockstatusresponse7)> | 是 | 回调函数。 | 2018 2019**错误码:** 2020 2021以下错误码的详细介绍请参见[ohos.telephony(电话子系统)错误码](../../reference/errorcodes/errorcode-telephony.md)错误码。 2022 2023| 错误码ID | 错误信息 | 2024| -------- | -------------------------------------------- | 2025| 201 | Permission denied. | 2026| 401 | Parameter error. | 2027| 8300001 | Invalid parameter value. | 2028| 8300002 | Operation failed. Cannot connect to service. | 2029| 8300003 | System internal error. | 2030| 8300004 | Do not have sim card. | 2031| 8300999 | Unknown error code. | 2032| 8301002 | SIM card operation error. | 2033 2034**示例:** 2035 2036```js 2037let puk = '1xxxxxxx'; 2038let newPin = '1235'; 2039sim.unlockPuk(0, newPin, puk, (err, data) => { 2040 console.log(`callback: err->${JSON.stringify(err)}, data->${JSON.stringify(data)}`); 2041}); 2042``` 2043 2044 2045## sim.unlockPuk<sup>7+</sup> 2046 2047unlockPuk(slotId: number, newPin: string, puk: string): Promise<LockStatusResponse\> 2048 2049解锁指定卡槽SIM卡密码的解锁密码。使用Promise异步回调。 2050 2051**系统接口:** 此接口为系统接口。 2052 2053**需要权限**:ohos.permission.SET_TELEPHONY_STATE 2054 2055**系统能力**:SystemCapability.Telephony.CoreService 2056 2057**参数:** 2058 2059| 参数名 | 类型 | 必填 | 说明 | 2060| ------ | ------ | ---- | -------------------------------------- | 2061| slotId | number | 是 | 卡槽ID。<br/>- 0:卡槽1<br/>- 1:卡槽2 | 2062| newPin | string | 是 | 重置SIM卡的密码。 | 2063| puk | string | 是 | SIM卡密码的解锁密码。 | 2064 2065**返回值:** 2066 2067| 类型 | 说明 | 2068| ---------------------------------------------------- | -------------------------------------------------- | 2069| Promise\<[LockStatusResponse](#lockstatusresponse7)\> | 以Promise形式返回获取指定卡槽的SIM卡锁状态的响应。 | 2070 2071**错误码:** 2072 2073以下错误码的详细介绍请参见[ohos.telephony(电话子系统)错误码](../../reference/errorcodes/errorcode-telephony.md)错误码。 2074 2075| 错误码ID | 错误信息 | 2076| -------- | -------------------------------------------- | 2077| 201 | Permission denied. | 2078| 401 | Parameter error. | 2079| 8300001 | Invalid parameter value. | 2080| 8300002 | Operation failed. Cannot connect to service. | 2081| 8300003 | System internal error. | 2082| 8300004 | Do not have sim card. | 2083| 8300999 | Unknown error code. | 2084| 8301002 | SIM card operation error. | 2085 2086**示例:** 2087 2088```js 2089let puk = '1xxxxxxx'; 2090let newPin = '1235'; 2091let promise = sim.unlockPuk(0, newPin, puk); 2092promise.then(data => { 2093 console.log(`unlockPuk success, promise: data->${JSON.stringify(data)}`); 2094}).catch(err => { 2095 console.log(`unlockPuk failed, promise: err->${JSON.stringify(err)}`); 2096}); 2097``` 2098 2099## sim.unlockPin2<sup>8+</sup> 2100 2101unlockPin2(slotId: number, pin2: string, callback: AsyncCallback<LockStatusResponse\>): void 2102 2103解锁指定卡槽SIM卡密码。使用callback异步回调。 2104 2105**系统接口:** 此接口为系统接口。 2106 2107**需要权限**:ohos.permission.SET_TELEPHONY_STATE 2108 2109**系统能力**:SystemCapability.Telephony.CoreService 2110 2111**参数:** 2112 2113| 参数名 | 类型 | 必填 | 说明 | 2114| -------- | ------------------------------------------------------------ | ---- | -------------------------------------- | 2115| slotId | number | 是 | 卡槽ID。<br/>- 0:卡槽1<br/>- 1:卡槽2 | 2116| pin2 | string | 是 | SIM卡的密码。 | 2117| callback | AsyncCallback<[LockStatusResponse](#lockstatusresponse7)> | 是 | 回调函数。 | 2118 2119**错误码:** 2120 2121以下错误码的详细介绍请参见[ohos.telephony(电话子系统)错误码](../../reference/errorcodes/errorcode-telephony.md)错误码。 2122 2123| 错误码ID | 错误信息 | 2124| -------- | -------------------------------------------- | 2125| 201 | Permission denied. | 2126| 401 | Parameter error. | 2127| 8300001 | Invalid parameter value. | 2128| 8300002 | Operation failed. Cannot connect to service. | 2129| 8300003 | System internal error. | 2130| 8300004 | Do not have sim card. | 2131| 8300999 | Unknown error code. | 2132| 8301002 | SIM card operation error. | 2133 2134**示例:** 2135 2136```js 2137let pin2 = '1234'; 2138sim.unlockPin2(0, pin2, (err, data) => { 2139 console.log(`callback: err->${JSON.stringify(err)}, data->${JSON.stringify(data)}`); 2140}); 2141``` 2142 2143 2144## sim.unlockPin2<sup>8+</sup> 2145 2146unlockPin2(slotId: number, pin2: string): Promise<LockStatusResponse\> 2147 2148解锁指定卡槽SIM卡密码。使用Promise异步回调。 2149 2150**系统接口:** 此接口为系统接口。 2151 2152**需要权限**:ohos.permission.SET_TELEPHONY_STATE 2153 2154**系统能力**:SystemCapability.Telephony.CoreService 2155 2156**参数:** 2157 2158| 参数名 | 类型 | 必填 | 说明 | 2159| ------ | ------ | ---- | -------------------------------------- | 2160| slotId | number | 是 | 卡槽ID。<br/>- 0:卡槽1<br/>- 1:卡槽2 | 2161| pin2 | string | 是 | SIM卡的密码。 | 2162 2163**返回值:** 2164 2165| 类型 | 说明 | 2166| ----------------------------------------------------- | -------------------------------------------------- | 2167| Promise\<[LockStatusResponse](#lockstatusresponse7)\> | 以Promise形式返回获取指定卡槽的SIM卡锁状态的响应。 | 2168 2169**错误码:** 2170 2171以下错误码的详细介绍请参见[ohos.telephony(电话子系统)错误码](../../reference/errorcodes/errorcode-telephony.md)错误码。 2172 2173| 错误码ID | 错误信息 | 2174| -------- | -------------------------------------------- | 2175| 201 | Permission denied. | 2176| 401 | Parameter error. | 2177| 8300001 | Invalid parameter value. | 2178| 8300002 | Operation failed. Cannot connect to service. | 2179| 8300003 | System internal error. | 2180| 8300004 | Do not have sim card. | 2181| 8300999 | Unknown error code. | 2182| 8301002 | SIM card operation error. | 2183 2184**示例:** 2185 2186```js 2187let pin2='1234'; 2188let promise = sim.unlockPin2(0, pin2); 2189promise.then(data => { 2190 console.log(`unlockPin2 success, promise: data->${JSON.stringify(data)}`); 2191}).catch(err => { 2192 console.log(`unlockPin2 failed, promise: err->${JSON.stringify(err)}`); 2193}); 2194``` 2195 2196## sim.unlockPuk2<sup>8+</sup> 2197 2198unlockPuk2(slotId: number, newPin2: string, puk2: string, callback: AsyncCallback<LockStatusResponse\>): void 2199 2200解锁指定卡槽SIM卡密码的解锁密码。使用callback异步回调。 2201 2202**系统接口:** 此接口为系统接口。 2203 2204**需要权限**:ohos.permission.SET_TELEPHONY_STATE 2205 2206**系统能力**:SystemCapability.Telephony.CoreService 2207 2208**参数:** 2209 2210| 参数名 | 类型 | 必填 | 说明 | 2211| -------- | ------------------------------------------------------------ | ---- | -------------------------------------- | 2212| slotId | number | 是 | 卡槽ID。<br/>- 0:卡槽1<br/>- 1:卡槽2 | 2213| newPin2 | string | 是 | 重置SIM卡的密码。 | 2214| puk2 | string | 是 | SIM卡密码的解锁密码。 | 2215| callback | AsyncCallback<[LockStatusResponse](#lockstatusresponse7)> | 是 | 回调函数。 | 2216 2217**错误码:** 2218 2219以下错误码的详细介绍请参见[ohos.telephony(电话子系统)错误码](../../reference/errorcodes/errorcode-telephony.md)错误码。 2220 2221| 错误码ID | 错误信息 | 2222| -------- | -------------------------------------------- | 2223| 201 | Permission denied. | 2224| 401 | Parameter error. | 2225| 8300001 | Invalid parameter value. | 2226| 8300002 | Operation failed. Cannot connect to service. | 2227| 8300003 | System internal error. | 2228| 8300004 | Do not have sim card. | 2229| 8300999 | Unknown error code. | 2230| 8301002 | SIM card operation error. | 2231 2232**示例:** 2233 2234```js 2235let puk2 = '1xxxxxxx'; 2236let newPin2 = '1235'; 2237sim.unlockPuk2(0, newPin2, puk2, (err, data) => { 2238 console.log(`callback: err->${JSON.stringify(err)}, data->${JSON.stringify(data)}`); 2239}); 2240``` 2241 2242 2243## sim.unlockPuk2<sup>8+</sup> 2244 2245unlockPuk2(slotId: number, newPin2: string, puk2: string): Promise<LockStatusResponse\> 2246 2247解锁指定卡槽SIM卡密码的解锁密码。使用Promise异步回调。 2248 2249**系统接口:** 此接口为系统接口。 2250 2251**需要权限**:ohos.permission.SET_TELEPHONY_STATE 2252 2253**系统能力**:SystemCapability.Telephony.CoreService 2254 2255**参数:** 2256 2257| 参数名 | 类型 | 必填 | 说明 | 2258| ------- | ------ | ---- | -------------------------------------- | 2259| slotId | number | 是 | 卡槽ID。<br/>- 0:卡槽1<br/>- 1:卡槽2 | 2260| newPin2 | string | 是 | 重置SIM卡的密码。 | 2261| puk2 | string | 是 | SIM卡密码的解锁密码。 | 2262 2263**返回值:** 2264 2265| 类型 | 说明 | 2266| ---------------------------------------------------- | -------------------------------------------------- | 2267| Promise\<[LockStatusResponse](#lockstatusresponse7)\> | 以Promise形式返回获取指定卡槽的SIM卡锁状态的响应。 | 2268 2269**错误码:** 2270 2271以下错误码的详细介绍请参见[ohos.telephony(电话子系统)错误码](../../reference/errorcodes/errorcode-telephony.md)错误码。 2272 2273| 错误码ID | 错误信息 | 2274| -------- | -------------------------------------------- | 2275| 201 | Permission denied. | 2276| 401 | Parameter error. | 2277| 8300001 | Invalid parameter value. | 2278| 8300002 | Operation failed. Cannot connect to service. | 2279| 8300003 | System internal error. | 2280| 8300004 | Do not have sim card. | 2281| 8300999 | Unknown error code. | 2282| 8301002 | SIM card operation error. | 2283 2284**示例:** 2285 2286```js 2287let puk2 = '1xxxxxxx'; 2288let newPin2 = '1235'; 2289let promise = sim.unlockPuk2(0, newPin2, puk2); 2290promise.then(data => { 2291 console.log(`unlockPuk2 success, promise: data->${JSON.stringify(data)}`); 2292}).catch(err => { 2293 console.log(`unlockPuk2 failed, promise: err->${JSON.stringify(err)}`); 2294}); 2295``` 2296 2297## sim.getMaxSimCount<sup>7+</sup> 2298 2299getMaxSimCount\(\): number 2300 2301获取卡槽数量。 2302 2303**系统能力**:SystemCapability.Telephony.CoreService 2304 2305**返回值:** 2306 2307| 类型 | 说明 | 2308| ----------------- | ------------------------------------------------------------ | 2309| number | 卡槽数量。 | 2310 2311**示例:** 2312 2313```js 2314console.log("Result: "+ sim.getMaxSimCount()) 2315``` 2316 2317## sim.getSimIccId<sup>7+</sup> 2318 2319getSimIccId(slotId: number, callback: AsyncCallback<string\>): void 2320 2321获取指定卡槽SIM卡的ICCID。使用callback异步回调。 2322 2323**系统接口:** 此接口为系统接口。 2324 2325**需要权限**:ohos.permission.GET_TELEPHONY_STATE 2326 2327**系统能力**:SystemCapability.Telephony.CoreService 2328 2329**参数:** 2330 2331| 参数名 | 类型 | 必填 | 说明 | 2332| -------- | ---------------------- | ---- | -------------------------------------- | 2333| slotId | number | 是 | 卡槽ID。<br/>- 0:卡槽1<br/>- 1:卡槽2 | 2334| callback | AsyncCallback<string\> | 是 | 回调函数。 | 2335 2336**错误码:** 2337 2338以下错误码的详细介绍请参见[ohos.telephony(电话子系统)错误码](../../reference/errorcodes/errorcode-telephony.md)错误码。 2339 2340| 错误码ID | 错误信息 | 2341| -------- | -------------------------------------------- | 2342| 201 | Permission denied. | 2343| 401 | Parameter error. | 2344| 8300001 | Invalid parameter value. | 2345| 8300002 | Operation failed. Cannot connect to service. | 2346| 8300003 | System internal error. | 2347| 8300004 | Do not have sim card. | 2348| 8300999 | Unknown error code. | 2349 2350**示例:** 2351 2352```js 2353sim.getSimIccId(0, (err, data) => { 2354 console.log(`callback: err->${JSON.stringify(err)}, data->${JSON.stringify(data)}`); 2355}); 2356``` 2357 2358 2359## sim.getSimIccId<sup>7+</sup> 2360 2361getSimIccId(slotId: number): Promise<string\> 2362 2363获取指定卡槽SIM卡的ICCID。使用Promise异步回调。 2364 2365**系统接口:** 此接口为系统接口。 2366 2367**需要权限**:ohos.permission.GET_TELEPHONY_STATE 2368 2369**系统能力**:SystemCapability.Telephony.CoreService 2370 2371**参数:** 2372 2373| 参数名 | 类型 | 必填 | 说明 | 2374| ------ | ------ | ---- | -------------------------------------- | 2375| slotId | number | 是 | 卡槽ID。<br/>- 0:卡槽1<br/>- 1:卡槽2 | 2376 2377**返回值:** 2378 2379| 类型 | 说明 | 2380| ---------------- | ------------------------------------------- | 2381| Promise<string\> | 以Promise形式返回获取指定卡槽SIM卡的ICCID。 | 2382 2383**错误码:** 2384 2385以下错误码的详细介绍请参见[ohos.telephony(电话子系统)错误码](../../reference/errorcodes/errorcode-telephony.md)错误码。 2386 2387| 错误码ID | 错误信息 | 2388| -------- | -------------------------------------------- | 2389| 201 | Permission denied. | 2390| 401 | Parameter error. | 2391| 8300001 | Invalid parameter value. | 2392| 8300002 | Operation failed. Cannot connect to service. | 2393| 8300003 | System internal error. | 2394| 8300004 | Do not have sim card. | 2395| 8300999 | Unknown error code. | 2396 2397**示例:** 2398 2399```js 2400let promise = sim.getSimIccId(0); 2401promise.then(data => { 2402 console.log(`getSimIccId success, promise: data->${JSON.stringify(data)}`); 2403}).catch(err => { 2404 console.log(`getSimIccId failed, promise: err->${JSON.stringify(err)}`); 2405}); 2406``` 2407 2408## sim.getVoiceMailIdentifier<sup>8+</sup> 2409 2410getVoiceMailIdentifier(slotId: number, callback: AsyncCallback<string\>): void 2411 2412获取指定卡槽中SIM卡语音信箱的alpha标识符。使用callback异步回调。 2413 2414**系统接口:** 此接口为系统接口。 2415 2416**需要权限**:ohos.permission.GET_TELEPHONY_STATE 2417 2418**系统能力**:SystemCapability.Telephony.CoreService 2419 2420**参数:** 2421 2422| 参数名 | 类型 | 必填 | 说明 | 2423| -------- | ---------------------- | ---- | -------------------------------------- | 2424| slotId | number | 是 | 卡槽ID。<br/>- 0:卡槽1<br/>- 1:卡槽2 | 2425| callback | AsyncCallback<string\> | 是 | 回调函数。 | 2426 2427**错误码:** 2428 2429以下错误码的详细介绍请参见[ohos.telephony(电话子系统)错误码](../../reference/errorcodes/errorcode-telephony.md)错误码。 2430 2431| 错误码ID | 错误信息 | 2432| -------- | -------------------------------------------- | 2433| 201 | Permission denied. | 2434| 401 | Parameter error. | 2435| 8300001 | Invalid parameter value. | 2436| 8300002 | Operation failed. Cannot connect to service. | 2437| 8300003 | System internal error. | 2438| 8300004 | Do not have sim card. | 2439| 8300999 | Unknown error code. | 2440 2441**示例:** 2442 2443```js 2444sim.getVoiceMailIdentifier(0, (err, data) => { 2445 console.log(`callback: err->${JSON.stringify(err)}, data->${JSON.stringify(data)}`); 2446}); 2447``` 2448 2449 2450## sim.getVoiceMailIdentifier<sup>8+</sup> 2451 2452getVoiceMailIdentifier(slotId: number): Promise<string\> 2453 2454获取指定卡槽中SIM卡语音信箱的alpha标识符。使用Promise异步回调。 2455 2456**系统接口:** 此接口为系统接口。 2457 2458**需要权限**:ohos.permission.GET_TELEPHONY_STATE 2459 2460**系统能力**:SystemCapability.Telephony.CoreService 2461 2462**参数:** 2463 2464| 参数名 | 类型 | 必填 | 说明 | 2465| ------ | ------ | ---- | -------------------------------------- | 2466| slotId | number | 是 | 卡槽ID。<br/>- 0:卡槽1<br/>- 1:卡槽2 | 2467 2468**返回值:** 2469 2470| 类型 | 说明 | 2471| ---------------- | ------------------------------------------------- | 2472| Promise<string\> | 以Promise形式返回获取指定卡槽SIM卡的alpha标识符。 | 2473 2474**错误码:** 2475 2476以下错误码的详细介绍请参见[ohos.telephony(电话子系统)错误码](../../reference/errorcodes/errorcode-telephony.md)错误码。 2477 2478| 错误码ID | 错误信息 | 2479| -------- | -------------------------------------------- | 2480| 201 | Permission denied. | 2481| 401 | Parameter error. | 2482| 8300001 | Invalid parameter value. | 2483| 8300002 | Operation failed. Cannot connect to service. | 2484| 8300003 | System internal error. | 2485| 8300004 | Do not have sim card. | 2486| 8300999 | Unknown error code. | 2487 2488**示例:** 2489 2490```js 2491let promise = sim.getVoiceMailIdentifier(0); 2492promise.then(data => { 2493 console.log(`getVoiceMailIdentifier success, promise: data->${JSON.stringify(data)}`); 2494}).catch(err => { 2495 console.log(`getVoiceMailIdentifier failed, promise: err->${JSON.stringify(err)}`); 2496}); 2497``` 2498 2499## sim.getVoiceMailNumber<sup>8+</sup> 2500 2501getVoiceMailNumber(slotId: number, callback: AsyncCallback<string\>): void 2502 2503获取指定卡槽中SIM卡的语音信箱号。使用callback异步回调。 2504 2505**系统接口:** 此接口为系统接口。 2506 2507**需要权限**:ohos.permission.GET_TELEPHONY_STATE 2508 2509**系统能力**:SystemCapability.Telephony.CoreService 2510 2511**参数:** 2512 2513| 参数名 | 类型 | 必填 | 说明 | 2514| -------- | ---------------------- | ---- | -------------------------------------- | 2515| slotId | number | 是 | 卡槽ID。<br/>- 0:卡槽1<br/>- 1:卡槽2 | 2516| callback | AsyncCallback<string\> | 是 | 回调函数。 | 2517 2518**错误码:** 2519 2520以下错误码的详细介绍请参见[ohos.telephony(电话子系统)错误码](../../reference/errorcodes/errorcode-telephony.md)错误码。 2521 2522| 错误码ID | 错误信息 | 2523| -------- | -------------------------------------------- | 2524| 201 | Permission denied. | 2525| 401 | Parameter error. | 2526| 8300001 | Invalid parameter value. | 2527| 8300002 | Operation failed. Cannot connect to service. | 2528| 8300003 | System internal error. | 2529| 8300004 | Do not have sim card. | 2530| 8300999 | Unknown error code. | 2531 2532**示例:** 2533 2534```js 2535sim.getVoiceMailNumber(0, (err, data) => { 2536 console.log(`callback: err->${JSON.stringify(err)}, data->${JSON.stringify(data)}`); 2537}); 2538``` 2539 2540 2541## sim.getVoiceMailNumber<sup>8+</sup> 2542 2543getVoiceMailNumber(slotId: number): Promise<string\> 2544 2545获取指定卡槽中SIM卡的语音信箱号。使用Promise异步回调。 2546 2547**系统接口:** 此接口为系统接口。 2548 2549**需要权限**:ohos.permission.GET_TELEPHONY_STATE 2550 2551**系统能力**:SystemCapability.Telephony.CoreService 2552 2553**参数:** 2554 2555| 参数名 | 类型 | 必填 | 说明 | 2556| ------ | ------ | ---- | -------------------------------------- | 2557| slotId | number | 是 | 卡槽ID。<br/>- 0:卡槽1<br/>- 1:卡槽2 | 2558 2559**返回值:** 2560 2561| 类型 | 说明 | 2562| ---------------- | ------------------------------------------------ | 2563| Promise<string\> | 以Promise形式返回获取指定卡槽SIM卡的语音信箱号。 | 2564 2565**错误码:** 2566 2567以下错误码的详细介绍请参见[ohos.telephony(电话子系统)错误码](../../reference/errorcodes/errorcode-telephony.md)错误码。 2568 2569| 错误码ID | 错误信息 | 2570| -------- | -------------------------------------------- | 2571| 201 | Permission denied. | 2572| 401 | Parameter error. | 2573| 8300001 | Invalid parameter value. | 2574| 8300002 | Operation failed. Cannot connect to service. | 2575| 8300003 | System internal error. | 2576| 8300004 | Do not have sim card. | 2577| 8300999 | Unknown error code. | 2578 2579**示例:** 2580 2581```js 2582let promise = sim.getVoiceMailNumber(0); 2583promise.then(data => { 2584 console.log(`getVoiceMailNumber success, promise: data->${JSON.stringify(data)}`); 2585}).catch(err => { 2586 console.log(`getVoiceMailNumber failed, promise: err->${JSON.stringify(err)}`); 2587}); 2588``` 2589 2590 2591## sim.setVoiceMailInfo<sup>8+</sup> 2592 2593setVoiceMailInfo(slotId: number, mailName: string, mailNumber: string, callback: AsyncCallback<void\>): void 2594 2595设置语音邮件信息。使用callback异步回调。 2596 2597**系统接口:** 此接口为系统接口。 2598 2599**需要权限**:ohos.permission.SET_TELEPHONY_STATE 2600 2601**系统能力**:SystemCapability.Telephony.CoreService 2602 2603**参数:** 2604 2605| 参数名 | 类型 | 必填 | 说明 | 2606| ---------- | -------------------- | ---- | -------------------------------------- | 2607| slotId | number | 是 | 卡槽ID。<br/>- 0:卡槽1<br/>- 1:卡槽2 | 2608| mailName | string | 是 | 邮件名字 | 2609| mailNumber | string | 是 | 邮件号码 | 2610| callback | AsyncCallback<void\> | 是 | 回调函数。 | 2611 2612**错误码:** 2613 2614以下错误码的详细介绍请参见[ohos.telephony(电话子系统)错误码](../../reference/errorcodes/errorcode-telephony.md)错误码。 2615 2616| 错误码ID | 错误信息 | 2617| -------- | -------------------------------------------- | 2618| 201 | Permission denied. | 2619| 401 | Parameter error. | 2620| 8300001 | Invalid parameter value. | 2621| 8300002 | Operation failed. Cannot connect to service. | 2622| 8300003 | System internal error. | 2623| 8300004 | Do not have sim card. | 2624| 8300999 | Unknown error code. | 2625| 8301002 | SIM card operation error. | 2626 2627**示例:** 2628 2629```js 2630sim.setVoiceMailInfo(0, "mail", "xxx@xxx.com", (err) => { 2631 console.log(`callback: err->${JSON.stringify(err)}`); 2632}); 2633``` 2634 2635 2636## sim.setVoiceMailInfo<sup>8+</sup> 2637 2638setVoiceMailInfo(slotId: number, mailName: string, mailNumber: string): Promise<void\> 2639 2640设置语音邮件信息。使用Promise异步回调。 2641 2642**系统接口:** 此接口为系统接口。 2643 2644**需要权限**:ohos.permission.SET_TELEPHONY_STATE 2645 2646**系统能力**:SystemCapability.Telephony.CoreService 2647 2648**参数:** 2649 2650| 参数名 | 类型 | 必填 | 说明 | 2651| ---------- | ------ | ---- | -------------------------------------- | 2652| slotId | number | 是 | 卡槽ID。<br/>- 0:卡槽1<br/>- 1:卡槽2 | 2653| mailName | string | 是 | 邮件名字。 | 2654| mailNumber | string | 是 | 邮件号码。 | 2655 2656**返回值:** 2657 2658| 类型 | 说明 | 2659| -------------- | ----------------------- | 2660| Promise<void\> | 以Promise形式返回结果。 | 2661 2662**错误码:** 2663 2664以下错误码的详细介绍请参见[ohos.telephony(电话子系统)错误码](../../reference/errorcodes/errorcode-telephony.md)错误码。 2665 2666| 错误码ID | 错误信息 | 2667| -------- | -------------------------------------------- | 2668| 201 | Permission denied. | 2669| 401 | Parameter error. | 2670| 8300001 | Invalid parameter value. | 2671| 8300002 | Operation failed. Cannot connect to service. | 2672| 8300003 | System internal error. | 2673| 8300004 | Do not have sim card. | 2674| 8300999 | Unknown error code. | 2675| 8301002 | SIM card operation error. | 2676 2677**示例:** 2678 2679```js 2680let promise = sim.setVoiceMailInfo(0, "mail", "xxx@xxx.com"); 2681promise.then(() => { 2682 console.log(`setVoiceMailInfo success.`); 2683}).catch((err) => { 2684 console.log(`setVoiceMailInfo failed, promise: err->${JSON.stringify(err)}`); 2685}); 2686``` 2687 2688## sim.getSimTelephoneNumber<sup>8+</sup> 2689 2690getSimTelephoneNumber(slotId: number, callback: AsyncCallback<string\>): void 2691 2692获取指定卡槽中SIM卡的MSISDN。使用callback异步回调。 2693 2694**系统接口:** 此接口为系统接口。 2695 2696**需要权限**:ohos.permission.GET_TELEPHONY_STATE 2697 2698**系统能力**:SystemCapability.Telephony.CoreService 2699 2700**参数:** 2701 2702| 参数名 | 类型 | 必填 | 说明 | 2703| -------- | ---------------------- | ---- | -------------------------------------- | 2704| slotId | number | 是 | 卡槽ID。<br/>- 0:卡槽1<br/>- 1:卡槽2 | 2705| callback | AsyncCallback<string\> | 是 | 回调函数。 | 2706 2707**错误码:** 2708 2709以下错误码的详细介绍请参见[ohos.telephony(电话子系统)错误码](../../reference/errorcodes/errorcode-telephony.md)错误码。 2710 2711| 错误码ID | 错误信息 | 2712| -------- | -------------------------------------------- | 2713| 201 | Permission denied. | 2714| 401 | Parameter error. | 2715| 8300001 | Invalid parameter value. | 2716| 8300002 | Operation failed. Cannot connect to service. | 2717| 8300003 | System internal error. | 2718| 8300004 | Do not have sim card. | 2719| 8300999 | Unknown error code. | 2720 2721**示例:** 2722 2723```js 2724sim.getSimTelephoneNumber(0, (err, data) => { 2725 console.log(`callback: err->${JSON.stringify(err)}, data->${JSON.stringify(data)}`); 2726}); 2727``` 2728 2729 2730## sim.getSimTelephoneNumber<sup>8+</sup> 2731 2732getSimTelephoneNumber(slotId: number): Promise<string\> 2733 2734获取指定卡槽中SIM卡的MSISDN。使用Promise异步回调。 2735 2736**系统接口:** 此接口为系统接口。 2737 2738**需要权限**:ohos.permission.GET_TELEPHONY_STATE 2739 2740**系统能力**:SystemCapability.Telephony.CoreService 2741 2742**参数:** 2743 2744| 参数名 | 类型 | 必填 | 说明 | 2745| ------ | ------ | ---- | -------------------------------------- | 2746| slotId | number | 是 | 卡槽ID。<br/>- 0:卡槽1<br/>- 1:卡槽2 | 2747 2748**返回值:** 2749 2750| 类型 | 说明 | 2751| ---------------- | -------------------------------------------- | 2752| Promise<string\> | 以Promise形式返回获取指定卡槽SIM卡的MSISDN。 | 2753 2754**错误码:** 2755 2756以下错误码的详细介绍请参见[ohos.telephony(电话子系统)错误码](../../reference/errorcodes/errorcode-telephony.md)错误码。 2757 2758| 错误码ID | 错误信息 | 2759| -------- | -------------------------------------------- | 2760| 201 | Permission denied. | 2761| 401 | Parameter error. | 2762| 8300001 | Invalid parameter value. | 2763| 8300002 | Operation failed. Cannot connect to service. | 2764| 8300003 | System internal error. | 2765| 8300004 | Do not have sim card. | 2766| 8300999 | Unknown error code. | 2767 2768**示例:** 2769 2770```js 2771let promise = sim.getSimTelephoneNumber(0); 2772promise.then(data => { 2773 console.log(`getSimTelephoneNumber success, promise: data->${JSON.stringify(data)}`); 2774}).catch(err => { 2775 console.log(`getSimTelephoneNumber failed, promise: err->${JSON.stringify(err)}`); 2776}); 2777``` 2778 2779## sim.getSimGid1<sup>7+</sup> 2780 2781getSimGid1(slotId: number, callback: AsyncCallback<string\>): void 2782 2783获取指定卡槽中SIM卡的组标识符级别1(GID1)。使用callback异步回调。 2784 2785**系统接口:** 此接口为系统接口。 2786 2787**需要权限**:ohos.permission.GET_TELEPHONY_STATE 2788 2789**系统能力**:SystemCapability.Telephony.CoreService 2790 2791**参数:** 2792 2793| 参数名 | 类型 | 必填 | 说明 | 2794| -------- | ----------------------- | ---- | -------------------------------------- | 2795| slotId | number | 是 | 卡槽ID。<br/>- 0:卡槽1<br/>- 1:卡槽2 | 2796| callback | AsyncCallback\<string\> | 是 | 回调函数。 | 2797 2798**错误码:** 2799 2800以下错误码的详细介绍请参见[ohos.telephony(电话子系统)错误码](../../reference/errorcodes/errorcode-telephony.md)错误码。 2801 2802| 错误码ID | 错误信息 | 2803| -------- | -------------------------------------------- | 2804| 201 | Permission denied. | 2805| 401 | Parameter error. | 2806| 8300001 | Invalid parameter value. | 2807| 8300002 | Operation failed. Cannot connect to service. | 2808| 8300003 | System internal error. | 2809| 8300004 | Do not have sim card. | 2810| 8300999 | Unknown error code. | 2811 2812**示例:** 2813 2814```js 2815sim.getSimGid1(0, (err, data) => { 2816 console.log(`callback: err->${JSON.stringify(err)}, data->${JSON.stringify(data)}`); 2817}); 2818``` 2819 2820 2821## sim.getSimGid1<sup>7+</sup> 2822 2823getSimGid1(slotId: number): Promise<string\> 2824 2825获取指定卡槽中SIM卡的组标识符级别1(GID1)。使用Promise异步回调。 2826 2827**系统接口:** 此接口为系统接口。 2828 2829**需要权限**:ohos.permission.GET_TELEPHONY_STATE 2830 2831**系统能力**:SystemCapability.Telephony.CoreService 2832 2833**参数:** 2834 2835| 参数名 | 类型 | 必填 | 说明 | 2836| ------ | ------ | ---- | -------------------------------------- | 2837| slotId | number | 是 | 卡槽ID。<br/>- 0:卡槽1<br/>- 1:卡槽2 | 2838 2839**返回值:** 2840 2841| 类型 | 说明 | 2842| ---------------- | ------------------------------------------------- | 2843| Promise<string\> | 以Promise形式返回获取指定卡槽SIM卡的标识符级别1。 | 2844 2845**错误码:** 2846 2847以下错误码的详细介绍请参见[ohos.telephony(电话子系统)错误码](../../reference/errorcodes/errorcode-telephony.md)错误码。 2848 2849| 错误码ID | 错误信息 | 2850| -------- | -------------------------------------------- | 2851| 201 | Permission denied. | 2852| 401 | Parameter error. | 2853| 8300001 | Invalid parameter value. | 2854| 8300002 | Operation failed. Cannot connect to service. | 2855| 8300003 | System internal error. | 2856| 8300999 | Unknown error code. | 2857 2858**示例:** 2859 2860```js 2861let promise = sim.getSimGid1(0); 2862promise.then(data => { 2863 console.log(`getSimGid1 success, promise: data->${JSON.stringify(data)}`); 2864}).catch(err => { 2865 console.log(`getSimGid1 failed, promise: err->${JSON.stringify(err)}`); 2866}); 2867``` 2868 2869## sim.getIMSI 2870 2871getIMSI(slotId: number, callback: AsyncCallback<string\>): void 2872 2873获取国际移动用户识别码。使用callback异步回调。 2874 2875**系统接口:** 此接口为系统接口。 2876 2877**需要权限**:ohos.permission.GET_TELEPHONY_STATE 2878 2879**系统能力**:SystemCapability.Telephony.CoreService 2880 2881**参数:** 2882 2883| 参数名 | 类型 | 必填 | 说明 | 2884| -------- | ----------------------- | ---- | -------------------------------------- | 2885| slotId | number | 是 | 卡槽ID。<br/>- 0:卡槽1<br/>- 1:卡槽2 | 2886| callback | AsyncCallback\<string\> | 是 | 回调函数。 | 2887 2888**错误码:** 2889 2890以下错误码的详细介绍请参见[ohos.telephony(电话子系统)错误码](../../reference/errorcodes/errorcode-telephony.md)错误码。 2891 2892| 错误码ID | 错误信息 | 2893| -------- | -------------------------------------------- | 2894| 201 | Permission denied. | 2895| 401 | Parameter error. | 2896| 8300001 | Invalid parameter value. | 2897| 8300002 | Operation failed. Cannot connect to service. | 2898| 8300003 | System internal error. | 2899| 8300999 | Unknown error code. | 2900 2901**示例:** 2902 2903```js 2904sim.getIMSI(0, (err, data) => { 2905 console.log(`callback: err->${JSON.stringify(err)}, data->${JSON.stringify(data)}`); 2906}); 2907``` 2908 2909 2910## sim.getIMSI 2911 2912getIMSI(slotId: number): Promise<string\> 2913 2914获取国际移动用户识别码。使用Promise异步回调。 2915 2916**系统接口:** 此接口为系统接口。 2917 2918**需要权限**:ohos.permission.GET_TELEPHONY_STATE 2919 2920**系统能力**:SystemCapability.Telephony.CoreService 2921 2922**参数:** 2923 2924| 参数名 | 类型 | 必填 | 说明 | 2925| ------ | ------ | ---- | -------------------------------------- | 2926| slotId | number | 是 | 卡槽ID。<br/>- 0:卡槽1<br/>- 1:卡槽2 | 2927 2928**返回值:** 2929 2930| 类型 | 说明 | 2931| ---------------- | ------------------------------------------- | 2932| Promise<string\> | 以Promise形式返回获取的国际移动用户识别码。 | 2933 2934**错误码:** 2935 2936以下错误码的详细介绍请参见[ohos.telephony(电话子系统)错误码](../../reference/errorcodes/errorcode-telephony.md)错误码。 2937 2938| 错误码ID | 错误信息 | 2939| -------- | -------------------------------------------- | 2940| 201 | Permission denied. | 2941| 401 | Parameter error. | 2942| 8300001 | Invalid parameter value. | 2943| 8300002 | Operation failed. Cannot connect to service. | 2944| 8300003 | System internal error. | 2945| 8300004 | Do not have sim card. | 2946| 8300999 | Unknown error code. | 2947 2948**示例:** 2949 2950```js 2951let promise = sim.getIMSI(0); 2952promise.then(data => { 2953 console.log(`getIMSI success, promise: data->${JSON.stringify(data)}`); 2954}).catch(err => { 2955 console.log(`getIMSI failed, promise: err->${JSON.stringify(err)}`); 2956}); 2957``` 2958 2959## sim.getOperatorConfigs<sup>8+</sup> 2960 2961getOperatorConfigs(slotId: number, callback: AsyncCallback<Array<OperatorConfig\>>): void 2962 2963获取运营商配置。使用callback异步回调。 2964 2965**系统接口:** 此接口为系统接口。 2966 2967**需要权限**:ohos.permission.GET_TELEPHONY_STATE 2968 2969**系统能力**:SystemCapability.Telephony.CoreService 2970 2971**参数:** 2972 2973| 参数名 | 类型 | 必填 | 说明 | 2974| -------- | --------------------------------------------------------- | ---- | -------------------------------------- | 2975| slotId | number | 是 | 卡槽ID。<br/>- 0:卡槽1<br/>- 1:卡槽2 | 2976| callback | AsyncCallback<Array<[OperatorConfig](#operatorconfig8)\>> | 是 | 回调函数。 | 2977 2978**错误码:** 2979 2980以下错误码的详细介绍请参见[ohos.telephony(电话子系统)错误码](../../reference/errorcodes/errorcode-telephony.md)错误码。 2981 2982| 错误码ID | 错误信息 | 2983| -------- | -------------------------------------------- | 2984| 201 | Permission denied. | 2985| 401 | Parameter error. | 2986| 8300001 | Invalid parameter value. | 2987| 8300002 | Operation failed. Cannot connect to service. | 2988| 8300003 | System internal error. | 2989| 8300004 | Do not have sim card. | 2990| 8300999 | Unknown error code. | 2991 2992**示例:** 2993 2994```js 2995sim.getOperatorConfigs(0, (err, data) => { 2996 console.log(`callback: err->${JSON.stringify(err)}, data->${JSON.stringify(data)}`); 2997}); 2998``` 2999 3000 3001## sim.getOperatorConfigs<sup>8+</sup> 3002 3003getOperatorConfigs(slotId: number): Promise<Array<OperatorConfig\>> 3004 3005获取运营商配置。使用Promise异步回调。 3006 3007**系统接口:** 此接口为系统接口。 3008 3009**需要权限**:ohos.permission.GET_TELEPHONY_STATE 3010 3011**系统能力**:SystemCapability.Telephony.CoreService 3012 3013**参数:** 3014 3015| 参数名 | 类型 | 必填 | 说明 | 3016| ------ | ------ | ---- | -------------------------------------- | 3017| slotId | number | 是 | 卡槽ID。<br/>- 0:卡槽1<br/>- 1:卡槽2 | 3018 3019**返回值:** 3020 3021| 类型 | 说明 | 3022| --------------------------------------------------- | ----------------------------- | 3023| Promise<Array<[OperatorConfig](#operatorconfig8)\>> | 以Promise形式返回运营商配置。 | 3024 3025**错误码:** 3026 3027以下错误码的详细介绍请参见[ohos.telephony(电话子系统)错误码](../../reference/errorcodes/errorcode-telephony.md)错误码。 3028 3029| 错误码ID | 错误信息 | 3030| -------- | -------------------------------------------- | 3031| 201 | Permission denied. | 3032| 401 | Parameter error. | 3033| 8300001 | Invalid parameter value. | 3034| 8300002 | Operation failed. Cannot connect to service. | 3035| 8300003 | System internal error. | 3036| 8300004 | Do not have sim card. | 3037| 8300999 | Unknown error code. | 3038 3039**示例:** 3040 3041```js 3042let promise = sim.getOperatorConfigs(0); 3043promise.then(data => { 3044 console.log(`getOperatorConfigs success, promise: data->${JSON.stringify(data)}`); 3045}).catch(err => { 3046 console.log(`getOperatorConfigs failed, promise: err->${JSON.stringify(err)}`); 3047}); 3048``` 3049 3050## sim.queryIccDiallingNumbers<sup>8+</sup> 3051 3052queryIccDiallingNumbers(slotId: number, type: ContactType, callback: AsyncCallback<Array<DiallingNumbersInfo\>>): void 3053 3054查询SIM卡联系人号码。使用callback异步回调。 3055 3056**系统接口:** 此接口为系统接口。 3057 3058**需要权限**:ohos.permission.READ_CONTACTS 3059 3060**系统能力**:SystemCapability.Telephony.CoreService 3061 3062**参数:** 3063 3064| 参数名 | 类型 | 必填 | 说明 | 3065| -------- | ------------------------------------------------------------ | ---- | ---------------------------------------------------------- | 3066| slotId | number | 是 | 卡槽ID。<br/>- 0:卡槽1<br/>- 1:卡槽2 | 3067| type | [ContactType](#contacttype8) | 是 | 联系人类型。<br/>- 1 : GENERAL_CONTACT<br/>- 2 : FIXED_DIALING | 3068| callback | AsyncCallback<Array<[DiallingNumbersInfo](#diallingnumbersinfo8)\>> | 是 | 回调函数。 | 3069 3070**错误码:** 3071 3072以下错误码的详细介绍请参见[ohos.telephony(电话子系统)错误码](../../reference/errorcodes/errorcode-telephony.md)错误码。 3073 3074| 错误码ID | 错误信息 | 3075| -------- | -------------------------------------------- | 3076| 201 | Permission denied. | 3077| 401 | Parameter error. | 3078| 8300001 | Invalid parameter value. | 3079| 8300002 | Operation failed. Cannot connect to service. | 3080| 8300003 | System internal error. | 3081| 8300004 | Do not have sim card. | 3082| 8300999 | Unknown error code. | 3083| 8301002 | SIM card operation error. | 3084 3085**示例:** 3086 3087```js 3088sim.queryIccDiallingNumbers(0, 1, (err, data) => { 3089 console.log(`callback: err->${JSON.stringify(err)}, data->${JSON.stringify(data)}`); 3090}); 3091``` 3092 3093 3094## sim.queryIccDiallingNumbers<sup>8+</sup> 3095 3096queryIccDiallingNumbers(slotId: number, type: ContactType): Promise<Array<DiallingNumbersInfo\>> 3097 3098查询SIM卡联系人号码。使用Promise异步回调。 3099 3100**系统接口:** 此接口为系统接口。 3101 3102**需要权限**:ohos.permission.READ_CONTACTS 3103 3104**系统能力**:SystemCapability.Telephony.CoreService 3105 3106**参数:** 3107 3108| 参数名 | 类型 | 必填 | 说明 | 3109| ------ | ----------- | ---- | ---------------------------------------------------------- | 3110| slotId | number | 是 | 卡槽ID。<br/>- 0:卡槽1<br/>- 1:卡槽2 | 3111| type | [ContactType](#contacttype8) | 是 | 联系人类型。<br/>- 1 : GENERAL_CONTACT<br/>- 2 : FIXED_DIALING | 3112 3113**返回值:** 3114 3115| 类型 | 说明 | 3116| ------------------------------------------------------------ | ------------------------------ | 3117| Promise<Array<[DiallingNumbersInfo](#diallingnumbersinfo8)\>> | 以Promise形式返回Icc拨号号码。| 3118 3119**错误码:** 3120 3121以下错误码的详细介绍请参见[ohos.telephony(电话子系统)错误码](../../reference/errorcodes/errorcode-telephony.md)错误码。 3122 3123| 错误码ID | 错误信息 | 3124| -------- | -------------------------------------------- | 3125| 201 | Permission denied. | 3126| 401 | Parameter error. | 3127| 8300001 | Invalid parameter value. | 3128| 8300002 | Operation failed. Cannot connect to service. | 3129| 8300003 | System internal error. | 3130| 8300004 | Do not have sim card. | 3131| 8300999 | Unknown error code. | 3132| 8301002 | SIM card operation error. | 3133 3134**示例:** 3135 3136```js 3137let promise = sim.queryIccDiallingNumbers(0, 1); 3138promise.then(data => { 3139 console.log(`queryIccDiallingNumbers success, promise: data->${JSON.stringify(data)}`); 3140}).catch(err => { 3141 console.log(`queryIccDiallingNumbers failed, promise: err->${JSON.stringify(err)}`); 3142}); 3143``` 3144 3145## sim.addIccDiallingNumbers<sup>8+</sup> 3146 3147addIccDiallingNumbers(slotId: number, type: ContactType, diallingNumbers: DiallingNumbersInfo, callback: AsyncCallback<void\>): void 3148 3149添加SIM卡联系人号码。使用callback异步回调。 3150 3151**系统接口:** 此接口为系统接口。 3152 3153**需要权限**:ohos.permission.WRITE_CONTACTS 3154 3155**系统能力**:SystemCapability.Telephony.CoreService 3156 3157**参数:** 3158 3159| 参数名 | 类型 | 必填 | 说明 | 3160| --------------- | -------------------------------------------- | ---- | ---------------------------------------------------------- | 3161| slotId | number | 是 | 卡槽ID。<br/>- 0:卡槽1<br/>- 1:卡槽2 | 3162| type | [ContactType](#contacttype8) | 是 | 联系人类型。<br/>- 1 : GENERAL_CONTACT<br/>- 2 : FIXED_DIALING | 3163| diallingNumbers | [DiallingNumbersInfo](#diallingnumbersinfo8) | 是 | 拨号号码信息。 | 3164| callback | AsyncCallback<void\> | 是 | 回调函数。 | 3165 3166**错误码:** 3167 3168以下错误码的详细介绍请参见[ohos.telephony(电话子系统)错误码](../../reference/errorcodes/errorcode-telephony.md)错误码。 3169 3170| 错误码ID | 错误信息 | 3171| -------- | -------------------------------------------- | 3172| 201 | Permission denied. | 3173| 401 | Parameter error. | 3174| 8300001 | Invalid parameter value. | 3175| 8300002 | Operation failed. Cannot connect to service. | 3176| 8300003 | System internal error. | 3177| 8300004 | Do not have sim card. | 3178| 8300999 | Unknown error code. | 3179| 8301002 | SIM card operation error. | 3180 3181**示例:** 3182 3183```js 3184let diallingNumbersInof = { 3185 alphaTag: "alpha", 3186 number: "138xxxxxxxx", 3187 pin2: "1234" 3188}; 3189sim.addIccDiallingNumbers(0, sim.ContactType.GENERAL_CONTACT, diallingNumbersInof, (err) => { 3190 console.log(`callback: err->${JSON.stringify(err)}`); 3191}); 3192``` 3193 3194 3195## sim.addIccDiallingNumbers<sup>8+</sup> 3196 3197addIccDiallingNumbers(slotId: number, type: ContactType, diallingNumbers: DiallingNumbersInfo): Promise<void\> 3198 3199添加SIM卡联系人号码。使用Promise异步回调。 3200 3201**系统接口:** 此接口为系统接口。 3202 3203**需要权限**:ohos.permission.WRITE_CONTACTS 3204 3205**系统能力**:SystemCapability.Telephony.CoreService 3206 3207**参数:** 3208 3209| 参数名 | 类型 | 必填 | 说明 | 3210| --------------- | -------------------------------------------- | ---- | ---------------------------------------------------------- | 3211| slotId | number | 是 | 卡槽ID。<br/>- 0:卡槽1<br/>- 1:卡槽2 | 3212| type | [ContactType](#contacttype8) | 是 | 联系人类型。<br/>- 1 : GENERAL_CONTACT<br/>- 2 : FIXED_DIALING | 3213| diallingNumbers | [DiallingNumbersInfo](#diallingnumbersinfo8) | 是 | 拨号号码信息。 | 3214 3215**返回值:** 3216 3217| 类型 | 说明 | 3218| -------------- | --------------------------- | 3219| Promise<void\> | 以Promise形式返回添加结果。 | 3220 3221**错误码:** 3222 3223以下错误码的详细介绍请参见[ohos.telephony(电话子系统)错误码](../../reference/errorcodes/errorcode-telephony.md)错误码。 3224 3225| 错误码ID | 错误信息 | 3226| -------- | -------------------------------------------- | 3227| 201 | Permission denied. | 3228| 401 | Parameter error. | 3229| 8300001 | Invalid parameter value. | 3230| 8300002 | Operation failed. Cannot connect to service. | 3231| 8300003 | System internal error. | 3232| 8300004 | Do not have sim card. | 3233| 8300999 | Unknown error code. | 3234| 8301002 | SIM card operation error. | 3235 3236**示例:** 3237 3238```js 3239let diallingNumbersInof = { 3240 alphaTag: "alpha", 3241 number: "138xxxxxxxx" 3242}; 3243let promise = sim.addIccDiallingNumbers(0, sim.ContactType.GENERAL_CONTACT, diallingNumbersInof); 3244promise.then(() => { 3245 console.log(`addIccDiallingNumbers success.`); 3246}).catch((err) => { 3247 console.log(`addIccDiallingNumbers failed, promise: err->${JSON.stringify(err)}`); 3248}); 3249``` 3250 3251## sim.delIccDiallingNumbers<sup>8+</sup> 3252 3253delIccDiallingNumbers(slotId: number, type: ContactType, diallingNumbers: DiallingNumbersInfo, callback: AsyncCallback<void\>): void 3254 3255删除SIM卡联系人号码。使用callback异步回调。 3256 3257**系统接口:** 此接口为系统接口。 3258 3259**需要权限**:ohos.permission.WRITE_CONTACTS 3260 3261**系统能力**:SystemCapability.Telephony.CoreService 3262 3263**参数:** 3264 3265| 参数名 | 类型 | 必填 | 说明 | 3266| --------------- | -------------------------------------------- | ---- | ---------------------------------------------------------- | 3267| slotId | number | 是 | 卡槽ID。<br/>- 0:卡槽1<br/>- 1:卡槽2 | 3268| type | [ContactType](#contacttype8) | 是 | 联系人类型。<br/>- 1 : GENERAL_CONTACT<br/>- 2 : FIXED_DIALING | 3269| diallingNumbers | [DiallingNumbersInfo](#diallingnumbersinfo8) | 是 | 拨号号码信息。 | 3270| callback | AsyncCallback<void\> | 是 | 回调函数。 | 3271 3272**错误码:** 3273 3274以下错误码的详细介绍请参见[ohos.telephony(电话子系统)错误码](../../reference/errorcodes/errorcode-telephony.md)错误码。 3275 3276| 错误码ID | 错误信息 | 3277| -------- | -------------------------------------------- | 3278| 201 | Permission denied. | 3279| 401 | Parameter error. | 3280| 8300001 | Invalid parameter value. | 3281| 8300002 | Operation failed. Cannot connect to service. | 3282| 8300003 | System internal error. | 3283| 8300004 | Do not have sim card. | 3284| 8300999 | Unknown error code. | 3285| 8301002 | SIM card operation error. | 3286 3287**示例:** 3288 3289```js 3290let diallingNumbersInof = { 3291 alphaTag: "alpha", 3292 number: "138xxxxxxxx", 3293 recordNumber: 123, 3294 pin2: "1234" 3295}; 3296sim.delIccDiallingNumbers(0, sim.ContactType.GENERAL_CONTACT, diallingNumbersInof, (err) => { 3297 console.log(`callback: err->${JSON.stringify(err)}`); 3298}); 3299``` 3300 3301 3302## sim.delIccDiallingNumbers<sup>8+</sup> 3303 3304delIccDiallingNumbers(slotId: number, type: ContactType, diallingNumbers: DiallingNumbersInfo): Promise<void\> 3305 3306删除SIM卡联系人号码。使用Promise异步回调。 3307 3308**系统接口:** 此接口为系统接口。 3309 3310**需要权限**:ohos.permission.WRITE_CONTACTS 3311 3312**系统能力**:SystemCapability.Telephony.CoreService 3313 3314**参数:** 3315 3316| 参数名 | 类型 | 必填 | 说明 | 3317| --------------- | -------------------------------------------- | ---- | ---------------------------------------------------------- | 3318| slotId | number | 是 | 卡槽ID。<br/>- 0:卡槽1<br/>- 1:卡槽2 | 3319| type | [ContactType](#contacttype8) | 是 | 联系人类型。<br/>- 1 : GENERAL_CONTACT<br/>- 2 : FIXED_DIALING | 3320| diallingNumbers | [DiallingNumbersInfo](#diallingnumbersinfo8) | 是 | 拨号号码信息。 | 3321 3322**返回值:** 3323 3324| 类型 | 说明 | 3325| -------------- | --------------------------- | 3326| Promise<void\> | 以Promise形式返回删除结果。 | 3327 3328**错误码:** 3329 3330以下错误码的详细介绍请参见[ohos.telephony(电话子系统)错误码](../../reference/errorcodes/errorcode-telephony.md)错误码。 3331 3332| 错误码ID | 错误信息 | 3333| -------- | -------------------------------------------- | 3334| 201 | Permission denied. | 3335| 401 | Parameter error. | 3336| 8300001 | Invalid parameter value. | 3337| 8300002 | Operation failed. Cannot connect to service. | 3338| 8300003 | System internal error. | 3339| 8300004 | Do not have sim card. | 3340| 8300999 | Unknown error code. | 3341| 8301002 | SIM card operation error. | 3342 3343**示例:** 3344 3345```js 3346let diallingNumbersInof = { 3347 alphaTag: "alpha", 3348 number: "138xxxxxxxx" 3349}; 3350let promise = sim.delIccDiallingNumbers(0, sim.ContactType.GENERAL_CONTACT, diallingNumbersInof); 3351promise.then(() => { 3352 console.log(`delIccDiallingNumbers success.`); 3353}).catch((err) => { 3354 console.log(`delIccDiallingNumbers failed, promise: err->${JSON.stringify(err)}`); 3355}); 3356``` 3357 3358## sim.updateIccDiallingNumbers<sup>8+</sup> 3359 3360updateIccDiallingNumbers(slotId: number, type: ContactType, diallingNumbers: DiallingNumbersInfo, callback: AsyncCallback<void\>): void 3361 3362更新SIM卡联系人号码。使用callback异步回调。 3363 3364**系统接口:** 此接口为系统接口。 3365 3366**需要权限**:ohos.permission.WRITE_CONTACTS 3367 3368**系统能力**:SystemCapability.Telephony.CoreService 3369 3370**参数:** 3371 3372| 参数名 | 类型 | 必填 | 说明 | 3373| --------------- | -------------------------------------------- | ---- | ---------------------------------------------------------- | 3374| slotId | number | 是 | 卡槽ID。<br/>- 0:卡槽1<br/>- 1:卡槽2 | 3375| type | [ContactType](#contacttype8) | 是 | 联系人类型。<br/>- 1 : GENERAL_CONTACT<br/>- 2 : FIXED_DIALING | 3376| diallingNumbers | [DiallingNumbersInfo](#diallingnumbersinfo8) | 是 | 拨号号码信息。 | 3377| callback | AsyncCallback<void\> | 是 | 回调函数。 | 3378 3379**错误码:** 3380 3381以下错误码的详细介绍请参见[ohos.telephony(电话子系统)错误码](../../reference/errorcodes/errorcode-telephony.md)错误码。 3382 3383| 错误码ID | 错误信息 | 3384| -------- | -------------------------------------------- | 3385| 201 | Permission denied. | 3386| 401 | Parameter error. | 3387| 8300001 | Invalid parameter value. | 3388| 8300002 | Operation failed. Cannot connect to service. | 3389| 8300003 | System internal error. | 3390| 8300004 | Do not have sim card. | 3391| 8300999 | Unknown error code. | 3392| 8301002 | SIM card operation error. | 3393 3394**示例:** 3395 3396```js 3397let diallingNumbersInof = { 3398 alphaTag: "alpha", 3399 number: "138xxxxxxxx", 3400 recordNumber: 123, 3401 pin2: "1234" 3402}; 3403sim.updateIccDiallingNumbers(0, sim.ContactType.GENERAL_CONTACT, diallingNumbersInof, (err) => { 3404 console.log(`callback: err->${JSON.stringify(err)}`); 3405}); 3406``` 3407 3408 3409## sim.updateIccDiallingNumbers<sup>8+</sup> 3410 3411updateIccDiallingNumbers(slotId: number, type: ContactType, diallingNumbers: DiallingNumbersInfo): Promise<void\> 3412 3413更新SIM卡联系人号码。使用Promise异步回调。 3414 3415**系统接口:** 此接口为系统接口。 3416 3417**需要权限**:ohos.permission.WRITE_CONTACTS 3418 3419**系统能力**:SystemCapability.Telephony.CoreService 3420 3421**参数:** 3422 3423| 参数名 | 类型 | 必填 | 说明 | 3424| --------------- | -------------------------------------------- | ---- | ---------------------------------------------------------- | 3425| slotId | number | 是 | 卡槽ID。<br/>- 0:卡槽1<br/>- 1:卡槽2 | 3426| type | [ContactType](#contacttype8) | 是 | 联系人类型。<br/>- 1 : GENERAL_CONTACT<br/>- 2 : FIXED_DIALING | 3427| diallingNumbers | [DiallingNumbersInfo](#diallingnumbersinfo8) | 是 | 拨号号码信息。 | 3428 3429**返回值:** 3430 3431| 类型 | 说明 | 3432| -------------- | ----------------------------- | 3433| Promise<void\> | 以Promise形式返回更新的结果。 | 3434 3435**错误码:** 3436 3437以下错误码的详细介绍请参见[ohos.telephony(电话子系统)错误码](../../reference/errorcodes/errorcode-telephony.md)错误码。 3438 3439| 错误码ID | 错误信息 | 3440| -------- | -------------------------------------------- | 3441| 201 | Permission denied. | 3442| 401 | Parameter error. | 3443| 8300001 | Invalid parameter value. | 3444| 8300002 | Operation failed. Cannot connect to service. | 3445| 8300003 | System internal error. | 3446| 8300004 | Do not have sim card. | 3447| 8300999 | Unknown error code. | 3448| 8301002 | SIM card operation error. | 3449 3450**示例:** 3451 3452```js 3453let diallingNumbersInof = { 3454 alphaTag: "alpha", 3455 number: "138xxxxxxxx", 3456 recordNumber: 123 3457}; 3458let promise = sim.updateIccDiallingNumbers(0, sim.ContactType.GENERAL_CONTACT, diallingNumbersInof); 3459promise.then(() => { 3460 console.log(`updateIccDiallingNumbers success.`); 3461}).catch((err) => { 3462 console.log(`updateIccDiallingNumbers failed, promise: err->${JSON.stringify(err)}`); 3463}); 3464``` 3465 3466## sim.sendEnvelopeCmd<sup>8+</sup> 3467 3468sendEnvelopeCmd(slotId: number, cmd: string, callback: AsyncCallback<void\>): void 3469 3470发送信封命令。使用callback异步回调。 3471 3472**系统接口:** 此接口为系统接口。 3473 3474**需要权限**:ohos.permission.SET_TELEPHONY_STATE 3475 3476**系统能力**:SystemCapability.Telephony.CoreService 3477 3478**参数:** 3479 3480| 参数名 | 类型 | 必填 | 说明 | 3481| -------- | -------------------- | ---- | -------------------------------------- | 3482| slotId | number | 是 | 卡槽ID。<br/>- 0:卡槽1<br/>- 1:卡槽2 | 3483| cmd | string | 是 | 命令。 | 3484| callback | AsyncCallback<void\> | 是 | 回调函数。 | 3485 3486**错误码:** 3487 3488以下错误码的详细介绍请参见[ohos.telephony(电话子系统)错误码](../../reference/errorcodes/errorcode-telephony.md)错误码。 3489 3490| 错误码ID | 错误信息 | 3491| -------- | -------------------------------------------- | 3492| 201 | Permission denied. | 3493| 401 | Parameter error. | 3494| 8300001 | Invalid parameter value. | 3495| 8300002 | Operation failed. Cannot connect to service. | 3496| 8300003 | System internal error. | 3497| 8300004 | Do not have sim card. | 3498| 8300999 | Unknown error code. | 3499 3500**示例:** 3501 3502```js 3503sim.sendEnvelopeCmd(0, "ls", (err) => { 3504 console.log(`callback: err->${JSON.stringify(err)}`); 3505}); 3506``` 3507 3508 3509## sim.sendEnvelopeCmd<sup>8+</sup> 3510 3511sendEnvelopeCmd(slotId: number, cmd: string): Promise<void\> 3512 3513发送信封命令。使用Promise异步回调。 3514 3515**系统接口:** 此接口为系统接口。 3516 3517**需要权限**:ohos.permission.SET_TELEPHONY_STATE 3518 3519**系统能力**:SystemCapability.Telephony.CoreService 3520 3521**参数:** 3522 3523| 参数名 | 类型 | 必填 | 说明 | 3524| ------ | ------ | ---- | -------------------------------------- | 3525| slotId | number | 是 | 卡槽ID。<br/>- 0:卡槽1<br/>- 1:卡槽2 | 3526| cmd | string | 是 | 命令。 | 3527 3528**返回值:** 3529 3530| 类型 | 说明 | 3531| -------------- | --------------------------- | 3532| Promise<void\> | 以Promise形式返回发送结果。 | 3533 3534**错误码:** 3535 3536以下错误码的详细介绍请参见[ohos.telephony(电话子系统)错误码](../../reference/errorcodes/errorcode-telephony.md)错误码。 3537 3538| 错误码ID | 错误信息 | 3539| -------- | -------------------------------------------- | 3540| 201 | Permission denied. | 3541| 401 | Parameter error. | 3542| 8300001 | Invalid parameter value. | 3543| 8300002 | Operation failed. Cannot connect to service. | 3544| 8300003 | System internal error. | 3545| 8300004 | Do not have sim card. | 3546| 8300999 | Unknown error code. | 3547 3548**示例:** 3549 3550```js 3551let promise = sim.sendEnvelopeCmd(0, "ls"); 3552promise.then(() => { 3553 console.log(`sendEnvelopeCmd success.`); 3554}).catch((err) => { 3555 console.log(`sendEnvelopeCmd failed, promise: err->${JSON.stringify(err)}`); 3556}); 3557``` 3558 3559## sim.sendTerminalResponseCmd<sup>8+</sup> 3560 3561sendTerminalResponseCmd(slotId: number, cmd: string, callback: AsyncCallback<void\>): void 3562 3563发送终端响应命令。使用callback异步回调。 3564 3565**系统接口:** 此接口为系统接口。 3566 3567**需要权限**:ohos.permission.SET_TELEPHONY_STATE 3568 3569**系统能力**:SystemCapability.Telephony.CoreService 3570 3571**参数:** 3572 3573| 参数名 | 类型 | 必填 | 说明 | 3574| -------- | -------------------- | ---- | -------------------------------------- | 3575| slotId | number | 是 | 卡槽ID。<br/>- 0:卡槽1<br/>- 1:卡槽2 | 3576| cmd | string | 是 | 命令。 | 3577| callback | AsyncCallback<void\> | 是 | 回调函数。 | 3578 3579**错误码:** 3580 3581以下错误码的详细介绍请参见[ohos.telephony(电话子系统)错误码](../../reference/errorcodes/errorcode-telephony.md)错误码。 3582 3583| 错误码ID | 错误信息 | 3584| -------- | -------------------------------------------- | 3585| 201 | Permission denied. | 3586| 401 | Parameter error. | 3587| 8300001 | Invalid parameter value. | 3588| 8300002 | Operation failed. Cannot connect to service. | 3589| 8300003 | System internal error. | 3590| 8300999 | Unknown error code. | 3591 3592**示例:** 3593 3594```js 3595sim.sendTerminalResponseCmd(0, "ls", (err) => { 3596 console.log(`callback: err->${JSON.stringify(err)}`); 3597}); 3598``` 3599 3600 3601## sim.sendTerminalResponseCmd<sup>8+</sup> 3602 3603sendTerminalResponseCmd(slotId: number, cmd: string): Promise<void\> 3604 3605发送终端响应命令。使用Promise异步回调。 3606 3607**系统接口:** 此接口为系统接口。 3608 3609**需要权限**:ohos.permission.SET_TELEPHONY_STATE 3610 3611**系统能力**:SystemCapability.Telephony.CoreService 3612 3613**参数:** 3614 3615| 参数名 | 类型 | 必填 | 说明 | 3616| ------ | ------ | ---- | -------------------------------------- | 3617| slotId | number | 是 | 卡槽ID。<br/>- 0:卡槽1<br/>- 1:卡槽2 | 3618| cmd | string | 是 | 命令。 | 3619 3620**返回值:** 3621 3622| 类型 | 说明 | 3623| -------------- | --------------------------- | 3624| Promise<void\> | 以Promise形式返回发送结果。 | 3625 3626**错误码:** 3627 3628以下错误码的详细介绍请参见[ohos.telephony(电话子系统)错误码](../../reference/errorcodes/errorcode-telephony.md)错误码。 3629 3630| 错误码ID | 错误信息 | 3631| -------- | -------------------------------------------- | 3632| 201 | Permission denied. | 3633| 401 | Parameter error. | 3634| 8300001 | Invalid parameter value. | 3635| 8300002 | Operation failed. Cannot connect to service. | 3636| 8300003 | System internal error. | 3637| 8300999 | Unknown error code. | 3638 3639**示例:** 3640 3641```js 3642let promise = sim.sendTerminalResponseCmd(0, "ls"); 3643promise.then(() => { 3644 console.log(`sendTerminalResponseCmd success.`); 3645}).catch((err) => { 3646 console.log(`sendTerminalResponseCmd failed, promise: err->${JSON.stringify(err)}`); 3647}); 3648``` 3649 3650 3651## sim.unlockSimLock<sup>8+</sup> 3652 3653unlockSimLock(slotId: number, lockInfo: PersoLockInfo, callback: AsyncCallback<LockStatusResponse\>): void 3654 3655解锁SIM卡锁。使用callback异步回调。 3656 3657**系统接口:** 此接口为系统接口。 3658 3659**需要权限**:ohos.permission.SET_TELEPHONY_STATE 3660 3661**系统能力**:SystemCapability.Telephony.CoreService 3662 3663**参数:** 3664 3665| 参数名 | 类型 | 必填 | 说明 | 3666| -------- | ---------------------------------------------------------- | ---- | -------------------------------------- | 3667| slotId | number | 是 | 卡槽ID。<br/>- 0:卡槽1<br/>- 1:卡槽2 | 3668| lockInfo | [PersoLockInfo](#persolockinfo8) | 是 | 定制锁类型信息。 | 3669| callback | AsyncCallback<[LockStatusResponse](#lockstatusresponse7)\> | 是 | 回调函数。 | 3670 3671**错误码:** 3672 3673以下错误码的详细介绍请参见[ohos.telephony(电话子系统)错误码](../../reference/errorcodes/errorcode-telephony.md)错误码。 3674 3675| 错误码ID | 错误信息 | 3676| -------- | -------------------------------------------- | 3677| 201 | Permission denied. | 3678| 401 | Parameter error. | 3679| 8300001 | Invalid parameter value. | 3680| 8300002 | Operation failed. Cannot connect to service. | 3681| 8300003 | System internal error. | 3682| 8300004 | Do not have sim card. | 3683| 8300999 | Unknown error code. | 3684| 8301002 | SIM card operation error. | 3685 3686**示例:** 3687 3688```js 3689let persoLockInfo = { 3690 lockType: sim.PersoLockType.PN_PIN_LOCK, 3691 password: "1234" 3692}; 3693sim.unlockSimLock(0, persoLockInfo, (err, data) => { 3694 console.log(`callback: err->${JSON.stringify(err)}, data->${JSON.stringify(data)}`); 3695}); 3696``` 3697 3698 3699## sim.unlockSimLock<sup>8+</sup> 3700 3701unlockSimLock(slotId: number, lockInfo: PersoLockInfo): Promise<LockStatusResponse\> 3702 3703解锁SIM卡锁。使用Promise异步回调。 3704 3705**系统接口:** 此接口为系统接口。 3706 3707**需要权限**:ohos.permission.SET_TELEPHONY_STATE 3708 3709**系统能力**:SystemCapability.Telephony.CoreService 3710 3711**参数:** 3712 3713| 参数名 | 类型 | 必填 | 说明 | 3714| -------- | -------------------------------- | ---- | -------------------------------------- | 3715| slotId | number | 是 | 卡槽ID。<br/>- 0:卡槽1<br/>- 1:卡槽2 | 3716| lockInfo | [PersoLockInfo](#persolockinfo8) | 是 | 定制锁类型信息。 | 3717 3718**返回值:** 3719 3720| 类型 | 说明 | 3721| ---------------------------------------------------- | ------------------------- | 3722| Promise<[LockStatusResponse](#lockstatusresponse7)\> | 以Promise形式返回锁状态。 | 3723 3724**错误码:** 3725 3726以下错误码的详细介绍请参见[ohos.telephony(电话子系统)错误码](../../reference/errorcodes/errorcode-telephony.md)错误码。 3727 3728| 错误码ID | 错误信息 | 3729| -------- | -------------------------------------------- | 3730| 201 | Permission denied. | 3731| 401 | Parameter error. | 3732| 8300001 | Invalid parameter value. | 3733| 8300002 | Operation failed. Cannot connect to service. | 3734| 8300003 | System internal error. | 3735| 8300004 | Do not have sim card. | 3736| 8300999 | Unknown error code. | 3737| 8301002 | SIM card operation error. | 3738 3739**示例:** 3740 3741```js 3742let persoLockInfo = { 3743 lockType: sim.PersoLockType.PN_PIN_LOCK, 3744 password: "1234" 3745}; 3746let promise = sim.unlockSimLock(0, persoLockInfo); 3747promise.then(data => { 3748 console.log(`unlockSimLock success, promise: data->${JSON.stringify(data)}`); 3749}).catch(err => { 3750 console.log(`unlockSimLock failed, promise: err->${JSON.stringify(err)}`); 3751}); 3752``` 3753 3754## sim.getOpKey<sup>9+</sup> 3755 3756getOpKey(slotId: number, callback: AsyncCallback<string\>): void 3757 3758获取指定卡槽中SIM卡的opkey。使用callback异步回调。 3759 3760**系统能力**:SystemCapability.Telephony.CoreService 3761 3762**参数:** 3763 3764| 参数名 | 类型 | 必填 | 说明 | 3765| -------- | ---------------------- | ---- | -------------------------------------- | 3766| slotId | number | 是 | 卡槽ID。<br/>- 0:卡槽1<br/>- 1:卡槽2 | 3767| callback | AsyncCallback<string\> | 是 | 回调函数。 | 3768 3769**错误码:** 3770 3771以下错误码的详细介绍请参见[ohos.telephony(电话子系统)错误码](../../reference/errorcodes/errorcode-telephony.md)错误码。 3772 3773| 错误码ID | 错误信息 | 3774| -------- | -------------------------------------------- | 3775| 401 | Parameter error. | 3776| 801 | Capability not supported. | 3777| 8300001 | Invalid parameter value. | 3778| 8300002 | Operation failed. Cannot connect to service. | 3779| 8300003 | System internal error. | 3780| 8300999 | Unknown error code. | 3781 3782**示例:** 3783 3784```js 3785try { 3786 sim.getOpKey(0, (err, data) => { 3787 if (err) { 3788 console.log("getOpKey failed, err: " + JSON.stringify(err)); 3789 } else { 3790 console.log('getOpKey successfully, data: ' + JSON.stringify(data)); 3791 } 3792 }); 3793} catch (err) { 3794 console.log("getOpKey err: " + JSON.stringify(err)); 3795} 3796``` 3797 3798 3799## sim.getOpKey<sup>9+</sup> 3800 3801getOpKey(slotId: number): Promise<string\> 3802 3803获取指定卡槽中SIM卡的opkey。使用Promise异步回调。 3804 3805**系统能力**:SystemCapability.Telephony.CoreService 3806 3807**参数:** 3808 3809| 参数名 | 类型 | 必填 | 说明 | 3810| ------ | ------ | ---- | -------------------------------------- | 3811| slotId | number | 是 | 卡槽ID。<br/>- 0:卡槽1<br/>- 1:卡槽2 | 3812 3813**返回值:** 3814 3815| 类型 | 说明 | 3816| ---------------- | ----------------------------------------- | 3817| Promise<string\> | 以Promise形式返回指定卡槽中SIM卡的opkey。 | 3818 3819**错误码:** 3820 3821以下错误码的详细介绍请参见[ohos.telephony(电话子系统)错误码](../../reference/errorcodes/errorcode-telephony.md)错误码。 3822 3823| 错误码ID | 错误信息 | 3824| -------- | -------------------------------------------- | 3825| 401 | Parameter error. | 3826| 801 | Capability not supported. | 3827| 8300001 | Invalid parameter value. | 3828| 8300002 | Operation failed. Cannot connect to service. | 3829| 8300003 | System internal error. | 3830| 8300999 | Unknown error code. | 3831 3832**示例:** 3833 3834```js 3835try { 3836 let data = sim.getOpKey(0); 3837 console.log(`getOpKey success, promise: data->${JSON.stringify(data)}`); 3838} catch (error) { 3839 console.log(`getOpKey failed, promise: err->${JSON.stringify(error)}`); 3840} 3841``` 3842 3843## sim.getOpName<sup>9+</sup> 3844 3845getOpName(slotId: number, callback: AsyncCallback<string\>): void 3846 3847获取指定卡槽中SIM卡的OpName。使用callback异步回调。 3848 3849**系统能力**:SystemCapability.Telephony.CoreService 3850 3851**参数:** 3852 3853| 参数名 | 类型 | 必填 | 说明 | 3854| -------- | ---------------------- | ---- | -------------------------------------- | 3855| slotId | number | 是 | 卡槽ID。<br/>- 0:卡槽1<br/>- 1:卡槽2 | 3856| callback | AsyncCallback<string\> | 是 | 回调函数。 | 3857 3858**错误码:** 3859 3860以下错误码的详细介绍请参见[ohos.telephony(电话子系统)错误码](../../reference/errorcodes/errorcode-telephony.md)错误码。 3861 3862| 错误码ID | 错误信息 | 3863| -------- | -------------------------------------------- | 3864| 401 | Parameter error. | 3865| 801 | Capability not supported. | 3866| 8300001 | Invalid parameter value. | 3867| 8300002 | Operation failed. Cannot connect to service. | 3868| 8300003 | System internal error. | 3869| 8300004 | Do not have sim card. | 3870| 8300999 | Unknown error code. | 3871 3872**示例:** 3873 3874```js 3875try { 3876 sim.getOpName(0, (err, data) => { 3877 if (err) { 3878 console.log("getOpName failed, err: " + JSON.stringify(err)); 3879 } else { 3880 console.log('getOpName successfully, data: ' + JSON.stringify(data)); 3881 } 3882 }); 3883} catch (err) { 3884 console.log("getOpName err: " + JSON.stringify(err)); 3885} 3886``` 3887 3888 3889## sim.getOpName<sup>9+</sup> 3890 3891getOpName(slotId: number): Promise<string\> 3892 3893获取指定卡槽中SIM卡的OpName。使用Promise异步回调。 3894 3895**系统能力**:SystemCapability.Telephony.CoreService 3896 3897**参数:** 3898 3899| 参数名 | 类型 | 必填 | 说明 | 3900| ------ | ------ | ---- | -------------------------------------- | 3901| slotId | number | 是 | 卡槽ID。<br/>- 0:卡槽1<br/>- 1:卡槽2 | 3902 3903**返回值:** 3904 3905| 类型 | 说明 | 3906| ---------------- | ------------------------------------------ | 3907| Promise<string\> | 以Promise形式返回指定卡槽中SIM卡的OpName。 | 3908 3909**错误码:** 3910 3911以下错误码的详细介绍请参见[ohos.telephony(电话子系统)错误码](../../reference/errorcodes/errorcode-telephony.md)错误码。 3912 3913| 错误码ID | 错误信息 | 3914| -------- | -------------------------------------------- | 3915| 401 | Parameter error. | 3916| 801 | Capability not supported. | 3917| 8300001 | Invalid parameter value. | 3918| 8300002 | Operation failed. Cannot connect to service. | 3919| 8300003 | System internal error. | 3920| 8300004 | Do not have sim card. | 3921| 8300999 | Unknown error code. | 3922 3923**示例:** 3924 3925```js 3926try { 3927 let data = sim.getOpName(0); 3928 console.log(`getOpName success, promise: data->${JSON.stringify(data)}`); 3929} catch (error) { 3930 console.log(`getOpName failed, promise: err->${JSON.stringify(error)}`); 3931} 3932``` 3933 3934## SimState 3935 3936SIM卡状态。 3937 3938**系统能力**:SystemCapability.Telephony.CoreService 3939 3940| 名称 | 值 | 说明 | 3941| --------------------- | ---- | ---------------------------------------------------------- | 3942| SIM_STATE_UNKNOWN | 0 | SIM卡状态未知,即无法获取准确的状态。 | 3943| SIM_STATE_NOT_PRESENT | 1 | 表示SIM卡处于not present状态,即卡槽中没有插入SIM卡。 | 3944| SIM_STATE_LOCKED | 2 | 表示SIM卡处于locked状态,即SIM卡被PIN、PUK或网络锁锁定。 | 3945| SIM_STATE_NOT_READY | 3 | 表示SIM卡处于not ready状态,即SIM卡在位但无法正常工作。 | 3946| SIM_STATE_READY | 4 | 表示SIM卡处于ready状态,即SIM卡在位且工作正常。 | 3947| SIM_STATE_LOADED | 5 | 表示SIM卡处于loaded状态,即SIM卡在位且所有卡文件加载完毕。 | 3948 3949## CardType<sup>7+</sup> 3950 3951卡类型。 3952 3953**系统能力**:SystemCapability.Telephony.CoreService 3954 3955| 名称 | 值 | 说明 | 3956| ----- | ----- | ----- | 3957|UNKNOWN_CARD | -1 | 未知类型。 | 3958|SINGLE_MODE_SIM_CARD | 10 | 单SIM卡。 | 3959|SINGLE_MODE_USIM_CARD | 20 | 单USIM卡。 | 3960|SINGLE_MODE_RUIM_CARD | 30 | 单RUIM卡。 | 3961|DUAL_MODE_CG_CARD | 40 | 双卡模式C+G。 | 3962|CT_NATIONAL_ROAMING_CARD | 41 | 中国电信内部漫游卡。 | 3963|CU_DUAL_MODE_CARD | 42 | 中国联通双模卡。 | 3964|DUAL_MODE_TELECOM_LTE_CARD | 43 | 双模式电信LTE卡。 | 3965|DUAL_MODE_UG_CARD | 50 | 双模式UG卡。 | 3966|SINGLE_MODE_ISIM_CARD<sup>8+</sup> | 60 | 单一ISIM卡类型。 | 3967 3968## LockType<sup>8+</sup> 3969 3970锁类型。 3971 3972**系统接口:** 此接口为系统接口。 3973 3974**系统能力**:SystemCapability.Telephony.CoreService 3975 3976| 名称 | 值 | 说明 | 3977| -------- | ---- | ----------- | 3978| PIN_LOCK | 1 | SIM卡密码锁。 | 3979| FDN_LOCK | 2 | 固定拨号锁。 | 3980 3981## LockState<sup>8+</sup> 3982 3983锁状态。 3984 3985**系统接口:** 此接口为系统接口。 3986 3987**系统能力**:SystemCapability.Telephony.CoreService 3988 3989| 名称 | 值 | 说明 | 3990| -------- | ---- | ---------- | 3991| LOCK_OFF | 0 | 锁关闭状态 | 3992| LOCK_ON | 1 | 锁开启状态 | 3993 3994## PersoLockType<sup>8+</sup> 3995 3996定制锁类型。 3997 3998**系统接口:** 此接口为系统接口。 3999 4000**系统能力**:SystemCapability.Telephony.CoreService 4001 4002| 名称 | 值 | 说明 | 4003| ------------ | ---- | ------------------------------------------------ | 4004| PN_PIN_LOCK | 0 | 定制网络PIN锁(参照 3GPP TS 22.022 [33])。 | 4005| PN_PUK_LOCK | 1 | 定制网络PUk锁。 | 4006| PU_PIN_LOCK | 2 | 定制网络子集PIN锁(参照 3GPP TS 22.022 [33])。 | 4007| PU_PUK_LOCK | 3 | 定制网络子集PUK锁。 | 4008| PP_PIN_LOCK | 4 | 定制服务提供者PIN锁(参照 3GPP TS 22.022 [33])。 | 4009| PP_PUK_LOCK | 5 | 定制服务提供者PUK锁。 | 4010| PC_PIN_LOCK | 6 | 定制企业PIN锁(参照 3GPP TS 22.022 [33])。 | 4011| PC_PUK_LOCK | 7 | 定制企业Puk锁。 | 4012| SIM_PIN_LOCK | 8 | 定制SIM的PIN锁(参照 3GPP TS 22.022 [33])。 | 4013| SIM_PUK_LOCK | 9 | 定制SIM的PUK锁。 | 4014 4015## LockStatusResponse<sup>7+</sup> 4016 4017锁状态响应。 4018 4019**系统接口:** 此接口为系统接口。 4020 4021**系统能力**:SystemCapability.Telephony.CoreService 4022 4023| 名称 | 类型 | 必填 | 说明 | 4024| --------------- | ------ | ---- | --------------------- | 4025| result | number | 是 | 当前操作的结果。 | 4026| remain?: number | number | 否 | 剩余次数(可以为空)。| 4027 4028## LockInfo<sup>8+</sup> 4029 4030锁状态响应。 4031 4032**系统接口:** 此接口为系统接口。 4033 4034**系统能力**:SystemCapability.Telephony.CoreService 4035 4036| 名称 | 类型 | 必填 | 说明 | 4037| -------- | ------------------------ | ---- | -------- | 4038| lockType | [LockType](#locktype8) | 是 | 锁类型。 | 4039| password | string | 是 | 密码。 | 4040| state | [LockState](#lockstate8) | 是 | 锁状态。 | 4041 4042## PersoLockInfo<sup>8+</sup> 4043 4044锁状态响应。 4045 4046**系统接口:** 此接口为系统接口。 4047 4048**系统能力**:SystemCapability.Telephony.CoreService 4049 4050| 名称 | 类型 | 必填 | 说明 | 4051| -------- | -------------------------------- | ---- | ------------- | 4052| lockType | [PersoLockType](#persolocktype8) | 是 | 定制锁的类型。| 4053| password | string | 是 | 密码。 | 4054 4055## IccAccountInfo<sup>7+</sup> 4056 4057Icc账户信息。 4058 4059**系统接口:** 此接口为系统接口。 4060 4061**系统能力**:SystemCapability.Telephony.CoreService 4062 4063| 名称 | 类型 | 必填 | 说明 | 4064| ---------- | ------- | ---- | ---------------- | 4065| simId | number | 是 | SIM卡ID。 | 4066| slotIndex | number | 是 | 卡槽ID。 | 4067| isEsim | boolean | 是 | 标记卡是否是eSim。 | 4068| isActive | boolean | 是 | 卡是否被激活。 | 4069| iccId | string | 是 | ICCID号码。 | 4070| showName | string | 是 | SIM卡显示名称。 | 4071| showNumber | string | 是 | SIM卡显示号码。 | 4072 4073## OperatorConfig<sup>8+</sup> 4074 4075运营商配置。 4076 4077**系统接口:** 此接口为系统接口。 4078 4079**系统能力**:SystemCapability.Telephony.CoreService 4080 4081| 名称 | 类型 | 必填 | 说明 | 4082| ----- | ------ | ---- | ---- | 4083| field | string | 是 | 字段 | 4084| value | string | 是 | 值 | 4085 4086## DiallingNumbersInfo<sup>8+</sup> 4087 4088拨号号码信息。 4089 4090**系统接口:** 此接口为系统接口。 4091 4092**系统能力**:SystemCapability.Telephony.CoreService 4093 4094| 名称 | 类型 | 必填 | 说明 | 4095| ------------ | ------ | ---- | ---------- | 4096| alphaTag | string | 是 | 标签。 | 4097| number | string | 是 | 号码。 | 4098| recordNumber | number | 是 | 记录编号。 | 4099| pin2 | string | 是 | pin2密码。 | 4100 4101## ContactType<sup>8+</sup> 4102 4103联系人类型。 4104 4105**系统接口:** 此接口为系统接口。 4106 4107**系统能力**:SystemCapability.Telephony.CoreService 4108 4109| 名称 | 值 | 说明 | 4110| --------------- | ---- | ---------- | 4111| GENERAL_CONTACT | 1 | 通用联系人。 | 4112| FIXED_DIALING | 2 | 固定拨号。 | 4113 4114## OperatorConfigKey<sup>9+</sup> 4115 4116运营商配置键。 4117 4118**系统接口:** 此接口为系统接口。 4119 4120**系统能力**:SystemCapability.Telephony.CoreService 4121 4122| 名称 | 值 | 说明 | 4123| ------------------------------------------------------- | ------------------------------------------------------ | -------------------- | 4124| KEY_VOICE_MAIL_NUMBER_STRING | "voice_mail_number_string" | 语音邮件号码。 | 4125| KEY_IMS_SWITCH_ON_BY_DEFAULT_BOOL | "ims_switch_on_by_default_bool" | 固定拨号。 | 4126| KEY_HIDE_IMS_SWITCH_BOOL | "hide_ims_switch_bool" | 是否隐藏ims开关。 | 4127| KEY_VOLTE_SUPPORTED_BOOL | "volte_supported_bool" | 是否支持volte模式。 | 4128| KEY_NR_MODE_SUPPORTED_LIST_INT_ARRAY | "nr_mode_supported_list_int_array" | nr模式支持的列表。 | 4129| KEY_VOLTE_PROVISIONING_SUPPORTED_BOOL | "volte_provisioning_supported_bool" | 是否支持配置VOLTE。 | 4130| KEY_SS_OVER_UT_SUPPORTED_BOOL | "ss_over_ut_supported_bool" | SS服务是否支持UT。 | 4131| KEY_IMS_GBA_REQUIRED_BOOL | "ims_gba_required_bool" | IMS是否需要GBA。 | 4132| KEY_UT_PROVISIONING_SUPPORTED_BOOL | "ut_provisioning_supported_bool" | 是否支持UT配置。 | 4133| KEY_IMS_PREFER_FOR_EMERGENCY_BOOL | "ims_prefer_for_emergency_bool" | IMS紧急首选项。 | 4134| KEY_CALL_WAITING_SERVICE_CLASS_INT | "call_waiting_service_class_int" | 呼叫等待服务。 | 4135| KEY_CALL_TRANSFER_VISIBILITY_BOOL | "call_transfer_visibility_bool" | 呼叫转移可见性。 | 4136| KEY_IMS_CALL_DISCONNECT_REASON_INFO_MAPPING_STRING_ARRAY| "ims_call_disconnect_reason_info_mapping_string_array" | IMS呼叫结束原因列表。| 4137| KEY_FORCE_VOLTE_SWITCH_ON_BOOL | "force_volte_switch_on_bool" | 强制VOLTE开关。 | 4138| KEY_ENABLE_OPERATOR_NAME_CUST_BOOL | "enable_operator_name_cust_bool" | 是否显示运营商名称。 | 4139| KEY_OPERATOR_NAME_CUST_STRING | "operator_name_cust_string" | 运营商名称。 | 4140| KEY_SPN_DISPLAY_CONDITION_CUST_INT | "spn_display_condition_cust_int" | SPN显示规则。 | 4141| KEY_PNN_CUST_STRING_ARRAY | "pnn_cust_string_array" | PLMN名称。 | 4142| KEY_OPL_CUST_STRING_ARRAY | "opl_cust_string_array" | 运营商PLMN信息。 | 4143| KEY_EMERGENCY_CALL_STRING_ARRAY | "emergency_call_string_array" | 紧急呼叫列表。 | 4144