1# 网络搜索 2 3>**说明:** 4> 5>本模块首批接口从API version 6开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。 6 7 8## 导入模块 9 10``` 11import radio from '@ohos.telephony.radio' 12``` 13 14## radio.getRadioTech 15 16getRadioTech\(slotId: number, callback: AsyncCallback<\{psRadioTech: RadioTechnology, csRadioTech: RadioTechnology\}\>\): void 17 18获取当前接入的CS域和PS域无线接入技术,使用callback方式作为异步方法。 19 20**需要权限**:ohos.permission.GET_NETWORK_INFO 21 22**系统能力**:SystemCapability.Telephony.CoreService 23 24**参数:** 25 26| 参数名 | 类型 | 必填 | 说明 | 27| -------- | ------------------------------------------------------------ | ---- | -------------------------------------- | 28| slotId | number | 是 | 卡槽ID。<br/>- 0:卡槽1<br/>- 1:卡槽2 | 29| callback | AsyncCallback\<{psRadioTech: [RadioTechnology](#radiotechnology), csRadioTech:[RadioTechnology](#radiotechnology)}\> | 是 | 回调函数。 | 30 31**示例:** 32 33``` 34let slotId = 0; 35radio.getRadioTech(slotId, (err, data) =>{ 36 console.log(`callback: err->${JSON.stringify(err)}, data->${JSON.stringify(data)}`); 37}); 38``` 39 40 41## radio.getRadioTech 42 43getRadioTech\(slotId: number\): Promise<\{psRadioTech: RadioTechnology, csRadioTech: RadioTechnology\}\> 44 45获取当前接入的CS域和PS域无线接入技术,使用Promise方式作为异步方法。 46 47**需要权限**:ohos.permission.GET_NETWORK_INFO 48 49**系统能力**:SystemCapability.Telephony.CoreService 50 51**参数:** 52 53| 参数名 | 类型 | 必填 | 说明 | 54| ------ | ------ | ---- | -------------------------------------- | 55| slotId | number | 是 | 卡槽ID。<br/>- 0:卡槽1<br/>- 1:卡槽2 | 56 57**返回值:** 58 59| 类型 | 说明 | 60| ------------------------------------------------------------ | ----------------------------------------------- | 61| Promise<{psRadioTech: [RadioTechnology](#radiotechnology), csRadioTech: [RadioTechnology](#radiotechnology)}> | 以Promise形式返回获取当前接入的CS域和PS域技术。 | 62 63**示例:** 64 65``` 66let slotId = 0; 67let promise = radio.getRadioTech(slotId); 68promise.then(data => { 69 console.log(`getRadioTech success, data->${JSON.stringify(data)}`); 70}).catch(err => { 71 console.log(`getRadioTech fail, err->${JSON.stringify(err)}`); 72}); 73``` 74 75 76## radio.getNetworkState 77 78getNetworkState\(callback: AsyncCallback<NetworkState\>\): void 79 80获取网络状态,使用callback方式作为异步方法。 81 82**需要权限**:ohos.permission.GET_NETWORK_INFO 83 84**系统能力**:SystemCapability.Telephony.CoreService 85 86**参数:** 87 88| 参数名 | 类型 | 必填 | 说明 | 89| -------- | ---------------------------------------------- | ---- | ---------- | 90| callback | AsyncCallback\<[NetworkState](#networkstate)\> | 是 | 回调函数。 | 91 92**示例:** 93 94``` 95radio.getNetworkState((err, data) =>{ 96 console.log(`callback: err->${JSON.stringify(err)}, data->${JSON.stringify(data)}`); 97}); 98``` 99 100 101## radio.getNetworkState 102 103getNetworkState\(slotId: number, callback: AsyncCallback<NetworkState\>\): void 104 105获取网络状态,使用callback方式作为异步方法。 106 107**需要权限**:ohos.permission.GET_NETWORK_INFO 108 109**系统能力**:SystemCapability.Telephony.CoreService 110 111**参数:** 112 113| 参数名 | 类型 | 必填 | 说明 | 114| -------- | ---------------------------------------------- | ---- | -------------------------------------- | 115| slotId | number | 是 | 卡槽ID。<br/>- 0:卡槽1<br/>- 1:卡槽2 | 116| callback | AsyncCallback\<[NetworkState](#networkstate)\> | 是 | 回调函数。 | 117 118**示例:** 119 120``` 121let slotId = 0; 122radio.getNetworkState(slotId, (err, data) => { 123 console.log(`callback: err->${JSON.stringify(err)}, data->${JSON.stringify(data)}`); 124}); 125``` 126 127 128## radio.getNetworkState 129 130getNetworkState\(slotId?: number\): Promise<NetworkState\> 131 132获取网络状态,使用Promise方式作为异步方法。 133 134**需要权限**:ohos.permission.GET_NETWORK_INFO 135 136**系统能力**:SystemCapability.Telephony.CoreService 137 138**参数:** 139 140| 参数名 | 类型 | 必填 | 说明 | 141| ------ | ------ | ---- | -------------------------------------- | 142| slotId | number | 否 | 卡槽ID。<br/>- 0:卡槽1<br/>- 1:卡槽2 | 143 144**返回值:** 145 146| 类型 | 说明 | 147| ---------------------------------------- | --------------------------- | 148| Promise\<[NetworkState](#networkstate)\> | 以Promise形式返回网络状态。 | 149 150**示例:** 151 152``` 153let slotId = 0; 154let promise = radio.getNetworkState(slotId); 155promise.then(data => { 156 console.log(`getNetworkState success, promise: data->${JSON.stringify(data)}`); 157}).catch(err => { 158 console.log(`getNetworkState fail, promise: err->${JSON.stringify(err)}`); 159}); 160``` 161 162 163## radio.getNetworkSelectionMode 164 165getNetworkSelectionMode\(slotId: number, callback: AsyncCallback<NetworkSelectionMode\>\): void 166 167获取当前选网模式,使用callback方式作为异步方法。 168 169**系统能力**:SystemCapability.Telephony.CoreService 170 171**参数:** 172 173| 参数名 | 类型 | 必填 | 说明 | 174| -------- | ------------------------------------------------------------ | ---- | -------------------------------------- | 175| slotId | number | 是 | 卡槽ID。<br/>- 0:卡槽1<br/>- 1:卡槽2 | 176| callback | AsyncCallback\<[NetworkSelectionMode](#networkselectionmode)\> | 是 | 回调函数。 | 177 178**示例:** 179 180``` 181let slotId = 0; 182radio.getNetworkSelectionMode(slotId, (err, data) => { 183 console.log(`callback: err->${JSON.stringify(err)}, data->${JSON.stringify(data)}`); 184}); 185``` 186 187 188## radio.getNetworkSelectionMode 189 190getNetworkSelectionMode\(slotId: number\): Promise<NetworkSelectionMode\> 191 192获取当前选网模式,使用Promise方式作为异步方法。 193 194**系统能力**:SystemCapability.Telephony.CoreService 195 196**参数:** 197 198| 参数名 | 类型 | 必填 | 说明 | 199| ------ | ------ | ---- | -------------------------------------- | 200| slotId | number | 是 | 卡槽ID。<br/>- 0:卡槽1<br/>- 1:卡槽2 | 201 202**返回值:** 203 204| 类型 | 说明 | 205| -------------------------------------------------------- | ------------------------------- | 206| Promise\<[NetworkSelectionMode](#networkselectionmode)\> | 以Promise形式返回当前选网模式。 | 207 208**示例:** 209 210``` 211let slotId = 0; 212let promise = radio.getNetworkSelectionMode(slotId); 213promise.then(data => { 214 console.log(`getNetworkSelectionMode success, promise: data->${JSON.stringify(data)}`); 215}).catch(err => { 216 console.log(`getNetworkSelectionMode fail, promise: err->${JSON.stringify(err)}`); 217}); 218``` 219 220 221## radio.getISOCountryCodeForNetwork<sup>7+</sup> 222 223getISOCountryCodeForNetwork\(slotId: number, callback: AsyncCallback<string\>\): void 224 225获取注册网络所在国家的ISO国家码,使用callback方式作为异步方法。 226 227**系统能力**:SystemCapability.Telephony.CoreService 228 229**参数:** 230 231| 参数名 | 类型 | 必填 | 说明 | 232| -------- | ----------------------- | ---- | ---------------------------------------- | 233| slotId | number | 是 | 卡槽ID。<br/>- 0:卡槽1<br/>- 1:卡槽2 | 234| callback | AsyncCallback\<string\> | 是 | 回调函数。返回国家码,例如:CN(中国)。 | 235 236**示例:** 237 238``` 239let slotId = 0; 240radio.getISOCountryCodeForNetwork(slotId, (err, data) => { 241 console.log(`callback: err->${JSON.stringify(err)}, data->${JSON.stringify(data)}`); 242}); 243``` 244 245 246## radio.getISOCountryCodeForNetwork<sup>7+</sup> 247 248getISOCountryCodeForNetwork\(slotId: number\): Promise<string\> 249 250获取注册网络所在国家的ISO国家码,使用Promise方式作为异步方法。 251 252**系统能力**:SystemCapability.Telephony.CoreService 253 254**参数:** 255 256| 参数名 | 类型 | 必填 | 说明 | 257| ------ | ------ | ---- | -------------------------------------- | 258| slotId | number | 是 | 卡槽ID。<br/>- 0:卡槽1<br/>- 1:卡槽2 | 259 260**返回值:** 261 262| 类型 | 说明 | 263| ----------------- | ------------------------------------------------------------ | 264| Promise\<string\> | 以Promise形式返回注册网络所在国家的ISO国家码,例如CN(中国)。 | 265 266**示例:** 267 268``` 269let slotId = 0; 270let promise = radio.getISOCountryCodeForNetwork(slotId); 271promise.then(data => { 272 console.log(`getISOCountryCodeForNetwork success, promise: data->${JSON.stringify(data)}`); 273}).catch(err => { 274 console.log(`getISOCountryCodeForNetwork fail, promise: err->${JSON.stringify(err)}`); 275}); 276``` 277 278 279## radio.getPrimarySlotId<sup>7+</sup> 280 281getPrimarySlotId\(callback: AsyncCallback\<number\>\): void 282 283获取主卡所在卡槽的索引号,使用callback方式作为异步方法。 284 285**系统能力**:SystemCapability.Telephony.CoreService 286 287**参数:** 288 289| 参数名 | 类型 | 必填 | 说明 | 290| -------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ | 291| callback | AsyncCallback\<number\> | 是 | 回调函数 | 292 293**示例:** 294 295``` 296radio.getPrimarySlotId((err, data) => { 297 console.log(`callback: err->${JSON.stringify(err)}, data->${JSON.stringify(data)}`); 298}); 299``` 300 301 302## radio.getPrimarySlotId<sup>7+</sup> 303 304getPrimarySlotId\(\): Promise\<number\> 305 306获取主卡所在卡槽的索引号,使用Promise方式作为异步方法。 307 308**系统能力**:SystemCapability.Telephony.CoreService 309 310**返回值:** 311 312| 类型 | 说明 | 313| ----------------------------------------------------------- | ------------------------------------------------------------ | 314| Promise\<number\> | 以Promise形式返回获取设备主卡所在卡槽的索引号的结果。 | 315 316**示例:** 317 318``` 319let promise = radio.getPrimarySlotId(); 320promise.then(data => { 321 console.log(`getPrimarySlotId success, promise: data->${JSON.stringify(data)}`); 322}).catch(err => { 323 console.error(`getPrimarySlotId fail, promise: err->${JSON.stringify(err)}`); 324}); 325``` 326 327 328## radio.getSignalInformation<sup>7+</sup> 329 330getSignalInformation\(slotId: number, callback: AsyncCallback<Array<SignalInformation\>\>\): void 331 332获取指定SIM卡槽对应的注册网络信号强度信息列表,使用callback方式作为异步方法。 333 334**系统能力**:SystemCapability.Telephony.CoreService 335 336**参数:** 337 338| 参数名 | 类型 | 必填 | 说明 | 339| -------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ | 340| slotId | number | 是 | 卡槽ID。<br/>- 0:卡槽1<br/>- 1:卡槽2 | 341| callback | AsyncCallback\<Array\<[SignalInformation](#signalinformation)\>\> | 是 | 回调函数,返回[SignalInformation](#signalinformation)对象的数组。 | 342 343**示例:** 344 345``` 346let slotId = 0; 347radio.getSignalInformation(slotId, (err, data) => { 348 console.log(`callback: err->${JSON.stringify(err)}, data->${JSON.stringify(data)}`); 349}); 350``` 351 352 353## radio.getSignalInformation<sup>7+</sup> 354 355getSignalInformation\(slotId: number\): Promise<Array<SignalInformation\>\> 356 357获取指定SIM卡槽对应的注册网络信号强度信息列表,使用Promise方式作为异步方法。 358 359**系统能力**:SystemCapability.Telephony.CoreService 360 361**参数:** 362 363| 参数名 | 类型 | 必填 | 说明 | 364| ------ | ------ | ---- | -------------------------------------- | 365| slotId | number | 是 | 卡槽ID。<br/>- 0:卡槽1<br/>- 1:卡槽2 | 366 367**返回值:** 368 369| 类型 | 说明 | 370| ----------------------------------------------------------- | ------------------------------------------------------------ | 371| Promise\<Array\<[SignalInformation](#signalinformation)\>\> | 以Promise形式返回网络信号强度[SignalInformation](#signalinformation)对象的数组。 | 372 373**示例:** 374 375``` 376let slotId = 0; 377let promise = radio.getSignalInformation(slotId); 378promise.then(data => { 379 console.log(`getSignalInformation success, promise: data->${JSON.stringify(data)}`); 380}).catch(err => { 381 console.error(`getSignalInformation fail, promise: err->${JSON.stringify(err)}`); 382}); 383``` 384 385 386## radio.isNrSupported<sup>8+</sup> 387 388isNrSupported\(slotId: number\): boolean 389 390判断当前设备是否支持5G\(NR\)。 391 392**系统能力**:SystemCapability.Telephony.CoreService 393 394**参数:** 395 396| 参数名 | 类型 | 必填 | 说明 | 397| ------ | ------ | ---- | -------------------------------------- | 398| slotId | number | 是 | 卡槽ID。<br/>- 0:卡槽1<br/>- 1:卡槽2 | 399 400**返回值:** 401 402| 类型 | 说明 | 403| ------------------ | ------------------------------------------------------------ | 404| boolean | - true:支持<br/>- false:不支持 | 405 406**示例:** 407 408``` 409let slotId = 0; 410let result = radio.isNrSupported(slotId); 411console.log("Result: "+ result); 412``` 413 414 415## radio.isRadioOn<sup>7+</sup> 416 417isRadioOn\(callback: AsyncCallback<boolean\>\): void 418 419判断主卡的Radio是否打开,使用callback方式作为异步方法。 420 421**需要权限**:ohos.permission.GET_NETWORK_INFO 422 423**系统能力**:SystemCapability.Telephony.CoreService 424 425**参数:** 426 427| 参数名 | 类型 | 必填 | 说明 | 428| -------- | ------------------------ | ---- | ------------------------------------------------------- | 429| callback | AsyncCallback\<boolean\> | 是 | 回调函数。<br/>- true:Radio打开<br/>- false:Radio关闭 | 430 431**示例:** 432 433``` 434radio.isRadioOn((err, data) => { 435 console.log(`callback: err->${JSON.stringify(err)}, data->${JSON.stringify(data)}`); 436}); 437``` 438 439 440## radio.isRadioOn<sup>7+</sup> 441 442isRadioOn\(slotId: number, callback: AsyncCallback<boolean\>\): void 443 444判断指定卡槽位的Radio是否打开,使用callback方式作为异步方法。 445 446**需要权限**:ohos.permission.GET_NETWORK_INFO 447 448**系统能力**:SystemCapability.Telephony.CoreService 449 450**参数:** 451 452| 参数名 | 类型 | 必填 | 说明 | 453| -------- | ------------------------ | ---- | ------------------------------------------------------- | 454| slotId | number | 是 | 卡槽ID。<br/>- 0:卡槽1<br/>- 1:卡槽2 | 455| callback | AsyncCallback\<boolean\> | 是 | 回调函数。<br/>- true:Radio打开<br/>- false:Radio关闭 | 456 457**示例:** 458 459``` 460let slotId = 0; 461radio.isRadioOn(slotId, (err, data) => { 462 console.log(`callback: err->${JSON.stringify(err)}, data->${JSON.stringify(data)}`); 463}); 464``` 465 466 467## radio.isRadioOn<sup>7+</sup> 468 469isRadioOn\(slotId?: number\): Promise<boolean\> 470 471判断Radio是否打开,使用Promise方式作为异步方法。 472 473**需要权限**:ohos.permission.GET_NETWORK_INFO 474 475**系统能力**:SystemCapability.Telephony.CoreService 476 477**参数:** 478 479| 参数名 | 类型 | 必填 | 说明 | 480| ------ | ------ | ---- | -------------------------------------- | 481| slotId | number | 否 | 卡槽ID。<br/>- 0:卡槽1<br/>- 1:卡槽2<br/>如果不指定slotId,默认判断主卡Radio是否打开 | 482 483**返回值:** 484 485| 类型 | 说明 | 486| ------------------ | ------------------------------------------------------------ | 487| Promise\<boolean\> | 以Promise形式返回判断Radio是否打开的结果。<br/>- true:Radio打开<br/>- false:Radio关闭 | 488 489**示例:** 490 491``` 492let slotId = 0; 493let promise = radio.isRadioOn(slotId); 494promise.then(data => { 495 console.log(`isRadioOn success, promise: data->${JSON.stringify(data)}`); 496}).catch(err => { 497 console.error(`isRadioOn fail, promise: err->${JSON.stringify(err)}`); 498}); 499``` 500 501 502## radio.getOperatorName<sup>7+</sup> 503 504getOperatorName\(slotId: number, callback: AsyncCallback<string\>\): void 505 506获取运营商名称,使用callback方式作为异步方法。 507 508**系统能力**:SystemCapability.Telephony.CoreService 509 510**参数:** 511 512| 参数名 | 类型 | 必填 | 说明 | 513| -------- | ----------------------- | ---- | ------------------------------------------ | 514| slotId | number | 是 | 卡槽ID。<br/>- 0:卡槽1<br/>- 1:卡槽2 | 515| callback | AsyncCallback\<string\> | 是 | 回调函数。返回运营商名称,例如:中国移动。 | 516 517**示例:** 518 519``` 520let slotId = 0; 521radio.getOperatorName(slotId, (err, data) => { 522 console.log(`callback: err->${JSON.stringify(err)}, data->${JSON.stringify(data)}`); 523}); 524``` 525 526 527## radio.getOperatorName<sup>7+</sup> 528 529getOperatorName\(slotId: number\): Promise<string\> 530 531获取运营商名称,使用Promise方式作为异步方法。 532 533**系统能力**:SystemCapability.Telephony.CoreService 534 535**参数:** 536 537| 参数名 | 类型 | 必填 | 说明 | 538| ------ | ------ | ---- | -------------------------------------- | 539| slotId | number | 是 | 卡槽ID。<br/>- 0:卡槽1<br/>- 1:卡槽2 | 540 541**返回值:** 542 543| 类型 | 说明 | 544| ----------------- | ------------------------------------------------------------ | 545| Promise\<string\> | 以Promise形式返回运营商名称,例如:中国移动。 | 546 547**示例:** 548 549``` 550let slotId = 0; 551let promise = radio.getOperatorName(slotId); 552promise.then(data => { 553 console.log(`getOperatorName success, promise: data->${JSON.stringify(data)}`); 554}).catch(err => { 555 console.log(`getOperatorName fail, promise: err->${JSON.stringify(err)}`); 556}); 557``` 558 559 560## RadioTechnology 561 562无线接入技术。 563 564**系统能力**:以下各项对应的系统能力均为SystemCapability.Telephony.CoreService。 565 566| 名称 | 值 | 说明 | 567| ------------------------- | ---- | ------------------------------------------------------------ | 568| RADIO_TECHNOLOGY_UNKNOWN | 0 | 未知无线接入技术(RAT)。 | 569| RADIO_TECHNOLOGY_GSM | 1 | 无线接入技术GSM(Global System For Mobile Communication)。 | 570| RADIO_TECHNOLOGY_1XRTT | 2 | 无线接入技术1XRTT(Single-Carrier Radio Transmission Technology)。 | 571| RADIO_TECHNOLOGY_WCDMA | 3 | 无线接入技术WCDMA(Wideband Code Division Multiple Access)。 | 572| RADIO_TECHNOLOGY_HSPA | 4 | 无线接入技术HSPA(High Speed Packet Access)。 | 573| RADIO_TECHNOLOGY_HSPAP | 5 | 无线接入技术HSPAP(High Speed packet access (HSPA+) )。 | 574| RADIO_TECHNOLOGY_TD_SCDMA | 6 | 无线接入技术TDSCDMA(TimeDivision-Synchronous Code Division Multiple Access)。 | 575| RADIO_TECHNOLOGY_EVDO | 7 | 无线接入技术EVDO(Evolution、Data Only)。 | 576| RADIO_TECHNOLOGY_EHRPD | 8 | 无线接入技术EHRPD(Evolved High Rate Package Data)。 | 577| RADIO_TECHNOLOGY_LTE | 9 | 无线接入技术LTE(Long Term Evolution)。 | 578| RADIO_TECHNOLOGY_LTE_CA | 10 | 无线接入技术LTE_CA(Long Term Evolution_Carrier Aggregation)。 | 579| RADIO_TECHNOLOGY_IWLAN | 11 | 无线接入技术IWLAN(Industrial Wireless LAN)。 | 580| RADIO_TECHNOLOGY_NR | 12 | 无线接入技术NR(New Radio)。 | 581 582 583## SignalInformation 584 585网络信号强度信息对象。 586 587**系统能力**:以下各项对应的系统能力均为SystemCapability.Telephony.CoreService。 588 589| 参数名 | 类型 | 说明 | 590| ----------- | --------------------------- | ------------------ | 591| signalType | [NetworkType](#networktype) | 网络信号强度类型。 | 592| signalLevel | number | 网络信号强度等级。 | 593 594 595## NetworkType 596 597网络类型。 598 599**系统能力**:以下各项对应的系统能力均为SystemCapability.Telephony.CoreService。 600 601| 名称 | 值 | 说明 | 602| -------------------- | ---- | ------------------------------------------------------------ | 603| NETWORK_TYPE_UNKNOWN | 0 | 未知网络类型。 | 604| NETWORK_TYPE_GSM | 1 | 网络类型为GSM(Global System For Mobile Communication)。 | 605| NETWORK_TYPE_CDMA | 2 | 网络类型为CDMA(Code Division Multiple Access)。 | 606| NETWORK_TYPE_WCDMA | 3 | 网络类型为WCDMA(Wideband Code Division Multiple Access)。 | 607| NETWORK_TYPE_TDSCDMA | 4 | 网络类型为TDSCDMA(TimeDivision-Synchronous Code Division Multiple Access)。 | 608| NETWORK_TYPE_LTE | 5 | 网络类型为LTE(Long Term Evolution)。 | 609| NETWORK_TYPE_NR | 6 | 网络类型为5G NR(New Radio)。 | 610 611## NetworkState 612 613网络注册状态。 614 615**系统能力**:以下各项对应的系统能力均为SystemCapability.Telephony.CoreService。 616 617| 名称 | 类型 | 说明 | 618| ----------------- | --------------------- | ------------------------------------------------------------ | 619| longOperatorName | string | 注册网络的长运营商名称。 | 620| shortOperatorName | string | 注册网络的短运营商名称。 | 621| plmnNumeric | string | 注册网络的PLMN码。 | 622| isRoaming | boolean | 是否处于漫游状态。 | 623| regState | [RegState](#regstate) | 设备的网络注册状态。 | 624| cfgTech<sup>8+</sup> | [RadioTechnology](#radiotechnology) | 设备的无线接入技术。 | 625| nsaState | [NsaState](#nsastate) | 设备的NSA网络注册状态。 | 626| isCaActive | boolean | CA的状态。 | 627| isEmergency | boolean | 此设备是否只允许拨打紧急呼叫。 | 628 629 630## RegState 631 632网络注册状态。 633 634**系统能力**:以下各项对应的系统能力均为SystemCapability.Telephony.CoreService。 635 636| 名称 | 值 | 说明 | 637| ----------------------------- | ---- | -------------------------- | 638| REG_STATE_NO_SERVICE | 0 | 设备不能使用任何服务。 | 639| REG_STATE_IN_SERVICE | 1 | 设备可以正常使用业务。 | 640| REG_STATE_EMERGENCY_CALL_ONLY | 2 | 设备只能使用紧急呼叫业务。 | 641| REG_STATE_POWER_OFF | 3 | 蜂窝无线电已关闭。 | 642 643 644## NsaState 645 646非独立组网状态。 647 648**系统能力**:以下各项对应的系统能力均为SystemCapability.Telephony.CoreService。 649 650| 名称 | 值 | 说明 | 651| -------------------------- | ---- | ---------------------------------------------------------- | 652| NSA_STATE_NOT_SUPPORT | 1 | 设备在不支持NSA的LTE小区下处于空闲状态或连接状态。 | 653| NSA_STATE_NO_DETECT | 2 | 在支持NSA但不支持NR覆盖检测的LTE小区下,设备处于空闲状态。 | 654| NSA_STATE_CONNECTED_DETECT | 3 | 设备在LTE小区下连接到LTE网络支持NSA和NR覆盖检测。 | 655| NSA_STATE_IDLE_DETECT | 4 | 支持NSA和NR覆盖检测的LTE小区下设备处于空闲状态。 | 656| NSA_STATE_DUAL_CONNECTED | 5 | 设备在支持NSA的LTE小区下连接到LTE + NR网络。 | 657| NSA_STATE_SA_ATTACHED | 6 | 设备在5GC附着时在NG-RAN小区下空闲或连接到NG-RAN小区。 | 658 659 660## NetworkSelectionMode 661 662选网模式。 663 664**系统能力**:以下各项对应的系统能力均为SystemCapability.Telephony.CoreService。 665 666| 名称 | 值 | 说明 | 667| --------------------------- | ---- | -------------- | 668| NETWORK_SELECTION_UNKNOWN | 0 | 未知选网模式。 | 669| NETWORK_SELECTION_AUTOMATIC | 1 | 自动选网模式。 | 670| NETWORK_SELECTION_MANUAL | 2 | 手动选网模式。 | 671 672