1e41f4b71Sopenharmony_ci# @ohos.telephony.radio (Network Search)
2e41f4b71Sopenharmony_ci
3e41f4b71Sopenharmony_ciThe **radio** module provides basic network search management functions. Using the APIs provided by this module, you can obtain the radio access technology (RAT) used in the CS and PS domains, network status, current network selection mode, ISO country code of the registered network, ID of the slot in which the primary card is located, list of signal strengths of the registered network for the SIM card in the specified slot, and carrier name. Besides, you can check whether the current device supports New Radio \(NR\) and whether the radio service is enabled on the primary SIM card.
4e41f4b71Sopenharmony_ci
5e41f4b71Sopenharmony_ci>**NOTE**
6e41f4b71Sopenharmony_ci>
7e41f4b71Sopenharmony_ci>The initial APIs of this module are supported since API version 6. Newly added APIs will be marked with a superscript to indicate their earliest API version.
8e41f4b71Sopenharmony_ci
9e41f4b71Sopenharmony_ci
10e41f4b71Sopenharmony_ci## Modules to Import
11e41f4b71Sopenharmony_ci
12e41f4b71Sopenharmony_ci```ts
13e41f4b71Sopenharmony_ciimport { radio } from '@kit.TelephonyKit';
14e41f4b71Sopenharmony_ci```
15e41f4b71Sopenharmony_ci
16e41f4b71Sopenharmony_ci## radio.getRadioTech
17e41f4b71Sopenharmony_ci
18e41f4b71Sopenharmony_cigetRadioTech\(slotId: number, callback: AsyncCallback<[NetworkRadioTech](#networkradiotech11)\>\): void
19e41f4b71Sopenharmony_ci
20e41f4b71Sopenharmony_ciObtains the RAT used in the CS and PS domains for the SIM card in the specified slot. This API uses an asynchronous callback to return the result.
21e41f4b71Sopenharmony_ci
22e41f4b71Sopenharmony_ci**Required permission**: ohos.permission.GET_NETWORK_INFO
23e41f4b71Sopenharmony_ci
24e41f4b71Sopenharmony_ci**System capability**: SystemCapability.Telephony.CoreService
25e41f4b71Sopenharmony_ci
26e41f4b71Sopenharmony_ci**Parameters**
27e41f4b71Sopenharmony_ci
28e41f4b71Sopenharmony_ci| Name  | Type                                                        | Mandatory| Description                                  |
29e41f4b71Sopenharmony_ci| -------- | ------------------------------------------------------------ | ---- | -------------------------------------- |
30e41f4b71Sopenharmony_ci| slotId   | number                                                       | Yes  | Card slot ID.<br>- **0**: card slot 1<br>- **1**: card slot 2|
31e41f4b71Sopenharmony_ci| callback | AsyncCallback\<[NetworkRadioTech](#networkradiotech11)\> | Yes  | Callback used to return the result.  |
32e41f4b71Sopenharmony_ci
33e41f4b71Sopenharmony_ci**Error codes**
34e41f4b71Sopenharmony_ci
35e41f4b71Sopenharmony_ciFor details about the error codes, see[ohos.telephony (Telephony) Error Codes](errorcode-telephony.md).
36e41f4b71Sopenharmony_ci
37e41f4b71Sopenharmony_ci| ID|                  Error Message                   |
38e41f4b71Sopenharmony_ci| -------- | -------------------------------------------- |
39e41f4b71Sopenharmony_ci| 201      | Permission denied.                           |
40e41f4b71Sopenharmony_ci| 401      | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types.                             |
41e41f4b71Sopenharmony_ci| 8300001  | Invalid parameter value.                     |
42e41f4b71Sopenharmony_ci| 8300002  | Service connection failed.                   |
43e41f4b71Sopenharmony_ci| 8300003  | System internal error.                       |
44e41f4b71Sopenharmony_ci| 8300999  | Unknown error.                               |
45e41f4b71Sopenharmony_ci
46e41f4b71Sopenharmony_ci**Example**
47e41f4b71Sopenharmony_ci
48e41f4b71Sopenharmony_ci```ts
49e41f4b71Sopenharmony_ciimport { BusinessError } from '@kit.BasicServicesKit';
50e41f4b71Sopenharmony_ci
51e41f4b71Sopenharmony_cilet slotId: number = 0;
52e41f4b71Sopenharmony_ciradio.getRadioTech(slotId, (err: BusinessError, data: radio.NetworkRadioTech) => {
53e41f4b71Sopenharmony_ci    if (err) {
54e41f4b71Sopenharmony_ci        console.error(`getRadioTech failed, callback: err->${JSON.stringify(err)}`);
55e41f4b71Sopenharmony_ci        return;
56e41f4b71Sopenharmony_ci    }
57e41f4b71Sopenharmony_ci    console.log(`getRadioTech success, callback: data->${JSON.stringify(data)}`);
58e41f4b71Sopenharmony_ci});
59e41f4b71Sopenharmony_ci```
60e41f4b71Sopenharmony_ci
61e41f4b71Sopenharmony_ci
62e41f4b71Sopenharmony_ci## radio.getRadioTech
63e41f4b71Sopenharmony_ci
64e41f4b71Sopenharmony_cigetRadioTech\(slotId: number\): Promise\<[NetworkRadioTech](#networkradiotech11)\>
65e41f4b71Sopenharmony_ci
66e41f4b71Sopenharmony_ciObtains the RAT used in the CS and PS domains for the SIM card in the specified slot. This API uses a promise to return the result.
67e41f4b71Sopenharmony_ci
68e41f4b71Sopenharmony_ci**Required permission**: ohos.permission.GET_NETWORK_INFO
69e41f4b71Sopenharmony_ci
70e41f4b71Sopenharmony_ci**System capability**: SystemCapability.Telephony.CoreService
71e41f4b71Sopenharmony_ci
72e41f4b71Sopenharmony_ci**Parameters**
73e41f4b71Sopenharmony_ci
74e41f4b71Sopenharmony_ci| Name| Type  | Mandatory| Description                                  |
75e41f4b71Sopenharmony_ci| ------ | ------ | ---- | -------------------------------------- |
76e41f4b71Sopenharmony_ci| slotId | number | Yes  | Card slot ID.<br>- **0**: card slot 1<br>- **1**: card slot 2|
77e41f4b71Sopenharmony_ci
78e41f4b71Sopenharmony_ci**Return value**
79e41f4b71Sopenharmony_ci
80e41f4b71Sopenharmony_ci| Type                                                        | Description                                           |
81e41f4b71Sopenharmony_ci| ------------------------------------------------------------ | ----------------------------------------------- |
82e41f4b71Sopenharmony_ci| Promise\<[NetworkRadioTech](#networkradiotech11)\> | Promise used to return the result.|
83e41f4b71Sopenharmony_ci
84e41f4b71Sopenharmony_ci**Error codes**
85e41f4b71Sopenharmony_ci
86e41f4b71Sopenharmony_ciFor details about the error codes, see[ohos.telephony (Telephony) Error Codes](errorcode-telephony.md).
87e41f4b71Sopenharmony_ci
88e41f4b71Sopenharmony_ci| ID|                  Error Message                   |
89e41f4b71Sopenharmony_ci| -------- | -------------------------------------------- |
90e41f4b71Sopenharmony_ci| 201      | Permission denied.                           |
91e41f4b71Sopenharmony_ci| 401      | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types.                             |
92e41f4b71Sopenharmony_ci| 8300001  | Invalid parameter value.                     |
93e41f4b71Sopenharmony_ci| 8300002  | Service connection failed.                   |
94e41f4b71Sopenharmony_ci| 8300003  | System internal error.                       |
95e41f4b71Sopenharmony_ci| 8300999  | Unknown error.                               |
96e41f4b71Sopenharmony_ci
97e41f4b71Sopenharmony_ci**Example**
98e41f4b71Sopenharmony_ci
99e41f4b71Sopenharmony_ci```ts
100e41f4b71Sopenharmony_ciimport { BusinessError } from '@kit.BasicServicesKit';
101e41f4b71Sopenharmony_ci
102e41f4b71Sopenharmony_cilet slotId: number = 0;
103e41f4b71Sopenharmony_ciradio.getRadioTech(slotId).then((data: radio.NetworkRadioTech) => {
104e41f4b71Sopenharmony_ci    console.log(`getRadioTech success, promise: data->${JSON.stringify(data)}`);
105e41f4b71Sopenharmony_ci}).catch((err: BusinessError) => {
106e41f4b71Sopenharmony_ci    console.error(`getRadioTech failed, promise: err->${JSON.stringify(err)}`);
107e41f4b71Sopenharmony_ci});
108e41f4b71Sopenharmony_ci```
109e41f4b71Sopenharmony_ci
110e41f4b71Sopenharmony_ci
111e41f4b71Sopenharmony_ci## radio.getNetworkState
112e41f4b71Sopenharmony_ci
113e41f4b71Sopenharmony_cigetNetworkState\(callback: AsyncCallback\<NetworkState\>\): void
114e41f4b71Sopenharmony_ci
115e41f4b71Sopenharmony_ciObtains the network status. This API uses an asynchronous callback to return the result.
116e41f4b71Sopenharmony_ci
117e41f4b71Sopenharmony_ci**Required permission**: ohos.permission.GET_NETWORK_INFO
118e41f4b71Sopenharmony_ci
119e41f4b71Sopenharmony_ci**System capability**: SystemCapability.Telephony.CoreService
120e41f4b71Sopenharmony_ci
121e41f4b71Sopenharmony_ci**Parameters**
122e41f4b71Sopenharmony_ci
123e41f4b71Sopenharmony_ci| Name  | Type                                          | Mandatory| Description      |
124e41f4b71Sopenharmony_ci| -------- | ---------------------------------------------- | ---- | ---------- |
125e41f4b71Sopenharmony_ci| callback | AsyncCallback\<[NetworkState](#networkstate)\> | Yes  | Callback used to return the result.  |
126e41f4b71Sopenharmony_ci
127e41f4b71Sopenharmony_ci**Error codes**
128e41f4b71Sopenharmony_ci
129e41f4b71Sopenharmony_ciFor details about the error codes, see[ohos.telephony (Telephony) Error Codes](errorcode-telephony.md).
130e41f4b71Sopenharmony_ci
131e41f4b71Sopenharmony_ci| ID|                  Error Message                   |
132e41f4b71Sopenharmony_ci| -------- | -------------------------------------------- |
133e41f4b71Sopenharmony_ci| 201      | Permission denied.                           |
134e41f4b71Sopenharmony_ci| 401      | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types.                             |
135e41f4b71Sopenharmony_ci| 8300001  | Invalid parameter value.                     |
136e41f4b71Sopenharmony_ci| 8300002  | Service connection failed.                   |
137e41f4b71Sopenharmony_ci| 8300003  | System internal error.                       |
138e41f4b71Sopenharmony_ci| 8300999  | Unknown error.                               |
139e41f4b71Sopenharmony_ci
140e41f4b71Sopenharmony_ci**Example**
141e41f4b71Sopenharmony_ci
142e41f4b71Sopenharmony_ci```ts
143e41f4b71Sopenharmony_ciimport { BusinessError } from '@kit.BasicServicesKit';
144e41f4b71Sopenharmony_ci
145e41f4b71Sopenharmony_ciradio.getNetworkState((err: BusinessError, data: radio.NetworkState) => {
146e41f4b71Sopenharmony_ci    if (err) {
147e41f4b71Sopenharmony_ci        console.error(`getNetworkState failed, callback: err->${JSON.stringify(err)}`);
148e41f4b71Sopenharmony_ci        return;
149e41f4b71Sopenharmony_ci    }
150e41f4b71Sopenharmony_ci    console.log(`getNetworkState success, callback: data->${JSON.stringify(data)}`);
151e41f4b71Sopenharmony_ci});
152e41f4b71Sopenharmony_ci```
153e41f4b71Sopenharmony_ci
154e41f4b71Sopenharmony_ci
155e41f4b71Sopenharmony_ci## radio.getNetworkState
156e41f4b71Sopenharmony_ci
157e41f4b71Sopenharmony_cigetNetworkState\(slotId: number, callback: AsyncCallback\<NetworkState\>\): void
158e41f4b71Sopenharmony_ci
159e41f4b71Sopenharmony_ciObtains the network status of the SIM card in the specified slot. This API uses an asynchronous callback to return the result.
160e41f4b71Sopenharmony_ci
161e41f4b71Sopenharmony_ci**Required permission**: ohos.permission.GET_NETWORK_INFO
162e41f4b71Sopenharmony_ci
163e41f4b71Sopenharmony_ci**System capability**: SystemCapability.Telephony.CoreService
164e41f4b71Sopenharmony_ci
165e41f4b71Sopenharmony_ci**Parameters**
166e41f4b71Sopenharmony_ci
167e41f4b71Sopenharmony_ci| Name  | Type                                          | Mandatory| Description                                  |
168e41f4b71Sopenharmony_ci| -------- | ---------------------------------------------- | ---- | -------------------------------------- |
169e41f4b71Sopenharmony_ci| slotId   | number                                         | Yes  | Card slot ID.<br>- **0**: card slot 1<br>- **1**: card slot 2|
170e41f4b71Sopenharmony_ci| callback | AsyncCallback\<[NetworkState](#networkstate)\> | Yes  | Callback used to return the result.                              |
171e41f4b71Sopenharmony_ci
172e41f4b71Sopenharmony_ci**Error codes**
173e41f4b71Sopenharmony_ci
174e41f4b71Sopenharmony_ciFor details about the error codes, see[ohos.telephony (Telephony) Error Codes](errorcode-telephony.md).
175e41f4b71Sopenharmony_ci
176e41f4b71Sopenharmony_ci| ID|                  Error Message                   |
177e41f4b71Sopenharmony_ci| -------- | -------------------------------------------- |
178e41f4b71Sopenharmony_ci| 201      | Permission denied.                           |
179e41f4b71Sopenharmony_ci| 401      | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types.                             |
180e41f4b71Sopenharmony_ci| 8300001  | Invalid parameter value.                     |
181e41f4b71Sopenharmony_ci| 8300002  | Service connection failed.                   |
182e41f4b71Sopenharmony_ci| 8300003  | System internal error.                       |
183e41f4b71Sopenharmony_ci| 8300999  | Unknown error.                               |
184e41f4b71Sopenharmony_ci
185e41f4b71Sopenharmony_ci**Example**
186e41f4b71Sopenharmony_ci
187e41f4b71Sopenharmony_ci```ts
188e41f4b71Sopenharmony_ciimport { BusinessError } from '@kit.BasicServicesKit';
189e41f4b71Sopenharmony_ci
190e41f4b71Sopenharmony_cilet slotId: number = 0;
191e41f4b71Sopenharmony_ciradio.getNetworkState(slotId, (err: BusinessError, data: radio.NetworkState) => {
192e41f4b71Sopenharmony_ci    if (err) {
193e41f4b71Sopenharmony_ci        console.error(`getNetworkState failed, callback: err->${JSON.stringify(err)}`);
194e41f4b71Sopenharmony_ci        return;
195e41f4b71Sopenharmony_ci    }
196e41f4b71Sopenharmony_ci    console.log(`getNetworkState success, callback: data->${JSON.stringify(data)}`);
197e41f4b71Sopenharmony_ci});
198e41f4b71Sopenharmony_ci```
199e41f4b71Sopenharmony_ci
200e41f4b71Sopenharmony_ci
201e41f4b71Sopenharmony_ci## radio.getNetworkState
202e41f4b71Sopenharmony_ci
203e41f4b71Sopenharmony_cigetNetworkState\(slotId?: number\): Promise\<NetworkState\>
204e41f4b71Sopenharmony_ci
205e41f4b71Sopenharmony_ciObtains the network status of the SIM card in the specified slot. This API uses a promise to return the result.
206e41f4b71Sopenharmony_ci
207e41f4b71Sopenharmony_ci**Required permission**: ohos.permission.GET_NETWORK_INFO
208e41f4b71Sopenharmony_ci
209e41f4b71Sopenharmony_ci**System capability**: SystemCapability.Telephony.CoreService
210e41f4b71Sopenharmony_ci
211e41f4b71Sopenharmony_ci**Parameters**
212e41f4b71Sopenharmony_ci
213e41f4b71Sopenharmony_ci| Name| Type  | Mandatory| Description                                  |
214e41f4b71Sopenharmony_ci| ------ | ------ | ---- | -------------------------------------- |
215e41f4b71Sopenharmony_ci| slotId | number | No  | Card slot ID.<br>- **0**: card slot 1<br>- **1**: card slot 2|
216e41f4b71Sopenharmony_ci
217e41f4b71Sopenharmony_ci**Return value**
218e41f4b71Sopenharmony_ci
219e41f4b71Sopenharmony_ci| Type                                    | Description                       |
220e41f4b71Sopenharmony_ci| ---------------------------------------- | --------------------------- |
221e41f4b71Sopenharmony_ci| Promise\<[NetworkState](#networkstate)\> | Promise used to return the result.|
222e41f4b71Sopenharmony_ci
223e41f4b71Sopenharmony_ci**Error codes**
224e41f4b71Sopenharmony_ci
225e41f4b71Sopenharmony_ciFor details about the error codes, see[ohos.telephony (Telephony) Error Codes](errorcode-telephony.md).
226e41f4b71Sopenharmony_ci
227e41f4b71Sopenharmony_ci| ID|                  Error Message                   |
228e41f4b71Sopenharmony_ci| -------- | -------------------------------------------- |
229e41f4b71Sopenharmony_ci| 201      | Permission denied.                           |
230e41f4b71Sopenharmony_ci| 401      | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types.                             |
231e41f4b71Sopenharmony_ci| 8300001  | Invalid parameter value.                     |
232e41f4b71Sopenharmony_ci| 8300002  | Service connection failed.                   |
233e41f4b71Sopenharmony_ci| 8300003  | System internal error.                       |
234e41f4b71Sopenharmony_ci| 8300999  | Unknown error.                               |
235e41f4b71Sopenharmony_ci
236e41f4b71Sopenharmony_ci**Example**
237e41f4b71Sopenharmony_ci
238e41f4b71Sopenharmony_ci```ts
239e41f4b71Sopenharmony_ciimport { BusinessError } from '@kit.BasicServicesKit';
240e41f4b71Sopenharmony_ci
241e41f4b71Sopenharmony_cilet slotId: number = 0;
242e41f4b71Sopenharmony_ciradio.getNetworkState(slotId).then((data: radio.NetworkState) => {
243e41f4b71Sopenharmony_ci    console.log(`getNetworkState success, promise: data->${JSON.stringify(data)}`);
244e41f4b71Sopenharmony_ci}).catch((err: BusinessError) => {
245e41f4b71Sopenharmony_ci    console.error(`getNetworkState failed, promise: err->${JSON.stringify(err)}`);
246e41f4b71Sopenharmony_ci});
247e41f4b71Sopenharmony_ci```
248e41f4b71Sopenharmony_ci
249e41f4b71Sopenharmony_ci
250e41f4b71Sopenharmony_ci## radio.getNetworkSelectionMode
251e41f4b71Sopenharmony_ci
252e41f4b71Sopenharmony_cigetNetworkSelectionMode\(slotId: number, callback: AsyncCallback\<NetworkSelectionMode\>\): void
253e41f4b71Sopenharmony_ci
254e41f4b71Sopenharmony_ciObtains the network selection mode of the SIM card in the specified slot. This API uses an asynchronous callback to return the result.
255e41f4b71Sopenharmony_ci
256e41f4b71Sopenharmony_ci**System capability**: SystemCapability.Telephony.CoreService
257e41f4b71Sopenharmony_ci
258e41f4b71Sopenharmony_ci**Parameters**
259e41f4b71Sopenharmony_ci
260e41f4b71Sopenharmony_ci| Name  | Type                                                        | Mandatory| Description                                  |
261e41f4b71Sopenharmony_ci| -------- | ------------------------------------------------------------ | ---- | -------------------------------------- |
262e41f4b71Sopenharmony_ci| slotId   | number                                                       | Yes  | Card slot ID.<br>- **0**: card slot 1<br>- **1**: card slot 2|
263e41f4b71Sopenharmony_ci| callback | AsyncCallback\<[NetworkSelectionMode](#networkselectionmode)\> | Yes  | Callback used to return the result.                              |
264e41f4b71Sopenharmony_ci
265e41f4b71Sopenharmony_ci**Error codes**
266e41f4b71Sopenharmony_ci
267e41f4b71Sopenharmony_ciFor details about the error codes, see[ohos.telephony (Telephony) Error Codes](errorcode-telephony.md).
268e41f4b71Sopenharmony_ci
269e41f4b71Sopenharmony_ci| ID|                 Error Message                    |
270e41f4b71Sopenharmony_ci| -------- | -------------------------------------------- |
271e41f4b71Sopenharmony_ci| 401      | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types.                             |
272e41f4b71Sopenharmony_ci| 8300001  | Invalid parameter value.                     |
273e41f4b71Sopenharmony_ci| 8300002  | Service connection failed.                   |
274e41f4b71Sopenharmony_ci| 8300003  | System internal error.                       |
275e41f4b71Sopenharmony_ci| 8300999  | Unknown error.                               |
276e41f4b71Sopenharmony_ci
277e41f4b71Sopenharmony_ci**Example**
278e41f4b71Sopenharmony_ci
279e41f4b71Sopenharmony_ci```ts
280e41f4b71Sopenharmony_ciimport { BusinessError } from '@kit.BasicServicesKit';
281e41f4b71Sopenharmony_ci
282e41f4b71Sopenharmony_cilet slotId: number = 0;
283e41f4b71Sopenharmony_ciradio.getNetworkSelectionMode(slotId, (err: BusinessError, data: radio.NetworkSelectionMode) => {
284e41f4b71Sopenharmony_ci    if (err) {
285e41f4b71Sopenharmony_ci        console.error(`getNetworkSelectionMode failed, callback: err->${JSON.stringify(err)}`);
286e41f4b71Sopenharmony_ci        return;
287e41f4b71Sopenharmony_ci    }
288e41f4b71Sopenharmony_ci    console.log(`getNetworkSelectionMode success, callback: data->${JSON.stringify(data)}`);
289e41f4b71Sopenharmony_ci});
290e41f4b71Sopenharmony_ci```
291e41f4b71Sopenharmony_ci
292e41f4b71Sopenharmony_ci
293e41f4b71Sopenharmony_ci## radio.getNetworkSelectionMode
294e41f4b71Sopenharmony_ci
295e41f4b71Sopenharmony_cigetNetworkSelectionMode\(slotId: number\): Promise\<NetworkSelectionMode\>
296e41f4b71Sopenharmony_ci
297e41f4b71Sopenharmony_ciObtains the network selection mode of the SIM card in the specified slot. This API uses a promise to return the result.
298e41f4b71Sopenharmony_ci
299e41f4b71Sopenharmony_ci**System capability**: SystemCapability.Telephony.CoreService
300e41f4b71Sopenharmony_ci
301e41f4b71Sopenharmony_ci**Parameters**
302e41f4b71Sopenharmony_ci
303e41f4b71Sopenharmony_ci| Name| Type  | Mandatory| Description                                  |
304e41f4b71Sopenharmony_ci| ------ | ------ | ---- | -------------------------------------- |
305e41f4b71Sopenharmony_ci| slotId | number | Yes  | Card slot ID.<br>- **0**: card slot 1<br>- **1**: card slot 2|
306e41f4b71Sopenharmony_ci
307e41f4b71Sopenharmony_ci**Return value**
308e41f4b71Sopenharmony_ci
309e41f4b71Sopenharmony_ci| Type                                                    | Description                           |
310e41f4b71Sopenharmony_ci| -------------------------------------------------------- | ------------------------------- |
311e41f4b71Sopenharmony_ci| Promise\<[NetworkSelectionMode](#networkselectionmode)\> | Promise used to return the result.|
312e41f4b71Sopenharmony_ci
313e41f4b71Sopenharmony_ci**Error codes**
314e41f4b71Sopenharmony_ci
315e41f4b71Sopenharmony_ciFor details about the error codes, see[ohos.telephony (Telephony) Error Codes](errorcode-telephony.md).
316e41f4b71Sopenharmony_ci
317e41f4b71Sopenharmony_ci| ID|                 Error Message                    |
318e41f4b71Sopenharmony_ci| -------- | -------------------------------------------- |
319e41f4b71Sopenharmony_ci| 401      | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types.                             |
320e41f4b71Sopenharmony_ci| 8300001  | Invalid parameter value.                     |
321e41f4b71Sopenharmony_ci| 8300002  | Service connection failed.                   |
322e41f4b71Sopenharmony_ci| 8300003  | System internal error.                       |
323e41f4b71Sopenharmony_ci| 8300999  | Unknown error.                               |
324e41f4b71Sopenharmony_ci
325e41f4b71Sopenharmony_ci**Example**
326e41f4b71Sopenharmony_ci
327e41f4b71Sopenharmony_ci```ts
328e41f4b71Sopenharmony_ciimport { BusinessError } from '@kit.BasicServicesKit';
329e41f4b71Sopenharmony_ci
330e41f4b71Sopenharmony_cilet slotId: number = 0;
331e41f4b71Sopenharmony_ciradio.getNetworkSelectionMode(slotId).then((data: radio.NetworkSelectionMode) => {
332e41f4b71Sopenharmony_ci    console.log(`getNetworkSelectionMode success, promise: data->${JSON.stringify(data)}`);
333e41f4b71Sopenharmony_ci}).catch((err: BusinessError) => {
334e41f4b71Sopenharmony_ci    console.error(`getNetworkSelectionMode failed, promise: err->${JSON.stringify(err)}`);
335e41f4b71Sopenharmony_ci});
336e41f4b71Sopenharmony_ci```
337e41f4b71Sopenharmony_ci
338e41f4b71Sopenharmony_ci
339e41f4b71Sopenharmony_ci## radio.getISOCountryCodeForNetwork<sup>7+</sup>
340e41f4b71Sopenharmony_ci
341e41f4b71Sopenharmony_cigetISOCountryCodeForNetwork\(slotId: number, callback: AsyncCallback\<string\>\): void
342e41f4b71Sopenharmony_ci
343e41f4b71Sopenharmony_ciObtains the ISO country code of the network with which the SIM card in the specified slot is registered. This API uses an asynchronous callback to return the result.
344e41f4b71Sopenharmony_ci
345e41f4b71Sopenharmony_ci**System capability**: SystemCapability.Telephony.CoreService
346e41f4b71Sopenharmony_ci
347e41f4b71Sopenharmony_ci**Parameters**
348e41f4b71Sopenharmony_ci
349e41f4b71Sopenharmony_ci| Name  | Type                   | Mandatory| Description                                    |
350e41f4b71Sopenharmony_ci| -------- | ----------------------- | ---- | ---------------------------------------- |
351e41f4b71Sopenharmony_ci| slotId   | number                  | Yes  | Card slot ID.<br>- **0**: card slot 1<br>- **1**: card slot 2  |
352e41f4b71Sopenharmony_ci| callback | AsyncCallback\<string\> | Yes  | Callback used to return the result, which is an ISO country code, for example, **CN** (China). If the device is not registered with any network, an empty string is returned.|
353e41f4b71Sopenharmony_ci
354e41f4b71Sopenharmony_ci**Error codes**
355e41f4b71Sopenharmony_ci
356e41f4b71Sopenharmony_ciFor details about the error codes, see[ohos.telephony (Telephony) Error Codes](errorcode-telephony.md).
357e41f4b71Sopenharmony_ci
358e41f4b71Sopenharmony_ci| ID|                 Error Message                    |
359e41f4b71Sopenharmony_ci| -------- | -------------------------------------------- |
360e41f4b71Sopenharmony_ci| 401      | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types.                             |
361e41f4b71Sopenharmony_ci| 8300001  | Invalid parameter value.                     |
362e41f4b71Sopenharmony_ci| 8300002  | Service connection failed.                   |
363e41f4b71Sopenharmony_ci| 8300003  | System internal error.                       |
364e41f4b71Sopenharmony_ci| 8300999  | Unknown error.                               |
365e41f4b71Sopenharmony_ci
366e41f4b71Sopenharmony_ci**Example**
367e41f4b71Sopenharmony_ci
368e41f4b71Sopenharmony_ci```ts
369e41f4b71Sopenharmony_ciimport { BusinessError } from '@kit.BasicServicesKit';
370e41f4b71Sopenharmony_ci
371e41f4b71Sopenharmony_cilet slotId: number = 0;
372e41f4b71Sopenharmony_ciradio.getISOCountryCodeForNetwork(slotId, (err: BusinessError, data: string) => {
373e41f4b71Sopenharmony_ci    if (err) {
374e41f4b71Sopenharmony_ci        console.error(`getISOCountryCodeForNetwork failed, callback: err->${JSON.stringify(err)}`);
375e41f4b71Sopenharmony_ci        return;
376e41f4b71Sopenharmony_ci    }
377e41f4b71Sopenharmony_ci    console.log(`getISOCountryCodeForNetwork success, callback: data->${JSON.stringify(data)}`);
378e41f4b71Sopenharmony_ci});
379e41f4b71Sopenharmony_ci```
380e41f4b71Sopenharmony_ci
381e41f4b71Sopenharmony_ci
382e41f4b71Sopenharmony_ci## radio.getISOCountryCodeForNetwork<sup>7+</sup>
383e41f4b71Sopenharmony_ci
384e41f4b71Sopenharmony_cigetISOCountryCodeForNetwork\(slotId: number\): Promise\<string\>
385e41f4b71Sopenharmony_ci
386e41f4b71Sopenharmony_ciObtains the ISO country code of the network with which the SIM card in the specified slot is registered. This API uses a promise to return the result.
387e41f4b71Sopenharmony_ci
388e41f4b71Sopenharmony_ci**System capability**: SystemCapability.Telephony.CoreService
389e41f4b71Sopenharmony_ci
390e41f4b71Sopenharmony_ci**Parameters**
391e41f4b71Sopenharmony_ci
392e41f4b71Sopenharmony_ci| Name| Type  | Mandatory| Description                                  |
393e41f4b71Sopenharmony_ci| ------ | ------ | ---- | -------------------------------------- |
394e41f4b71Sopenharmony_ci| slotId | number | Yes  | Card slot ID.<br>- **0**: card slot 1<br>- **1**: card slot 2|
395e41f4b71Sopenharmony_ci
396e41f4b71Sopenharmony_ci**Return value**
397e41f4b71Sopenharmony_ci
398e41f4b71Sopenharmony_ci| Type             | Description                                                        |
399e41f4b71Sopenharmony_ci| ----------------- | ------------------------------------------------------------ |
400e41f4b71Sopenharmony_ci| Promise\<string\> | Promise used to return the result, which is an ISO country code, for example, **CN** (China). If the device is not registered with any network, an empty string is returned.|
401e41f4b71Sopenharmony_ci
402e41f4b71Sopenharmony_ci**Error codes**
403e41f4b71Sopenharmony_ci
404e41f4b71Sopenharmony_ciFor details about the error codes, see[ohos.telephony (Telephony) Error Codes](errorcode-telephony.md).
405e41f4b71Sopenharmony_ci
406e41f4b71Sopenharmony_ci| ID|                 Error Message                    |
407e41f4b71Sopenharmony_ci| -------- | -------------------------------------------- |
408e41f4b71Sopenharmony_ci| 401      | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types.                             |
409e41f4b71Sopenharmony_ci| 8300001  | Invalid parameter value.                     |
410e41f4b71Sopenharmony_ci| 8300002  | Service connection failed.                   |
411e41f4b71Sopenharmony_ci| 8300003  | System internal error.                       |
412e41f4b71Sopenharmony_ci| 8300999  | Unknown error.                               |
413e41f4b71Sopenharmony_ci
414e41f4b71Sopenharmony_ci**Example**
415e41f4b71Sopenharmony_ci
416e41f4b71Sopenharmony_ci```ts
417e41f4b71Sopenharmony_ciimport { BusinessError } from '@kit.BasicServicesKit';
418e41f4b71Sopenharmony_ci
419e41f4b71Sopenharmony_cilet slotId: number = 0;
420e41f4b71Sopenharmony_ciradio.getISOCountryCodeForNetwork(slotId).then((data: string) => {
421e41f4b71Sopenharmony_ci    console.log(`getISOCountryCodeForNetwork success, promise: data->${JSON.stringify(data)}`);
422e41f4b71Sopenharmony_ci}).catch((err: BusinessError) => {
423e41f4b71Sopenharmony_ci    console.error(`getISOCountryCodeForNetwork failed, promise: err->${JSON.stringify(err)}`);
424e41f4b71Sopenharmony_ci});
425e41f4b71Sopenharmony_ci```
426e41f4b71Sopenharmony_ci
427e41f4b71Sopenharmony_ci## radio.getISOCountryCodeForNetworkSync<sup>10+</sup>
428e41f4b71Sopenharmony_ci
429e41f4b71Sopenharmony_cigetISOCountryCodeForNetworkSync\(slotId: number\): string
430e41f4b71Sopenharmony_ci
431e41f4b71Sopenharmony_ciObtains the ISO country code of the network with which the SIM card in the specified slot is registered.
432e41f4b71Sopenharmony_ci
433e41f4b71Sopenharmony_ci**System capability**: SystemCapability.Telephony.CoreService
434e41f4b71Sopenharmony_ci
435e41f4b71Sopenharmony_ci**Parameters**
436e41f4b71Sopenharmony_ci
437e41f4b71Sopenharmony_ci| Name| Type  | Mandatory| Description                                  |
438e41f4b71Sopenharmony_ci| ------ | ------ | ---- | -------------------------------------- |
439e41f4b71Sopenharmony_ci| slotId | number | Yes  | Card slot ID.<br>- **0**: card slot 1<br>- **1**: card slot 2|
440e41f4b71Sopenharmony_ci
441e41f4b71Sopenharmony_ci**Return value**
442e41f4b71Sopenharmony_ci
443e41f4b71Sopenharmony_ci| Type             | Description                                                        |
444e41f4b71Sopenharmony_ci| ----------------- | ------------------------------------------------------------ |
445e41f4b71Sopenharmony_ci| string | ISO country code of the network, for example, **CN** (China). If the device is not registered with any network, an empty string is returned.|
446e41f4b71Sopenharmony_ci
447e41f4b71Sopenharmony_ci**Example**
448e41f4b71Sopenharmony_ci
449e41f4b71Sopenharmony_ci```ts
450e41f4b71Sopenharmony_cilet slotId: number = 0;
451e41f4b71Sopenharmony_cilet countryISO: string = radio.getISOCountryCodeForNetworkSync(slotId);
452e41f4b71Sopenharmony_ciconsole.log(`the country ISO is:` + countryISO);
453e41f4b71Sopenharmony_ci```
454e41f4b71Sopenharmony_ci
455e41f4b71Sopenharmony_ci
456e41f4b71Sopenharmony_ci
457e41f4b71Sopenharmony_ci## radio.getPrimarySlotId<sup>7+</sup>
458e41f4b71Sopenharmony_ci
459e41f4b71Sopenharmony_cigetPrimarySlotId\(callback: AsyncCallback\<number\>\): void
460e41f4b71Sopenharmony_ci
461e41f4b71Sopenharmony_ciObtains the ID of the slot in which the primary card is located. This API uses an asynchronous callback to return the result.
462e41f4b71Sopenharmony_ci
463e41f4b71Sopenharmony_ci**System capability**: SystemCapability.Telephony.CoreService
464e41f4b71Sopenharmony_ci
465e41f4b71Sopenharmony_ci**Parameters**
466e41f4b71Sopenharmony_ci
467e41f4b71Sopenharmony_ci| Name  | Type                                                        | Mandatory| Description                                                        |
468e41f4b71Sopenharmony_ci| -------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ |
469e41f4b71Sopenharmony_ci| callback | AsyncCallback\<number\> | Yes  | Callback used to return the result.  |
470e41f4b71Sopenharmony_ci
471e41f4b71Sopenharmony_ci**Error codes**
472e41f4b71Sopenharmony_ci
473e41f4b71Sopenharmony_ciFor details about the error codes, see[ohos.telephony (Telephony) Error Codes](errorcode-telephony.md).
474e41f4b71Sopenharmony_ci
475e41f4b71Sopenharmony_ci| ID|                 Error Message                    |
476e41f4b71Sopenharmony_ci| -------- | -------------------------------------------- |
477e41f4b71Sopenharmony_ci| 401      | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types.                             |
478e41f4b71Sopenharmony_ci| 8300001  | Invalid parameter value.                     |
479e41f4b71Sopenharmony_ci| 8300002  | Service connection failed.                   |
480e41f4b71Sopenharmony_ci| 8300003  | System internal error.                       |
481e41f4b71Sopenharmony_ci| 8300999  | Unknown error.                               |
482e41f4b71Sopenharmony_ci
483e41f4b71Sopenharmony_ci**Example**
484e41f4b71Sopenharmony_ci
485e41f4b71Sopenharmony_ci```ts
486e41f4b71Sopenharmony_ciimport { BusinessError } from '@kit.BasicServicesKit';
487e41f4b71Sopenharmony_ci
488e41f4b71Sopenharmony_ciradio.getPrimarySlotId((err: BusinessError, data: number) => {
489e41f4b71Sopenharmony_ci    if (err) {
490e41f4b71Sopenharmony_ci        console.error(`getPrimarySlotId failed, callback: err->${JSON.stringify(err)}`);
491e41f4b71Sopenharmony_ci        return;
492e41f4b71Sopenharmony_ci    }
493e41f4b71Sopenharmony_ci    console.log(`getPrimarySlotId success, callback: data->${JSON.stringify(data)}`);
494e41f4b71Sopenharmony_ci});
495e41f4b71Sopenharmony_ci```
496e41f4b71Sopenharmony_ci
497e41f4b71Sopenharmony_ci
498e41f4b71Sopenharmony_ci## radio.getPrimarySlotId<sup>7+</sup>
499e41f4b71Sopenharmony_ci
500e41f4b71Sopenharmony_cigetPrimarySlotId\(\): Promise\<number\>
501e41f4b71Sopenharmony_ci
502e41f4b71Sopenharmony_ciObtains the ID of the slot in which the primary card is located. This API uses a promise to return the result.
503e41f4b71Sopenharmony_ci
504e41f4b71Sopenharmony_ci**System capability**: SystemCapability.Telephony.CoreService
505e41f4b71Sopenharmony_ci
506e41f4b71Sopenharmony_ci**Return value**
507e41f4b71Sopenharmony_ci
508e41f4b71Sopenharmony_ci| Type                                                       | Description                                                        |
509e41f4b71Sopenharmony_ci| ----------------------------------------------------------- | ------------------------------------------------------------ |
510e41f4b71Sopenharmony_ci| Promise\<number\> | Promise used to return the result.|
511e41f4b71Sopenharmony_ci
512e41f4b71Sopenharmony_ci**Error codes**
513e41f4b71Sopenharmony_ci
514e41f4b71Sopenharmony_ciFor details about the error codes, see[ohos.telephony (Telephony) Error Codes](errorcode-telephony.md).
515e41f4b71Sopenharmony_ci
516e41f4b71Sopenharmony_ci| ID|                 Error Message                    |
517e41f4b71Sopenharmony_ci| -------- | -------------------------------------------- |
518e41f4b71Sopenharmony_ci| 8300002  | Service connection failed.                   |
519e41f4b71Sopenharmony_ci| 8300003  | System internal error.                       |
520e41f4b71Sopenharmony_ci| 8300999  | Unknown error.                               |
521e41f4b71Sopenharmony_ci
522e41f4b71Sopenharmony_ci**Example**
523e41f4b71Sopenharmony_ci
524e41f4b71Sopenharmony_ci```ts
525e41f4b71Sopenharmony_ciimport { BusinessError } from '@kit.BasicServicesKit';
526e41f4b71Sopenharmony_ci
527e41f4b71Sopenharmony_ciradio.getPrimarySlotId().then((data: number) => {
528e41f4b71Sopenharmony_ci    console.log(`getPrimarySlotId success, promise: data->${JSON.stringify(data)}`);
529e41f4b71Sopenharmony_ci}).catch((err: BusinessError) => {
530e41f4b71Sopenharmony_ci    console.error(`getPrimarySlotId failed, promise: err->${JSON.stringify(err)}`);
531e41f4b71Sopenharmony_ci});
532e41f4b71Sopenharmony_ci```
533e41f4b71Sopenharmony_ci
534e41f4b71Sopenharmony_ci
535e41f4b71Sopenharmony_ci## radio.getSignalInformation<sup>7+</sup>
536e41f4b71Sopenharmony_ci
537e41f4b71Sopenharmony_cigetSignalInformation\(slotId: number, callback: AsyncCallback\<Array\<SignalInformation\>\>\): void
538e41f4b71Sopenharmony_ci
539e41f4b71Sopenharmony_ciObtains a list of signal strengths of the network with which the SIM card in the specified slot is registered. This API uses an asynchronous callback to return the result.
540e41f4b71Sopenharmony_ci
541e41f4b71Sopenharmony_ci**System capability**: SystemCapability.Telephony.CoreService
542e41f4b71Sopenharmony_ci
543e41f4b71Sopenharmony_ci**Parameters**
544e41f4b71Sopenharmony_ci
545e41f4b71Sopenharmony_ci| Name  | Type                                                        | Mandatory| Description                                                        |
546e41f4b71Sopenharmony_ci| -------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ |
547e41f4b71Sopenharmony_ci| slotId   | number                                                       | Yes  | Card slot ID.<br>- **0**: card slot 1<br>- **1**: card slot 2                      |
548e41f4b71Sopenharmony_ci| callback | AsyncCallback\<Array\<[SignalInformation](#signalinformation)\>\> | Yes  | Callback used to return the result, which is an array of child class objects derived from [SignalInformation](#signalinformation).|
549e41f4b71Sopenharmony_ci
550e41f4b71Sopenharmony_ci**Error codes**
551e41f4b71Sopenharmony_ci
552e41f4b71Sopenharmony_ciFor details about the error codes, see[ohos.telephony (Telephony) Error Codes](errorcode-telephony.md).
553e41f4b71Sopenharmony_ci
554e41f4b71Sopenharmony_ci| ID|                 Error Message                    |
555e41f4b71Sopenharmony_ci| -------- | -------------------------------------------- |
556e41f4b71Sopenharmony_ci| 401      | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types.                             |
557e41f4b71Sopenharmony_ci| 8300001  | Invalid parameter value.                     |
558e41f4b71Sopenharmony_ci| 8300002  | Service connection failed.                   |
559e41f4b71Sopenharmony_ci| 8300003  | System internal error.                       |
560e41f4b71Sopenharmony_ci| 8300999  | Unknown error.                               |
561e41f4b71Sopenharmony_ci
562e41f4b71Sopenharmony_ci**Example**
563e41f4b71Sopenharmony_ci
564e41f4b71Sopenharmony_ci```ts
565e41f4b71Sopenharmony_ciimport { BusinessError } from '@kit.BasicServicesKit';
566e41f4b71Sopenharmony_ci
567e41f4b71Sopenharmony_cilet slotId: number = 0;
568e41f4b71Sopenharmony_ciradio.getSignalInformation(slotId, (err: BusinessError, data: Array<radio.SignalInformation>) => {
569e41f4b71Sopenharmony_ci    if (err) {
570e41f4b71Sopenharmony_ci        console.error(`getSignalInformation failed, callback: err->${JSON.stringify(err)}`);
571e41f4b71Sopenharmony_ci        return;
572e41f4b71Sopenharmony_ci    }
573e41f4b71Sopenharmony_ci    console.log(`getSignalInformation success, callback: data->${JSON.stringify(data)}`);
574e41f4b71Sopenharmony_ci});
575e41f4b71Sopenharmony_ci```
576e41f4b71Sopenharmony_ci
577e41f4b71Sopenharmony_ci
578e41f4b71Sopenharmony_ci## radio.getSignalInformation<sup>7+</sup>
579e41f4b71Sopenharmony_ci
580e41f4b71Sopenharmony_cigetSignalInformation\(slotId: number\): Promise\<Array\<SignalInformation\>\>
581e41f4b71Sopenharmony_ci
582e41f4b71Sopenharmony_ciObtains a list of signal strengths of the network with which the SIM card in the specified slot is registered. This API uses a promise to return the result.
583e41f4b71Sopenharmony_ci
584e41f4b71Sopenharmony_ci**System capability**: SystemCapability.Telephony.CoreService
585e41f4b71Sopenharmony_ci
586e41f4b71Sopenharmony_ci**Parameters**
587e41f4b71Sopenharmony_ci
588e41f4b71Sopenharmony_ci| Name| Type  | Mandatory| Description                                  |
589e41f4b71Sopenharmony_ci| ------ | ------ | ---- | -------------------------------------- |
590e41f4b71Sopenharmony_ci| slotId | number | Yes  | Card slot ID.<br>- **0**: card slot 1<br>- **1**: card slot 2|
591e41f4b71Sopenharmony_ci
592e41f4b71Sopenharmony_ci**Return value**
593e41f4b71Sopenharmony_ci
594e41f4b71Sopenharmony_ci| Type                                                       | Description                                                        |
595e41f4b71Sopenharmony_ci| ----------------------------------------------------------- | ------------------------------------------------------------ |
596e41f4b71Sopenharmony_ci| Promise\<Array\<[SignalInformation](#signalinformation)\>\> | Promise used to return the result, which is a list of child class objects derived from [SignalInformation](#signalinformation).|
597e41f4b71Sopenharmony_ci
598e41f4b71Sopenharmony_ci**Error codes**
599e41f4b71Sopenharmony_ci
600e41f4b71Sopenharmony_ciFor details about the error codes, see[ohos.telephony (Telephony) Error Codes](errorcode-telephony.md).
601e41f4b71Sopenharmony_ci
602e41f4b71Sopenharmony_ci| ID|                 Error Message                    |
603e41f4b71Sopenharmony_ci| -------- | -------------------------------------------- |
604e41f4b71Sopenharmony_ci| 401      | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types.                             |
605e41f4b71Sopenharmony_ci| 8300001  | Invalid parameter value.                     |
606e41f4b71Sopenharmony_ci| 8300002  | Service connection failed.                   |
607e41f4b71Sopenharmony_ci| 8300003  | System internal error.                       |
608e41f4b71Sopenharmony_ci| 8300999  | Unknown error.                               |
609e41f4b71Sopenharmony_ci
610e41f4b71Sopenharmony_ci**Example**
611e41f4b71Sopenharmony_ci
612e41f4b71Sopenharmony_ci```ts
613e41f4b71Sopenharmony_ciimport { BusinessError } from '@kit.BasicServicesKit';
614e41f4b71Sopenharmony_ci
615e41f4b71Sopenharmony_cilet slotId: number = 0;
616e41f4b71Sopenharmony_ciradio.getSignalInformation(slotId).then((data: Array<radio.SignalInformation>) => {
617e41f4b71Sopenharmony_ci    console.log(`getSignalInformation success, promise: data->${JSON.stringify(data)}`);
618e41f4b71Sopenharmony_ci}).catch((err: BusinessError) => {
619e41f4b71Sopenharmony_ci    console.error(`getSignalInformation failed, promise: err->${JSON.stringify(err)}`);
620e41f4b71Sopenharmony_ci});
621e41f4b71Sopenharmony_ci```
622e41f4b71Sopenharmony_ci
623e41f4b71Sopenharmony_ci## radio.getSignalInformationSync<sup>10+</sup>
624e41f4b71Sopenharmony_ci
625e41f4b71Sopenharmony_cigetSignalInformationSync\(slotId: number\): Array\<SignalInformation\>
626e41f4b71Sopenharmony_ci
627e41f4b71Sopenharmony_ciObtains a list of signal strengths of the network with which the SIM card in the specified slot is registered.
628e41f4b71Sopenharmony_ci
629e41f4b71Sopenharmony_ci**System capability**: SystemCapability.Telephony.CoreService
630e41f4b71Sopenharmony_ci
631e41f4b71Sopenharmony_ci**Parameters**
632e41f4b71Sopenharmony_ci
633e41f4b71Sopenharmony_ci| Name| Type  | Mandatory| Description                                  |
634e41f4b71Sopenharmony_ci| ------ | ------ | ---- | -------------------------------------- |
635e41f4b71Sopenharmony_ci| slotId | number | Yes  | Card slot ID.<br>- **0**: card slot 1<br>- **1**: card slot 2|
636e41f4b71Sopenharmony_ci
637e41f4b71Sopenharmony_ci**Return value**
638e41f4b71Sopenharmony_ci
639e41f4b71Sopenharmony_ci| Type                                                       | Description                                                        |
640e41f4b71Sopenharmony_ci| ----------------------------------------------------------- | ------------------------------------------------------------ |
641e41f4b71Sopenharmony_ci| Array\<[SignalInformation](#signalinformation)\>| Array of child class objects derived from [SignalInformation](#signalinformation).|
642e41f4b71Sopenharmony_ci
643e41f4b71Sopenharmony_ci
644e41f4b71Sopenharmony_ci**Example**
645e41f4b71Sopenharmony_ci
646e41f4b71Sopenharmony_ci```ts
647e41f4b71Sopenharmony_cilet slotId: number = 0;
648e41f4b71Sopenharmony_cilet signalInfo: Array<radio.SignalInformation> = radio.getSignalInformationSync(slotId);
649e41f4b71Sopenharmony_ciconsole.log(`signal information size is:` + signalInfo.length);
650e41f4b71Sopenharmony_ci```
651e41f4b71Sopenharmony_ci
652e41f4b71Sopenharmony_ci## radio.isNrSupported<sup>8+(deprecated)</sup>
653e41f4b71Sopenharmony_ci
654e41f4b71Sopenharmony_ciisNrSupported\(\): boolean
655e41f4b71Sopenharmony_ci
656e41f4b71Sopenharmony_ciCheck whether the current device supports NR.
657e41f4b71Sopenharmony_ci
658e41f4b71Sopenharmony_ci> **NOTE**
659e41f4b71Sopenharmony_ci>
660e41f4b71Sopenharmony_ci> This API is supported since API version 7 and deprecated since API version 9. You are advised to use [isNRSupported](#radioisnrsupported9).
661e41f4b71Sopenharmony_ci
662e41f4b71Sopenharmony_ci**System capability**: SystemCapability.Telephony.CoreService
663e41f4b71Sopenharmony_ci
664e41f4b71Sopenharmony_ci**Return value**
665e41f4b71Sopenharmony_ci
666e41f4b71Sopenharmony_ci| Type   | Description                            |
667e41f4b71Sopenharmony_ci| ------- | -------------------------------- |
668e41f4b71Sopenharmony_ci| boolean | - **true**: The current device supports 5G \(NR\).<br>- **false**: The current device does not support 5G \(NR\).|
669e41f4b71Sopenharmony_ci
670e41f4b71Sopenharmony_ci**Example**
671e41f4b71Sopenharmony_ci
672e41f4b71Sopenharmony_ci```ts
673e41f4b71Sopenharmony_cilet result: boolean = radio.isNrSupported();
674e41f4b71Sopenharmony_ciconsole.log("Result: "+ result);
675e41f4b71Sopenharmony_ci```
676e41f4b71Sopenharmony_ci
677e41f4b71Sopenharmony_ci## radio.isNrSupported<sup>(deprecated)</sup>
678e41f4b71Sopenharmony_ci
679e41f4b71Sopenharmony_ciisNrSupported\(slotId: number\): boolean
680e41f4b71Sopenharmony_ci
681e41f4b71Sopenharmony_ciCheck whether the SIM card in the specified slot supports NR.
682e41f4b71Sopenharmony_ci
683e41f4b71Sopenharmony_ci> **NOTE**
684e41f4b71Sopenharmony_ci>
685e41f4b71Sopenharmony_ci> This API is supported since API version 8 and deprecated since API version 9. You are advised to use [isNRSupported](#radioisnrsupported9-1).
686e41f4b71Sopenharmony_ci
687e41f4b71Sopenharmony_ci**System capability**: SystemCapability.Telephony.CoreService
688e41f4b71Sopenharmony_ci
689e41f4b71Sopenharmony_ci**Parameters**
690e41f4b71Sopenharmony_ci
691e41f4b71Sopenharmony_ci| Name| Type  | Mandatory| Description                                  |
692e41f4b71Sopenharmony_ci| ------ | ------ | ---- | -------------------------------------- |
693e41f4b71Sopenharmony_ci| slotId | number | Yes  | Card slot ID.<br>- **0**: card slot 1<br>- **1**: card slot 2|
694e41f4b71Sopenharmony_ci
695e41f4b71Sopenharmony_ci**Return value**
696e41f4b71Sopenharmony_ci
697e41f4b71Sopenharmony_ci| Type              | Description                                                        |
698e41f4b71Sopenharmony_ci| ------------------ | ------------------------------------------------------------ |
699e41f4b71Sopenharmony_ci| boolean | - **true**: The current device supports 5G \(NR\).<br>- **false**: The current device does not support 5G \(NR\).|
700e41f4b71Sopenharmony_ci
701e41f4b71Sopenharmony_ci**Example**
702e41f4b71Sopenharmony_ci
703e41f4b71Sopenharmony_ci```ts
704e41f4b71Sopenharmony_cilet slotId: number = 0;
705e41f4b71Sopenharmony_cilet result: boolean = radio.isNrSupported(slotId);
706e41f4b71Sopenharmony_ciconsole.log("Result: "+ result);
707e41f4b71Sopenharmony_ci```
708e41f4b71Sopenharmony_ci
709e41f4b71Sopenharmony_ci
710e41f4b71Sopenharmony_ci## radio.isNRSupported<sup>9+</sup>
711e41f4b71Sopenharmony_ci
712e41f4b71Sopenharmony_ciisNRSupported\(\): boolean
713e41f4b71Sopenharmony_ci
714e41f4b71Sopenharmony_ciCheck whether the current device supports NR.
715e41f4b71Sopenharmony_ci
716e41f4b71Sopenharmony_ci**System capability**: SystemCapability.Telephony.CoreService
717e41f4b71Sopenharmony_ci
718e41f4b71Sopenharmony_ci**Return value**
719e41f4b71Sopenharmony_ci
720e41f4b71Sopenharmony_ci| Type   | Description                            |
721e41f4b71Sopenharmony_ci| ------- | -------------------------------- |
722e41f4b71Sopenharmony_ci| boolean | - **true**: The current device supports 5G \(NR\).<br>- **false**: The current device does not support 5G \(NR\).|
723e41f4b71Sopenharmony_ci
724e41f4b71Sopenharmony_ci**Example**
725e41f4b71Sopenharmony_ci
726e41f4b71Sopenharmony_ci```ts
727e41f4b71Sopenharmony_cilet result: boolean = radio.isNRSupported();
728e41f4b71Sopenharmony_ciconsole.log("Result: "+ result);
729e41f4b71Sopenharmony_ci```
730e41f4b71Sopenharmony_ci
731e41f4b71Sopenharmony_ci
732e41f4b71Sopenharmony_ci## radio.isNRSupported<sup>9+</sup>
733e41f4b71Sopenharmony_ci
734e41f4b71Sopenharmony_ciisNRSupported\(slotId: number\): boolean
735e41f4b71Sopenharmony_ci
736e41f4b71Sopenharmony_ciCheck whether the SIM card in the specified slot supports NR.
737e41f4b71Sopenharmony_ci
738e41f4b71Sopenharmony_ci**System capability**: SystemCapability.Telephony.CoreService
739e41f4b71Sopenharmony_ci
740e41f4b71Sopenharmony_ci**Parameters**
741e41f4b71Sopenharmony_ci
742e41f4b71Sopenharmony_ci| Name| Type  | Mandatory| Description                                  |
743e41f4b71Sopenharmony_ci| ------ | ------ | ---- | -------------------------------------- |
744e41f4b71Sopenharmony_ci| slotId | number | Yes  | Card slot ID.<br>- **0**: card slot 1<br>- **1**: card slot 2|
745e41f4b71Sopenharmony_ci
746e41f4b71Sopenharmony_ci**Return value**
747e41f4b71Sopenharmony_ci
748e41f4b71Sopenharmony_ci| Type              | Description                                                        |
749e41f4b71Sopenharmony_ci| ------------------ | ------------------------------------------------------------ |
750e41f4b71Sopenharmony_ci| boolean | - **true**: The current device supports 5G \(NR\).<br>- **false**: The current device does not support 5G \(NR\).|
751e41f4b71Sopenharmony_ci
752e41f4b71Sopenharmony_ci**Example**
753e41f4b71Sopenharmony_ci
754e41f4b71Sopenharmony_ci```ts
755e41f4b71Sopenharmony_cilet slotId: number = 0;
756e41f4b71Sopenharmony_cilet result: boolean = radio.isNRSupported(slotId);
757e41f4b71Sopenharmony_ciconsole.log("Result: "+ result);
758e41f4b71Sopenharmony_ci```
759e41f4b71Sopenharmony_ci
760e41f4b71Sopenharmony_ci
761e41f4b71Sopenharmony_ci## radio.isRadioOn<sup>7+</sup>
762e41f4b71Sopenharmony_ci
763e41f4b71Sopenharmony_ciisRadioOn\(callback: AsyncCallback\<boolean\>\): void
764e41f4b71Sopenharmony_ci
765e41f4b71Sopenharmony_ciChecks whether the radio service is enabled on the primary SIM card. This API uses an asynchronous callback to return the result.
766e41f4b71Sopenharmony_ci
767e41f4b71Sopenharmony_ci**Required permission**: ohos.permission.GET_NETWORK_INFO
768e41f4b71Sopenharmony_ci
769e41f4b71Sopenharmony_ci**System capability**: SystemCapability.Telephony.CoreService
770e41f4b71Sopenharmony_ci
771e41f4b71Sopenharmony_ci**Parameters**
772e41f4b71Sopenharmony_ci
773e41f4b71Sopenharmony_ci| Name  | Type                    | Mandatory| Description                                                   |
774e41f4b71Sopenharmony_ci| -------- | ------------------------ | ---- | ------------------------------------------------------- |
775e41f4b71Sopenharmony_ci| callback | AsyncCallback\<boolean\> | Yes  | Callback used to return the result.  <br>- **true**: The radio service is enabled.<br>- **false**: The radio service is disabled.|
776e41f4b71Sopenharmony_ci
777e41f4b71Sopenharmony_ci**Error codes**
778e41f4b71Sopenharmony_ci
779e41f4b71Sopenharmony_ciFor details about the error codes, see[ohos.telephony (Telephony) Error Codes](errorcode-telephony.md).
780e41f4b71Sopenharmony_ci
781e41f4b71Sopenharmony_ci| ID|                  Error Message                   |
782e41f4b71Sopenharmony_ci| -------- | -------------------------------------------- |
783e41f4b71Sopenharmony_ci| 201      | Permission denied.                           |
784e41f4b71Sopenharmony_ci| 401      | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types.                             |
785e41f4b71Sopenharmony_ci| 8300001  | Invalid parameter value.                     |
786e41f4b71Sopenharmony_ci| 8300002  | Service connection failed.                   |
787e41f4b71Sopenharmony_ci| 8300003  | System internal error.                       |
788e41f4b71Sopenharmony_ci| 8300999  | Unknown error.                               |
789e41f4b71Sopenharmony_ci
790e41f4b71Sopenharmony_ci**Example**
791e41f4b71Sopenharmony_ci
792e41f4b71Sopenharmony_ci```ts
793e41f4b71Sopenharmony_ciimport { BusinessError } from '@kit.BasicServicesKit';
794e41f4b71Sopenharmony_ci
795e41f4b71Sopenharmony_ciradio.isRadioOn((err: BusinessError, data: boolean) => {
796e41f4b71Sopenharmony_ci    if (err) {
797e41f4b71Sopenharmony_ci        console.error(`isRadioOn failed, callback: err->${JSON.stringify(err)}`);
798e41f4b71Sopenharmony_ci        return;
799e41f4b71Sopenharmony_ci    }
800e41f4b71Sopenharmony_ci    console.log(`isRadioOn success, callback: data->${JSON.stringify(data)}`);
801e41f4b71Sopenharmony_ci});
802e41f4b71Sopenharmony_ci```
803e41f4b71Sopenharmony_ci
804e41f4b71Sopenharmony_ci
805e41f4b71Sopenharmony_ci## radio.isRadioOn<sup>7+</sup>
806e41f4b71Sopenharmony_ci
807e41f4b71Sopenharmony_ciisRadioOn\(slotId: number, callback: AsyncCallback\<boolean\>\): void
808e41f4b71Sopenharmony_ci
809e41f4b71Sopenharmony_ciChecks whether the radio service is enabled on the SIM card in the specified slot. This API uses an asynchronous callback to return the result.
810e41f4b71Sopenharmony_ci
811e41f4b71Sopenharmony_ci**Required permission**: ohos.permission.GET_NETWORK_INFO
812e41f4b71Sopenharmony_ci
813e41f4b71Sopenharmony_ci**System capability**: SystemCapability.Telephony.CoreService
814e41f4b71Sopenharmony_ci
815e41f4b71Sopenharmony_ci**Parameters**
816e41f4b71Sopenharmony_ci
817e41f4b71Sopenharmony_ci| Name  | Type                    | Mandatory| Description                                                   |
818e41f4b71Sopenharmony_ci| -------- | ------------------------ | ---- | ------------------------------------------------------- |
819e41f4b71Sopenharmony_ci| slotId   | number                   | Yes  | Card slot ID.<br>- **0**: card slot 1<br>- **1**: card slot 2                 |
820e41f4b71Sopenharmony_ci| callback | AsyncCallback\<boolean\> | Yes  | Callback used to return the result.  <br>- **true**: The radio service is enabled.<br>- **false**: The radio service is disabled.|
821e41f4b71Sopenharmony_ci
822e41f4b71Sopenharmony_ci**Error codes**
823e41f4b71Sopenharmony_ci
824e41f4b71Sopenharmony_ciFor details about the error codes, see[ohos.telephony (Telephony) Error Codes](errorcode-telephony.md).
825e41f4b71Sopenharmony_ci
826e41f4b71Sopenharmony_ci| ID|                  Error Message                   |
827e41f4b71Sopenharmony_ci| -------- | -------------------------------------------- |
828e41f4b71Sopenharmony_ci| 201      | Permission denied.                           |
829e41f4b71Sopenharmony_ci| 401      | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types.                             |
830e41f4b71Sopenharmony_ci| 8300001  | Invalid parameter value.                     |
831e41f4b71Sopenharmony_ci| 8300002  | Service connection failed.                   |
832e41f4b71Sopenharmony_ci| 8300003  | System internal error.                       |
833e41f4b71Sopenharmony_ci| 8300999  | Unknown error.                               |
834e41f4b71Sopenharmony_ci
835e41f4b71Sopenharmony_ci**Example**
836e41f4b71Sopenharmony_ci
837e41f4b71Sopenharmony_ci```ts
838e41f4b71Sopenharmony_ciimport { BusinessError } from '@kit.BasicServicesKit';
839e41f4b71Sopenharmony_ci
840e41f4b71Sopenharmony_cilet slotId: number = 0;
841e41f4b71Sopenharmony_ciradio.isRadioOn(slotId, (err: BusinessError, data: boolean) => {
842e41f4b71Sopenharmony_ci    if (err) {
843e41f4b71Sopenharmony_ci        console.error(`isRadioOn failed, callback: err->${JSON.stringify(err)}`);
844e41f4b71Sopenharmony_ci        return;
845e41f4b71Sopenharmony_ci    }
846e41f4b71Sopenharmony_ci    console.log(`isRadioOn success, callback: data->${JSON.stringify(data)}`);
847e41f4b71Sopenharmony_ci});
848e41f4b71Sopenharmony_ci```
849e41f4b71Sopenharmony_ci
850e41f4b71Sopenharmony_ci
851e41f4b71Sopenharmony_ci## radio.isRadioOn<sup>7+</sup>
852e41f4b71Sopenharmony_ci
853e41f4b71Sopenharmony_ciisRadioOn\(slotId?: number\): Promise\<boolean\>
854e41f4b71Sopenharmony_ci
855e41f4b71Sopenharmony_ciChecks whether the radio service is enabled on the SIM card in the specified slot. This API uses a promise to return the result.
856e41f4b71Sopenharmony_ci
857e41f4b71Sopenharmony_ci**Required permission**: ohos.permission.GET_NETWORK_INFO
858e41f4b71Sopenharmony_ci
859e41f4b71Sopenharmony_ci**System capability**: SystemCapability.Telephony.CoreService
860e41f4b71Sopenharmony_ci
861e41f4b71Sopenharmony_ci**Parameters**
862e41f4b71Sopenharmony_ci
863e41f4b71Sopenharmony_ci| Name| Type  | Mandatory| Description                                  |
864e41f4b71Sopenharmony_ci| ------ | ------ | ---- | -------------------------------------- |
865e41f4b71Sopenharmony_ci| slotId | number | No  | Card slot ID.<br>- **0**: card slot 1<br>- **1**: card slot 2<br>If the slot ID is not specified, this API is defaulted to check whether the radio service is enabled on the primary SIM card.|
866e41f4b71Sopenharmony_ci
867e41f4b71Sopenharmony_ci**Return value**
868e41f4b71Sopenharmony_ci
869e41f4b71Sopenharmony_ci| Type              | Description                                                        |
870e41f4b71Sopenharmony_ci| ------------------ | ------------------------------------------------------------ |
871e41f4b71Sopenharmony_ci| Promise\<boolean\> | Promise used to return the result.<br>- **true**: The radio service is enabled.<br>- **false**: The radio service is disabled.|
872e41f4b71Sopenharmony_ci
873e41f4b71Sopenharmony_ci**Error codes**
874e41f4b71Sopenharmony_ci
875e41f4b71Sopenharmony_ciFor details about the error codes, see[ohos.telephony (Telephony) Error Codes](errorcode-telephony.md).
876e41f4b71Sopenharmony_ci
877e41f4b71Sopenharmony_ci| ID|                  Error Message                   |
878e41f4b71Sopenharmony_ci| -------- | -------------------------------------------- |
879e41f4b71Sopenharmony_ci| 201      | Permission denied.                           |
880e41f4b71Sopenharmony_ci| 401      | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types.                             |
881e41f4b71Sopenharmony_ci| 8300001  | Invalid parameter value.                     |
882e41f4b71Sopenharmony_ci| 8300002  | Service connection failed.                   |
883e41f4b71Sopenharmony_ci| 8300003  | System internal error.                       |
884e41f4b71Sopenharmony_ci| 8300999  | Unknown error.                               |
885e41f4b71Sopenharmony_ci
886e41f4b71Sopenharmony_ci**Example**
887e41f4b71Sopenharmony_ci
888e41f4b71Sopenharmony_ci```ts
889e41f4b71Sopenharmony_ciimport { BusinessError } from '@kit.BasicServicesKit';
890e41f4b71Sopenharmony_ci
891e41f4b71Sopenharmony_cilet slotId: number = 0;
892e41f4b71Sopenharmony_ciradio.isRadioOn(slotId).then((data: boolean) => {
893e41f4b71Sopenharmony_ci    console.log(`isRadioOn success, promise: data->${JSON.stringify(data)}`);
894e41f4b71Sopenharmony_ci}).catch((err: BusinessError) => {
895e41f4b71Sopenharmony_ci    console.error(`isRadioOn failed, promise: err->${JSON.stringify(err)}`);
896e41f4b71Sopenharmony_ci});
897e41f4b71Sopenharmony_ci```
898e41f4b71Sopenharmony_ci
899e41f4b71Sopenharmony_ci
900e41f4b71Sopenharmony_ci## radio.getOperatorName<sup>7+</sup>
901e41f4b71Sopenharmony_ci
902e41f4b71Sopenharmony_cigetOperatorName\(slotId: number, callback: AsyncCallback\<string\>\): void
903e41f4b71Sopenharmony_ci
904e41f4b71Sopenharmony_ciObtains the carrier name of the SIM card in the specified slot. This API uses an asynchronous callback to return the result.
905e41f4b71Sopenharmony_ci
906e41f4b71Sopenharmony_ci**System capability**: SystemCapability.Telephony.CoreService
907e41f4b71Sopenharmony_ci
908e41f4b71Sopenharmony_ci**Parameters**
909e41f4b71Sopenharmony_ci
910e41f4b71Sopenharmony_ci| Name  | Type                   | Mandatory| Description                                      |
911e41f4b71Sopenharmony_ci| -------- | ----------------------- | ---- | ------------------------------------------ |
912e41f4b71Sopenharmony_ci| slotId   | number                  | Yes  | Card slot ID.<br>- **0**: card slot 1<br>- **1**: card slot 2    |
913e41f4b71Sopenharmony_ci| callback | AsyncCallback\<string\> | Yes  | Callback used to return the result, which is the carrier name, for example, China Mobile.|
914e41f4b71Sopenharmony_ci
915e41f4b71Sopenharmony_ci**Error codes**
916e41f4b71Sopenharmony_ci
917e41f4b71Sopenharmony_ciFor details about the error codes, see[ohos.telephony (Telephony) Error Codes](errorcode-telephony.md).
918e41f4b71Sopenharmony_ci
919e41f4b71Sopenharmony_ci| ID|                 Error Message                    |
920e41f4b71Sopenharmony_ci| -------- | -------------------------------------------- |
921e41f4b71Sopenharmony_ci| 401      | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types.                             |
922e41f4b71Sopenharmony_ci| 8300001  | Invalid parameter value.                     |
923e41f4b71Sopenharmony_ci| 8300002  | Service connection failed.                   |
924e41f4b71Sopenharmony_ci| 8300003  | System internal error.                       |
925e41f4b71Sopenharmony_ci| 8300999  | Unknown error.                               |
926e41f4b71Sopenharmony_ci
927e41f4b71Sopenharmony_ci**Example**
928e41f4b71Sopenharmony_ci
929e41f4b71Sopenharmony_ci```ts
930e41f4b71Sopenharmony_ciimport { BusinessError } from '@kit.BasicServicesKit';
931e41f4b71Sopenharmony_ci
932e41f4b71Sopenharmony_cilet slotId: number = 0;
933e41f4b71Sopenharmony_ciradio.getOperatorName(slotId, (err: BusinessError, data: string) => {
934e41f4b71Sopenharmony_ci    if (err) {
935e41f4b71Sopenharmony_ci        console.error(`getOperatorName failed, callback: err->${JSON.stringify(err)}`);
936e41f4b71Sopenharmony_ci        return;
937e41f4b71Sopenharmony_ci    }
938e41f4b71Sopenharmony_ci    console.log(`getOperatorName success, callback: data->${JSON.stringify(data)}`);
939e41f4b71Sopenharmony_ci});
940e41f4b71Sopenharmony_ci```
941e41f4b71Sopenharmony_ci
942e41f4b71Sopenharmony_ci
943e41f4b71Sopenharmony_ci## radio.getOperatorName<sup>7+</sup>
944e41f4b71Sopenharmony_ci
945e41f4b71Sopenharmony_cigetOperatorName\(slotId: number\): Promise\<string\>
946e41f4b71Sopenharmony_ci
947e41f4b71Sopenharmony_ciObtains the carrier name of the SIM card in the specified slot. This API uses a promise to return the result.
948e41f4b71Sopenharmony_ci
949e41f4b71Sopenharmony_ci**System capability**: SystemCapability.Telephony.CoreService
950e41f4b71Sopenharmony_ci
951e41f4b71Sopenharmony_ci**Parameters**
952e41f4b71Sopenharmony_ci
953e41f4b71Sopenharmony_ci| Name| Type  | Mandatory| Description                                  |
954e41f4b71Sopenharmony_ci| ------ | ------ | ---- | -------------------------------------- |
955e41f4b71Sopenharmony_ci| slotId | number | Yes  | Card slot ID.<br>- **0**: card slot 1<br>- **1**: card slot 2|
956e41f4b71Sopenharmony_ci
957e41f4b71Sopenharmony_ci**Return value**
958e41f4b71Sopenharmony_ci
959e41f4b71Sopenharmony_ci| Type             | Description                                                        |
960e41f4b71Sopenharmony_ci| ----------------- | ------------------------------------------------------------ |
961e41f4b71Sopenharmony_ci| Promise\<string\> | Promise used t return the result, which is the carrier name, for example, China Mobile.               |
962e41f4b71Sopenharmony_ci
963e41f4b71Sopenharmony_ci**Error codes**
964e41f4b71Sopenharmony_ci
965e41f4b71Sopenharmony_ciFor details about the error codes, see[ohos.telephony (Telephony) Error Codes](errorcode-telephony.md).
966e41f4b71Sopenharmony_ci
967e41f4b71Sopenharmony_ci| ID|                 Error Message                    |
968e41f4b71Sopenharmony_ci| -------- | -------------------------------------------- |
969e41f4b71Sopenharmony_ci| 401      | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types.                             |
970e41f4b71Sopenharmony_ci| 8300001  | Invalid parameter value.                     |
971e41f4b71Sopenharmony_ci| 8300002  | Service connection failed.                   |
972e41f4b71Sopenharmony_ci| 8300003  | System internal error.                       |
973e41f4b71Sopenharmony_ci| 8300999  | Unknown error.                               |
974e41f4b71Sopenharmony_ci
975e41f4b71Sopenharmony_ci**Example**
976e41f4b71Sopenharmony_ci
977e41f4b71Sopenharmony_ci```ts
978e41f4b71Sopenharmony_ciimport { BusinessError } from '@kit.BasicServicesKit';
979e41f4b71Sopenharmony_ci
980e41f4b71Sopenharmony_cilet slotId: number = 0;
981e41f4b71Sopenharmony_ciradio.getOperatorName(slotId).then((data: string) => {
982e41f4b71Sopenharmony_ci    console.log(`getOperatorName success, promise: data->${JSON.stringify(data)}`);
983e41f4b71Sopenharmony_ci}).catch((err: BusinessError) => {
984e41f4b71Sopenharmony_ci    console.error(`getOperatorName failed, promise: err->${JSON.stringify(err)}`);
985e41f4b71Sopenharmony_ci});
986e41f4b71Sopenharmony_ci```
987e41f4b71Sopenharmony_ci
988e41f4b71Sopenharmony_ci## radio.getOperatorNameSync<sup>10+</sup>
989e41f4b71Sopenharmony_ci
990e41f4b71Sopenharmony_cigetOperatorNameSync\(slotId: number\): string
991e41f4b71Sopenharmony_ci
992e41f4b71Sopenharmony_ciObtains the carrier name of the SIM card in the specified slot.
993e41f4b71Sopenharmony_ci
994e41f4b71Sopenharmony_ci**System capability**: SystemCapability.Telephony.CoreService
995e41f4b71Sopenharmony_ci
996e41f4b71Sopenharmony_ci**Parameters**
997e41f4b71Sopenharmony_ci
998e41f4b71Sopenharmony_ci| Name| Type  | Mandatory| Description                                  |
999e41f4b71Sopenharmony_ci| ------ | ------ | ---- | -------------------------------------- |
1000e41f4b71Sopenharmony_ci| slotId | number | Yes  | Card slot ID.<br>- **0**: card slot 1<br>- **1**: card slot 2|
1001e41f4b71Sopenharmony_ci
1002e41f4b71Sopenharmony_ci**Return value**
1003e41f4b71Sopenharmony_ci
1004e41f4b71Sopenharmony_ci| Type             | Description                                                        |
1005e41f4b71Sopenharmony_ci| ----------------- | ------------------------------------------------------------ |
1006e41f4b71Sopenharmony_ci| string | Carrier name, for example, China Mobile.               |
1007e41f4b71Sopenharmony_ci
1008e41f4b71Sopenharmony_ci
1009e41f4b71Sopenharmony_ci**Example**
1010e41f4b71Sopenharmony_ci
1011e41f4b71Sopenharmony_ci```ts
1012e41f4b71Sopenharmony_cilet slotId: number = 0;
1013e41f4b71Sopenharmony_cilet operatorName: string = radio.getOperatorNameSync(slotId);
1014e41f4b71Sopenharmony_ciconsole.log(`operator name is:` + operatorName);
1015e41f4b71Sopenharmony_ci```
1016e41f4b71Sopenharmony_ci
1017e41f4b71Sopenharmony_ci
1018e41f4b71Sopenharmony_ci## NetworkRadioTech<sup>11+</sup>
1019e41f4b71Sopenharmony_ci
1020e41f4b71Sopenharmony_ciDefines the radio access technology for the packet switched (PS) or circuit switched (CS) network.
1021e41f4b71Sopenharmony_ci
1022e41f4b71Sopenharmony_ci**System capability**: SystemCapability.Telephony.CoreService
1023e41f4b71Sopenharmony_ci
1024e41f4b71Sopenharmony_ci|      Name      |           Type             | Mandatory|      Description         |
1025e41f4b71Sopenharmony_ci| --------------- | --------------------------- | ---- | ------------------ |
1026e41f4b71Sopenharmony_ci| psRadioTech     | [RadioTechnology](#radiotechnology) | Yes  | PS.|
1027e41f4b71Sopenharmony_ci| csRadioTech     | [RadioTechnology](#radiotechnology) | Yes  | CS.|
1028e41f4b71Sopenharmony_ci
1029e41f4b71Sopenharmony_ci## RadioTechnology
1030e41f4b71Sopenharmony_ci
1031e41f4b71Sopenharmony_ciEnumerates radio access technologies.
1032e41f4b71Sopenharmony_ci
1033e41f4b71Sopenharmony_ci**System capability**: SystemCapability.Telephony.CoreService
1034e41f4b71Sopenharmony_ci
1035e41f4b71Sopenharmony_ci| Name                     | Value  | Description                                                        |
1036e41f4b71Sopenharmony_ci| ------------------------- | ---- | ------------------------------------------------------------ |
1037e41f4b71Sopenharmony_ci| RADIO_TECHNOLOGY_UNKNOWN  | 0    | Unknown RAT                                   |
1038e41f4b71Sopenharmony_ci| RADIO_TECHNOLOGY_GSM      | 1    | Global System for Mobile Communication (GSM) |
1039e41f4b71Sopenharmony_ci| RADIO_TECHNOLOGY_1XRTT    | 2    | Single-Carrier Radio Transmission Technology (1XRTT)|
1040e41f4b71Sopenharmony_ci| RADIO_TECHNOLOGY_WCDMA    | 3    | Wideband Code Division Multiple Access (WCDMA)|
1041e41f4b71Sopenharmony_ci| RADIO_TECHNOLOGY_HSPA     | 4    | High Speed Packet Access (HSPA)              |
1042e41f4b71Sopenharmony_ci| RADIO_TECHNOLOGY_HSPAP    | 5    | Evolved High Speed Packet Access (HSPA+)    |
1043e41f4b71Sopenharmony_ci| RADIO_TECHNOLOGY_TD_SCDMA | 6    | TD-SCDMA.|
1044e41f4b71Sopenharmony_ci| RADIO_TECHNOLOGY_EVDO     | 7    | Evolution-Data Optimized (EVDO)                  |
1045e41f4b71Sopenharmony_ci| RADIO_TECHNOLOGY_EHRPD    | 8    | Evolved High Rate Package Data (EHRPD)       |
1046e41f4b71Sopenharmony_ci| RADIO_TECHNOLOGY_LTE      | 9    | Long Term Evolution (LTE)                    |
1047e41f4b71Sopenharmony_ci| RADIO_TECHNOLOGY_LTE_CA   | 10   | Long Term Evolution_Carrier Aggregation (LTE_CA)|
1048e41f4b71Sopenharmony_ci| RADIO_TECHNOLOGY_IWLAN    | 11   | Industrial Wireless LAN (IWLAN)              |
1049e41f4b71Sopenharmony_ci| RADIO_TECHNOLOGY_NR       | 12   | New Radio (NR)                               |
1050e41f4b71Sopenharmony_ci
1051e41f4b71Sopenharmony_ci
1052e41f4b71Sopenharmony_ci## SignalInformation
1053e41f4b71Sopenharmony_ci
1054e41f4b71Sopenharmony_ciDefines the signal strength.
1055e41f4b71Sopenharmony_ci
1056e41f4b71Sopenharmony_ci**System capability**: SystemCapability.Telephony.CoreService
1057e41f4b71Sopenharmony_ci
1058e41f4b71Sopenharmony_ci|      Name      |           Type             | Mandatory|      Description         |
1059e41f4b71Sopenharmony_ci| --------------- | --------------------------- | ---- | ------------------ |
1060e41f4b71Sopenharmony_ci| signalType      | [NetworkType](#networktype) | Yes  | Signal strength type.|
1061e41f4b71Sopenharmony_ci| signalLevel     | number                      | Yes  | Signal strength level.|
1062e41f4b71Sopenharmony_ci| dBm<sup>9+</sup>| number                      | Yes  | Signal strength, in dBm.    |
1063e41f4b71Sopenharmony_ci
1064e41f4b71Sopenharmony_ci## NetworkType
1065e41f4b71Sopenharmony_ci
1066e41f4b71Sopenharmony_ciEnumerates network types.
1067e41f4b71Sopenharmony_ci
1068e41f4b71Sopenharmony_ci**System capability**: SystemCapability.Telephony.CoreService
1069e41f4b71Sopenharmony_ci
1070e41f4b71Sopenharmony_ci| Name                | Value  | Description                                                        |
1071e41f4b71Sopenharmony_ci| -------------------- | ---- | ------------------------------------------------------------ |
1072e41f4b71Sopenharmony_ci| NETWORK_TYPE_UNKNOWN | 0    | Unknown network.                                              |
1073e41f4b71Sopenharmony_ci| NETWORK_TYPE_GSM     | 1    | GSM network.   |
1074e41f4b71Sopenharmony_ci| NETWORK_TYPE_CDMA    | 2    | CDMA network.           |
1075e41f4b71Sopenharmony_ci| NETWORK_TYPE_WCDMA   | 3    | WCDMA network. |
1076e41f4b71Sopenharmony_ci| NETWORK_TYPE_TDSCDMA | 4    | TD-SCDMA network.|
1077e41f4b71Sopenharmony_ci| NETWORK_TYPE_LTE     | 5    | LTE network.                      |
1078e41f4b71Sopenharmony_ci| NETWORK_TYPE_NR      | 6    | NR network.                              |
1079e41f4b71Sopenharmony_ci
1080e41f4b71Sopenharmony_ci## NetworkState
1081e41f4b71Sopenharmony_ci
1082e41f4b71Sopenharmony_ciDefines the network status.
1083e41f4b71Sopenharmony_ci
1084e41f4b71Sopenharmony_ci**System capability**: SystemCapability.Telephony.CoreService
1085e41f4b71Sopenharmony_ci
1086e41f4b71Sopenharmony_ci|       Name          |                 Type               | Mandatory|                          Description                               |
1087e41f4b71Sopenharmony_ci| -------------------- | ----------------------------------- | ---- | ------------------------------------------------------------ |
1088e41f4b71Sopenharmony_ci| longOperatorName     | string                              |  Yes | Long carrier name of the registered network.                                    |
1089e41f4b71Sopenharmony_ci| shortOperatorName    | string                              |  Yes | Short carrier name of the registered network.                                    |
1090e41f4b71Sopenharmony_ci| plmnNumeric          | string                              |  Yes | PLMN code of the registered network.                                          |
1091e41f4b71Sopenharmony_ci| isRoaming            | boolean                             |  Yes | Whether the user is roaming.                                          |
1092e41f4b71Sopenharmony_ci| regState             | [RegState](#regstate)               |  Yes | Network registration status of the device.                                        |
1093e41f4b71Sopenharmony_ci| cfgTech<sup>8+</sup> | [RadioTechnology](#radiotechnology) |  Yes | RAT of the device.                                        |
1094e41f4b71Sopenharmony_ci| nsaState             | [NsaState](#nsastate)               |  Yes | NSA network registration status of the device.                                     |
1095e41f4b71Sopenharmony_ci| isCaActive           | boolean                             |  Yes | CA status.                                                  |
1096e41f4b71Sopenharmony_ci| isEmergency          | boolean                             |  Yes | Whether only emergency calls are allowed.                              |
1097e41f4b71Sopenharmony_ci
1098e41f4b71Sopenharmony_ci
1099e41f4b71Sopenharmony_ci## RegState
1100e41f4b71Sopenharmony_ci
1101e41f4b71Sopenharmony_ciDefines the network registration status of the device.
1102e41f4b71Sopenharmony_ci
1103e41f4b71Sopenharmony_ci**System capability**: SystemCapability.Telephony.CoreService
1104e41f4b71Sopenharmony_ci
1105e41f4b71Sopenharmony_ci| Name                         | Value  | Description                      |
1106e41f4b71Sopenharmony_ci| ----------------------------- | ---- | -------------------------- |
1107e41f4b71Sopenharmony_ci| REG_STATE_NO_SERVICE          | 0    | The device cannot use any services, including data, SMS, and call services.    |
1108e41f4b71Sopenharmony_ci| REG_STATE_IN_SERVICE          | 1    | The device can use services properly, including data, SMS, and call services.    |
1109e41f4b71Sopenharmony_ci| REG_STATE_EMERGENCY_CALL_ONLY | 2    | The device can use only the emergency call service.|
1110e41f4b71Sopenharmony_ci| REG_STATE_POWER_OFF           | 3    | The device cannot communicate with the network because the cellular radio service is disabled or the modem is powered off.     |
1111e41f4b71Sopenharmony_ci
1112e41f4b71Sopenharmony_ci
1113e41f4b71Sopenharmony_ci## NsaState
1114e41f4b71Sopenharmony_ci
1115e41f4b71Sopenharmony_ciEnumerates NSA network states.
1116e41f4b71Sopenharmony_ci
1117e41f4b71Sopenharmony_ci**System capability**: SystemCapability.Telephony.CoreService
1118e41f4b71Sopenharmony_ci
1119e41f4b71Sopenharmony_ci| Name                      | Value  | Description                                                      |
1120e41f4b71Sopenharmony_ci| -------------------------- | ---- | ---------------------------------------------------------- |
1121e41f4b71Sopenharmony_ci| NSA_STATE_NOT_SUPPORT      | 1    | The device is in idle or connected state in an LTE cell that does not support NSA.        |
1122e41f4b71Sopenharmony_ci| NSA_STATE_NO_DETECT        | 2    | The device is in the idle state in an LTE cell that supports NSA but not NR coverage detection.|
1123e41f4b71Sopenharmony_ci| NSA_STATE_CONNECTED_DETECT | 3    | The device is connected to the LTE network in an LTE cell that supports NSA and NR coverage detection.         |
1124e41f4b71Sopenharmony_ci| NSA_STATE_IDLE_DETECT      | 4    | The device is in the idle state in an LTE cell that supports NSA and NR coverage detection.          |
1125e41f4b71Sopenharmony_ci| NSA_STATE_DUAL_CONNECTED   | 5    | The device is connected to the LTE/NR network in an LTE cell that supports NSA.              |
1126e41f4b71Sopenharmony_ci| NSA_STATE_SA_ATTACHED      | 6    | The device is idle or connected to the NG-RAN cell when being attached to the 5G Core.     |
1127e41f4b71Sopenharmony_ci
1128e41f4b71Sopenharmony_ci
1129e41f4b71Sopenharmony_ci## NetworkSelectionMode
1130e41f4b71Sopenharmony_ci
1131e41f4b71Sopenharmony_ciEnumerates network selection modes.
1132e41f4b71Sopenharmony_ci
1133e41f4b71Sopenharmony_ci**System capability**: SystemCapability.Telephony.CoreService
1134e41f4b71Sopenharmony_ci
1135e41f4b71Sopenharmony_ci| Name                       | Value  | Description          |
1136e41f4b71Sopenharmony_ci| --------------------------- | ---- | -------------- |
1137e41f4b71Sopenharmony_ci| NETWORK_SELECTION_UNKNOWN   | 0    | Unknown network selection mode.|
1138e41f4b71Sopenharmony_ci| NETWORK_SELECTION_AUTOMATIC | 1    | Automatic network selection mode.|
1139e41f4b71Sopenharmony_ci| NETWORK_SELECTION_MANUAL    | 2    | Manual network selection mode.|
1140e41f4b71Sopenharmony_ci
1141e41f4b71Sopenharmony_ci
1142e41f4b71Sopenharmony_ci## CellInformation<sup>8+</sup>
1143e41f4b71Sopenharmony_ci
1144e41f4b71Sopenharmony_ciDefines the cell information.
1145e41f4b71Sopenharmony_ci
1146e41f4b71Sopenharmony_ci**System capability**: SystemCapability.Telephony.CoreService
1147e41f4b71Sopenharmony_ci
1148e41f4b71Sopenharmony_ci| Name             |                  Type                  | Mandatory|                           Description                              |
1149e41f4b71Sopenharmony_ci| ----------------- | --------------------------------------- | ---- | ------------------------------------------------------------ |
1150e41f4b71Sopenharmony_ci| networkType       | [NetworkType](#networktype)             |  Yes | Network type of the cell.                                    |
1151e41f4b71Sopenharmony_ci| signalInformation | [SignalInformation](#signalinformation) |  Yes | Signal information.                                                  |
1152