@ohos.telephony.sim (SIM Management)

The sim module provides basic SIM card management functions. You can obtain the name, number, ISO country code, home PLMN number, service provider name, SIM card status, type, installation status, activation status, and lock status of the SIM card in the specified slot. Besides, you can set the name, number, and lock status of the SIM card, activate or deactivate the SIM card, and change the PIN or unlock the PIN or PUK of the SIM card.

NOTE

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.

Modules to Import

import sim from '@ohos.telephony.sim';

sim.isSimActive7+

isSimActive(slotId: number, callback: AsyncCallback<boolean>): void

Checks whether the SIM card in the specified slot is activated. This API uses an asynchronous callback to return the result.

System capability: SystemCapability.Telephony.CoreService

Parameters

Name Type Mandatory Description
slotId number Yes Card slot ID.
- 0: card slot 1
- 1: card slot 2
callback AsyncCallback<boolean> Yes Callback used to return the result.

Example

sim.isSimActive(0, (err, data) => {
    console.log(`callback: err->${JSON.stringify(err)}, data->${JSON.stringify(data)}`);
});

sim.isSimActive7+

isSimActive(slotId: number): Promise<boolean>

Checks whether the SIM card in the specified slot is activated. This API uses a promise to return the result.

System capability: SystemCapability.Telephony.CoreService

Parameters

Name Type Mandatory Description
slotId number Yes Card slot ID.
- 0: card slot 1
- 1: card slot 2

Return value

Type Description
Promise<boolean> Promise used to return the result. The value true indicates that the SIM card in the specified slot is activated, and the value false indicates the opposite.

Example

let promise = sim.isSimActive(0);
promise.then(data => {
    console.log(`isSimActive success, promise: data->${JSON.stringify(data)}`);
}).catch(err => {
    console.log(`isSimActive failed, promise: err->${JSON.stringify(err)}`);
});

sim.getDefaultVoiceSlotId7+

getDefaultVoiceSlotId(callback: AsyncCallback<number>): void

Obtains the default slot ID of the SIM card that provides voice services. This API uses an asynchronous callback to return the result.

System capability: SystemCapability.Telephony.CoreService

Parameters

Name Type Mandatory Description
callback AsyncCallback<number> Yes Callback used to return the result.

Example

sim.getDefaultVoiceSlotId((err, data) => {
    console.log(`callback: err->${JSON.stringify(err)}, data->${JSON.stringify(data)}`);
});

sim.getDefaultVoiceSlotId7+

getDefaultVoiceSlotId(): Promise<number>

Obtains the default slot ID of the SIM card that provides voice services. This API uses a promise to return the result.

System capability: SystemCapability.Telephony.CoreService

Return value

Type Description
Promise<number> Promise used to return the result.

Example

let promise = sim.getDefaultVoiceSlotId();
promise.then(data => {
    console.log(`getDefaultVoiceSlotId success, promise: data->${JSON.stringify(data)}`);
}).catch(err => {
    console.log(`getDefaultVoiceSlotId failed, promise: err->${JSON.stringify(err)}`);
});

sim.hasOperatorPrivileges7+

hasOperatorPrivileges(slotId: number, callback: AsyncCallback<boolean>): void

Checks whether the application (caller) has been granted the operator permission. This API uses an asynchronous callback to return the result.

System capability: SystemCapability.Telephony.CoreService

Parameters

Name Type Mandatory Description
slotId number Yes Card slot ID.
- 0: card slot 1
- 1: card slot 2
callback AsyncCallback<boolean> Yes Callback used to return the result.

Error codes

For details about the following error codes, see Telephony Error Codes.

ID Error Message
401 Parameter error.
8300001 Invalid parameter value.
8300002 Operation failed. Cannot connect to service.
8300003 System internal error.
8300999 Unknown error code.

Example

sim.hasOperatorPrivileges(0, (err, data) => {
    console.log(`callback: err->${JSON.stringify(err)}, data->${JSON.stringify(data)}`);
});

sim.hasOperatorPrivileges7+

hasOperatorPrivileges(slotId: number): Promise<boolean>

Checks whether the application (caller) has been granted the operator permission. This API uses a promise to return the result.

System capability: SystemCapability.Telephony.CoreService

Parameters

Name Type Mandatory Description
slotId number Yes Card slot ID.
- 0: card slot 1
- 1: card slot 2

Return value

Type Description
Promise<boolean> Promise used to return the result. The value true indicates that the application (caller) has been granted the carrier permission, and the value false indicates the opposite.

Error codes

For details about the following error codes, see Telephony Error Codes.

ID Error Message
401 Parameter error.
8300001 Invalid parameter value.
8300002 Operation failed. Cannot connect to service.
8300003 System internal error.
8300999 Unknown error code.

Example

let promise = sim.hasOperatorPrivileges(0);
promise.then(data => {
    console.log(`hasOperatorPrivileges success, promise: data->${JSON.stringify(data)}`);
}).catch(err => {
    console.log(`hasOperatorPrivileges failed, promise: err->${JSON.stringify(err)}`);
});

sim.getISOCountryCodeForSim

getISOCountryCodeForSim(slotId: number, callback: AsyncCallback<string>): void

Obtains the ISO country code of the SIM card in the specified slot. This API uses an asynchronous callback to return the result.

System capability: SystemCapability.Telephony.CoreService

Parameters

Name Type Mandatory Description
slotId number Yes Card slot ID.
- 0: card slot 1
- 1: card slot 2
callback AsyncCallback<string> Yes Callback used to return the result, which is an ISO country code, for example, CN (China).

Error codes

For details about the following error codes, see Telephony Error Codes.

ID Error Message
401 Parameter error.
8300001 Invalid parameter value.
8300002 Operation failed. Cannot connect to service.
8300003 System internal error.
8300004 Do not have sim card.
8300999 Unknown error code.

Example

sim.getISOCountryCodeForSim(0, (err, data) => {
    console.log(`callback: err->${JSON.stringify(err)}, data->${JSON.stringify(data)}`);
});

sim.getISOCountryCodeForSim

getISOCountryCodeForSim(slotId: number): Promise<string>

Obtains the ISO country code of the SIM card in the specified slot. This API uses a promise to return the result.

System capability: SystemCapability.Telephony.CoreService

Parameters

Name Type Mandatory Description
slotId number Yes Card slot ID.
- 0: card slot 1
- 1: card slot 2

Return value

Type Description
Promise<string> Promise used to return the result, which is an ISO country code, for example, CN (China).

Error codes

For details about the following error codes, see Telephony Error Codes.

ID Error Message
401 Parameter error.
8300001 Invalid parameter value.
8300002 Operation failed. Cannot connect to service.
8300003 System internal error.
8300004 Do not have sim card.
8300999 Unknown error code.

Example

let promise = sim.getISOCountryCodeForSim(0);
promise.then(data => {
    console.log(`getISOCountryCodeForSim success, promise: data->${JSON.stringify(data)}`);
}).catch(err => {
    console.log(`getISOCountryCodeForSim failed, promise: err->${JSON.stringify(err)}`);
});

sim.getSimOperatorNumeric

getSimOperatorNumeric(slotId: number, callback: AsyncCallback<string>): void

Obtains the public land mobile network (PLMN) ID of the SIM card in the specified slot. This API uses an asynchronous callback to return the result.

System capability: SystemCapability.Telephony.CoreService

Parameters

Name Type Mandatory Description
slotId number Yes Card slot ID.
- 0: card slot 1
- 1: card slot 2
callback AsyncCallback<string> Yes Callback used to return the result.

Error codes

For details about the following error codes, see Telephony Error Codes.

ID Error Message
401 Parameter error.
8300001 Invalid parameter value.
8300002 Operation failed. Cannot connect to service.
8300003 System internal error.
8300004 Do not have sim card.
8300999 Unknown error code.

Example

sim.getSimOperatorNumeric(0, (err, data) => {
    console.log(`callback: err->${JSON.stringify(err)}, data->${JSON.stringify(data)}`);
});

sim.getSimOperatorNumeric

getSimOperatorNumeric(slotId: number): Promise<string>

Obtains the PLMN ID of the SIM card in the specified slot. This API uses a promise to return the result.

System capability: SystemCapability.Telephony.CoreService

Parameters

Name Type Mandatory Description
slotId number Yes Card slot ID.
- 0: card slot 1
- 1: card slot 2

Return value

Type Description
Promise<string> Promise used to return the result.

Error codes

For details about the following error codes, see Telephony Error Codes.

ID Error Message
401 Parameter error.
8300001 Invalid parameter value.
8300002 Operation failed. Cannot connect to service.
8300003 System internal error.
8300004 Do not have sim card.
8300999 Unknown error code.

Example

let promise = sim.getSimOperatorNumeric(0);
promise.then(data => {
    console.log(`getSimOperatorNumeric success, promise: data->${JSON.stringify(data)}`);
}).catch(err => {
    console.log(`getSimOperatorNumeric failed, promise: err->${JSON.stringify(err)}`);
});

sim.getSimSpn

getSimSpn(slotId: number, callback: AsyncCallback<string>): void

Obtains the service provider name (SPN) of the SIM card in the specified slot. This API uses an asynchronous callback to return the result.

System capability: SystemCapability.Telephony.CoreService

Parameters

Name Type Mandatory Description
slotId number Yes Card slot ID.
- 0: card slot 1
- 1: card slot 2
callback AsyncCallback<string> Yes Callback used to return the result.

Error codes

For details about the following error codes, see Telephony Error Codes.

ID Error Message
401 Parameter error.
8300001 Invalid parameter value.
8300002 Operation failed. Cannot connect to service.
8300003 System internal error.
8300004 Do not have sim card.
8300999 Unknown error code.

Example

sim.getSimSpn(0, (err, data) => {
    console.log(`callback: err->${JSON.stringify(err)}, data->${JSON.stringify(data)}`);
});

sim.getSimSpn

getSimSpn(slotId: number): Promise<string>

Obtains the SPN of the SIM card in the specified slot. This API uses a promise to return the result.

System capability: SystemCapability.Telephony.CoreService

Parameters

Name Type Mandatory Description
slotId number Yes Card slot ID.
- 0: card slot 1
- 1: card slot 2

Return value

Type Description
Promise<string> Promise used to return the result.

Error codes

For details about the following error codes, see Telephony Error Codes.

ID Error Message
401 Parameter error.
8300001 Invalid parameter value.
8300002 Operation failed. Cannot connect to service.
8300003 System internal error.
8300004 Do not have sim card.
8300999 Unknown error code.

Example

let promise = sim.getSimSpn(0);
promise.then(data => {
    console.log(`getSimSpn success, promise: data->${JSON.stringify(data)}`);
}).catch(err => {
    console.log(`getSimSpn failed, promise: err->${JSON.stringify(err)}`);
});

sim.getSimState

getSimState(slotId: number, callback: AsyncCallback<SimState>): void

Obtains the state of the SIM card in the specified slot. This API uses an asynchronous callback to return the result.

System capability: SystemCapability.Telephony.CoreService

Parameters

Name Type Mandatory Description
slotId number Yes Card slot ID.
- 0: card slot 1
- 1: card slot 2
callback AsyncCallback<SimState> Yes Callback used to return the result. For details, see SimState.

Error codes

For details about the following error codes, see Telephony Error Codes.

ID Error Message
401 Parameter error.
8300001 Invalid parameter value.
8300002 Operation failed. Cannot connect to service.
8300003 System internal error.
8300999 Unknown error code.

Example

sim.getSimState(0, (err, data) => {
    console.log(`callback: err->${JSON.stringify(err)}, data->${JSON.stringify(data)}`);
});

sim.getSimState

getSimState(slotId: number): Promise<SimState>

Obtains the state of the SIM card in the specified slot. This API uses a promise to return the result.

System capability: SystemCapability.Telephony.CoreService

Parameters

Name Type Mandatory Description
slotId number Yes Card slot ID.
- 0: card slot 1
- 1: card slot 2

Return value

Type Description
Promise<SimState> Promise used to return the result.

Error codes

For details about the following error codes, see Telephony Error Codes.

ID Error Message
401 Parameter error.
8300001 Invalid parameter value.
8300002 Operation failed. Cannot connect to service.
8300003 System internal error.
8300999 Unknown error code.

Example

let promise = sim.getSimState(0);
promise.then(data => {
    console.log(`getSimState success, promise: data->${JSON.stringify(data)}`);
}).catch(err => {
    console.log(`getSimState failed, promise: err->${JSON.stringify(err)}`);
});

sim.getCardType7+

getCardType(slotId: number, callback: AsyncCallback<CardType>): void

Obtains the type of the SIM card in the specified slot. This API uses an asynchronous callback to return the result.

System capability: SystemCapability.Telephony.CoreService

Parameters

Name Type Mandatory Description
slotId number Yes Card slot ID.
- 0: card slot 1
- 1: card slot 2
callback AsyncCallback<CardType> Yes Callback used to return the result.

Error codes

For details about the following error codes, see Telephony Error Codes.

ID Error Message
401 Parameter error.
8300001 Invalid parameter value.
8300002 Operation failed. Cannot connect to service.
8300003 System internal error.
8300004 Do not have sim card.
8300999 Unknown error code.

Example

sim.getCardType(0, (err, data) => {
    console.log(`callback: err->${JSON.stringify(err)}, data->${JSON.stringify(data)}`);
});

sim.getCardType7+

getCardType(slotId: number): Promise<CardType>

Obtains the type of the SIM card in the specified slot. This API uses a promise to return the result.

System capability: SystemCapability.Telephony.CoreService

Parameters

Name Type Mandatory Description
slotId number Yes Card slot ID.
- 0: card slot 1
- 1: card slot 2

Return value

Type Description
Promise<CardType> Promise used to return the result.

Error codes

For details about the following error codes, see Telephony Error Codes.

ID Error Message
401 Parameter error.
8300001 Invalid parameter value.
8300002 Operation failed. Cannot connect to service.
8300003 System internal error.
8300999 Unknown error code.

Example

let promise = sim.getCardType(0);
promise.then(data => {
    console.log(`getCardType success, promise: data->${JSON.stringify(data)}`);
}).catch(err => {
    console.log(`getCardType failed, promise: err->${JSON.stringify(err)}`);
});

sim.hasSimCard7+

hasSimCard(slotId: number, callback: AsyncCallback<boolean>): void

Checks whether the SIM card in the specified slot is installed. This API uses an asynchronous callback to return the result.

System capability: SystemCapability.Telephony.CoreService

Parameters

Name Type Mandatory Description
slotId number Yes Card slot ID.
- 0: card slot 1
- 1: card slot 2
callback AsyncCallback<boolean> Yes Callback used to return the result.

Error codes

For details about the following error codes, see Telephony Error Codes.

ID Error Message
401 Parameter error.
8300001 Invalid parameter value.
8300002 Operation failed. Cannot connect to service.
8300003 System internal error.
8300999 Unknown error code.

Example

sim.hasSimCard(0, (err, data) => {
    console.log(`callback: err->${JSON.stringify(err)}, data->${JSON.stringify(data)}`);
});

sim.hasSimCard7+

hasSimCard(slotId: number): Promise<boolean>

Checks whether the SIM card in the specified slot is installed. This API uses a promise to return the result.

System capability: SystemCapability.Telephony.CoreService

Parameters

Name Type Mandatory Description
slotId number Yes Card slot ID.
- 0: card slot 1
- 1: card slot 2

Return value

Type Description
Promise<boolean> Promise used to return the result. The value true indicates that the SIM card in the specified slot is installed, and the value false indicates the opposite.

Error codes

For details about the following error codes, see Telephony Error Codes.

ID Error Message
401 Parameter error.
8300001 Invalid parameter value.
8300002 Operation failed. Cannot connect to service.
8300003 System internal error.
8300004 Do not have sim card.
8300999 Unknown error code.

Example

let promise = sim.hasSimCard(0);
promise.then(data => {
    console.log(`hasSimCard success, promise: data->${JSON.stringify(data)}`);
}).catch(err => {
    console.log(`hasSimCard failed, promise: err->${JSON.stringify(err)}`);
});

sim.getSimAccountInfo7+

getSimAccountInfo(slotId: number, callback: AsyncCallback<IccAccountInfo>): void

Obtains SIM card account information. This API uses an asynchronous callback to return the result.

System API: This is a system API.

Required permission: ohos.permission.GET_TELEPHONY_STATE

System capability: SystemCapability.Telephony.CoreService

Parameters

Name Type Mandatory Description
slotId number Yes Card slot ID.
- 0: card slot 1
- 1: card slot 2
callback AsyncCallback<IccAccountInfo> Yes Callback used to return the result.

Error codes

For details about the following error codes, see Telephony Error Codes.

ID Error Message
201 Permission denied.
401 Parameter error.
8300001 Invalid parameter value.
8300002 Operation failed. Cannot connect to service.
8300003 System internal error.
8300004 Do not have sim card.
8300999 Unknown error code.
8301002 SIM card operation error.

Example

sim.getSimAccountInfo(0, (err, data) => {
    console.log(`callback: err->${JSON.stringify(err)}, data->${JSON.stringify(data)}`);
});

sim.getSimAccountInfo7+

getSimAccountInfo(slotId: number): Promise<IccAccountInfo>

Obtains SIM card account information. This API uses a promise to return the result.

System API: This is a system API.

Required permission: ohos.permission.GET_TELEPHONY_STATE

System capability: SystemCapability.Telephony.CoreService

Parameters

Name Type Mandatory Description
slotId number Yes Card slot ID.
- 0: card slot 1
- 1: card slot 2

Return value

Type Description
Promise<IccAccountInfo> Promise used to return the result.

Error codes

For details about the following error codes, see Telephony Error Codes.

ID Error Message
201 Permission denied.
401 Parameter error.
8300001 Invalid parameter value.
8300002 Operation failed. Cannot connect to service.
8300003 System internal error.
8300004 Do not have sim card.
8300999 Unknown error code.
8301002 SIM card operation error.

Example

let promise = sim.getSimAccountInfo(0);
promise.then(data => {
    console.log(`getSimAccountInfo success, promise: data->${JSON.stringify(data)}`);
}).catch(err => {
    console.log(`getSimAccountInfo failed, promise: err->${JSON.stringify(err)}`);
});

sim.getActiveSimAccountInfoList8+

getActiveSimAccountInfoList(callback: AsyncCallback<Array<IccAccountInfo>>): void

Obtains the account information list of the active SIM card. This API uses an asynchronous callback to return the result.

System API: This is a system API.

Required permission: ohos.permission.GET_TELEPHONY_STATE

System capability: SystemCapability.Telephony.CoreService

Parameters

Name Type Mandatory Description
callback AsyncCallback<Array<IccAccountInfo>> Yes Callback used to return the result.

Error codes

For details about the following error codes, see Telephony Error Codes.

ID Error Message
201 Permission denied.
401 Parameter error.
8300001 Invalid parameter value.
8300002 Operation failed. Cannot connect to service.
8300003 System internal error.
8300004 Do not have sim card.
8300999 Unknown error code.

Example

sim.getActiveSimAccountInfoList((err, data) => {
    console.log(`callback: err->${JSON.stringify(err)}, data->${JSON.stringify(data)}`);
});

sim.getActiveSimAccountInfoList8+

getActiveSimAccountInfoList(): Promise<Array<IccAccountInfo>>;

Obtains the account information list of the active SIM card. This API uses a promise to return the result.

System API: This is a system API.

Required permission: ohos.permission.GET_TELEPHONY_STATE

System capability: SystemCapability.Telephony.CoreService

Return value

Type Description
Promise<Array<IccAccountInfo>> Promise used to return the result.

Error codes

For details about the following error codes, see Telephony Error Codes.

ID Error Message
201 Permission denied.
401 Parameter error.
8300001 Invalid parameter value.
8300002 Operation failed. Cannot connect to service.
8300003 System internal error.
8300004 Do not have sim card.
8300999 Unknown error code.

Example

let promise = sim.getActiveSimAccountInfoList();
promise.then(data => {
    console.log(`getActiveSimAccountInfoList success, promise: data->${JSON.stringify(data)}`);
}).catch(err => {
    console.log(`getActiveSimAccountInfoList failed, promise: err->${JSON.stringify(err)}`);
});

sim.setDefaultVoiceSlotId7+

setDefaultVoiceSlotId(slotId: number, callback: AsyncCallback<void>): void

Sets the default slot ID of the SIM card that provides voice services. This API uses an asynchronous callback to return the result.

System API: This is a system API.

Required permission: ohos.permission.SET_TELEPHONY_STATE

System capability: SystemCapability.Telephony.CoreService

Parameters

Name Type Mandatory Description
slotId number Yes SIM card slot ID.
- 0: card slot 1
- 1: card slot 2
- -1: Clears the default configuration.
callback AsyncCallback<void> Yes Callback used to return the result.

Error codes

For details about the following error codes, see Telephony Error Codes.

ID Error Message
201 Permission denied.
401 Parameter error.
8300001 Invalid parameter value.
8300002 Operation failed. Cannot connect to service.
8300003 System internal error.
8300004 Do not have sim card.
8300999 Unknown error code.
8301001 SIM card is not activated.

Example

sim.setDefaultVoiceSlotId(0, (err) => {
    console.log(`callback: err->${JSON.stringify(err)}`);
});

sim.setDefaultVoiceSlotId7+

setDefaultVoiceSlotId(slotId: number): Promise<void>

Sets the default slot ID of the SIM card that provides voice services. This API uses a promise to return the result.

System API: This is a system API.

Required permission: ohos.permission.SET_TELEPHONY_STATE

System capability: SystemCapability.Telephony.CoreService

Parameters

Name Type Mandatory Description
slotId number Yes SIM card slot ID.
- 0: card slot 1
- 1: card slot 2
- -1: Clears the default configuration.

Return value

Type Description
Promise<void> Promise used to return the result.

Error codes

For details about the following error codes, see Telephony Error Codes.

ID Error Message
201 Permission denied.
401 Parameter error.
8300001 Invalid parameter value.
8300002 Operation failed. Cannot connect to service.
8300003 System internal error.
8300004 Do not have sim card.
8300999 Unknown error code.
8301001 SIM card is not activated.

Example

let promise = sim.setDefaultVoiceSlotId(0);
promise.then(() => {
    console.log(`setDefaultVoiceSlotId success.`);
}).catch((err) => {
    console.log(`setDefaultVoiceSlotId failed, promise: err->${JSON.stringify(err)}`);
});

sim.setShowName8+

setShowName(slotId: number, name: string, callback: AsyncCallback<void>): void

Sets a display name for the SIM card in the specified slot. This API uses an asynchronous callback to return the result.

System API: This is a system API.

Required permission: ohos.permission.SET_TELEPHONY_STATE

System capability: SystemCapability.Telephony.CoreService

Parameters

Name Type Mandatory Description
slotId number Yes Card slot ID.
- 0: card slot 1
- 1: card slot 2
name string Yes SIM card name.
callback AsyncCallback<void> Yes Callback used to return the result.

Error codes

For details about the following error codes, see Telephony Error Codes.

ID Error Message
201 Permission denied.
401 Parameter error.
8300001 Invalid parameter value.
8300002 Operation failed. Cannot connect to service.
8300003 System internal error.
8300004 Do not have sim card.
8300999 Unknown error code.

Example

let name = "ShowName";
sim.setShowName(0, name, (err) => {
    console.log(`callback: err->${JSON.stringify(err)}`);
});

sim.setShowName8+

setShowName(slotId: number, name: string): Promise<void>

Sets a display name for the SIM card in the specified slot. This API uses a promise to return the result.

System API: This is a system API.

Required permission: ohos.permission.SET_TELEPHONY_STATE

System capability: SystemCapability.Telephony.CoreService

Parameters

Name Type Mandatory Description
slotId number Yes Card slot ID.
- 0: card slot 1
- 1: card slot 2
name string Yes SIM card name.

Return value

Type Description
Promise<void> Promise used to return the result.

Error codes

For details about the following error codes, see Telephony Error Codes.

ID Error Message
201 Permission denied.
401 Parameter error.
8300001 Invalid parameter value.
8300002 Operation failed. Cannot connect to service.
8300003 System internal error.
8300004 Do not have sim card.
8300999 Unknown error code.

Example

let name = "ShowName";
let promise = sim.setShowName(0, name);
promise.then(() => {
    console.log(`setShowName success.`);
}).catch((err) => {
    console.log(`setShowName failed, promise: err->${JSON.stringify(err)}`);
});

sim.getShowName8+

getShowName(slotId: number, callback: AsyncCallback<string>): void

Obtains the name of the SIM card in the specified slot. This API uses an asynchronous callback to return the result.

System API: This is a system API.

Required permission: ohos.permission.GET_TELEPHONY_STATE

System capability: SystemCapability.Telephony.CoreService

Parameters

Name Type Mandatory Description
slotId number Yes Card slot ID.
- 0: card slot 1
- 1: card slot 2
callback AsyncCallback<string> Yes Callback used to return the result.

Error codes

For details about the following error codes, see Telephony Error Codes.

ID Error Message
201 Permission denied.
401 Parameter error.
8300001 Invalid parameter value.
8300002 Operation failed. Cannot connect to service.
8300003 System internal error.
8300004 Do not have sim card.
8300999 Unknown error code.

Example

sim.getShowName(0, (err, data) => {
    console.log(`callback: err->${JSON.stringify(err)}, data->${JSON.stringify(data)}`);
});

sim.getShowName8+

getShowName(slotId: number): Promise<string>

Obtains the name of the SIM card in the specified slot. This API uses a promise to return the result.

System API: This is a system API.

Required permission: ohos.permission.GET_TELEPHONY_STATE

System capability: SystemCapability.Telephony.CoreService

Parameters

Name Type Mandatory Description
slotId number Yes Card slot ID.
- 0: card slot 1
- 1: card slot 2

Return value

Type Description
Promise<string> Promise used to return the result.

Error codes

For details about the following error codes, see Telephony Error Codes.

ID Error Message
201 Permission denied.
401 Parameter error.
8300001 Invalid parameter value.
8300002 Operation failed. Cannot connect to service.
8300003 System internal error.
8300004 Do not have sim card.
8300999 Unknown error code.

Example

let promise = sim.getShowName(0);
promise.then(data => {
    console.log(`getShowName success, promise: data->${JSON.stringify(data)}`);
}).catch(err => {
    console.log(`getShowName failed, promise: err->${JSON.stringify(err)}`);
});

sim.setShowNumber8+

setShowNumber(slotId: number, number: string, callback: AsyncCallback<void>): void

Sets a display number for the SIM card in the specified slot. This API uses an asynchronous callback to return the result.

System API: This is a system API.

Required permission: ohos.permission.SET_TELEPHONY_STATE

System capability: SystemCapability.Telephony.CoreService

Parameters

Name Type Mandatory Description
slotId number Yes Card slot ID.
- 0: card slot 1
- 1: card slot 2
number string Yes SIM card number.
callback AsyncCallback<void> Yes Callback used to return the result.

Error codes

For details about the following error codes, see Telephony Error Codes.

ID Error Message
201 Permission denied.
401 Parameter error.
8300001 Invalid parameter value.
8300002 Operation failed. Cannot connect to service.
8300003 System internal error.
8300004 Do not have sim card.
8300999 Unknown error code.

Example

let number = '+861xxxxxxxxxx';
sim.setShowNumber(0, number, (err) => {
    console.log(`callback: err->${JSON.stringify(err)}`);
});

sim.setShowNumber8+

setShowNumber(slotId: number, number: string): Promise<void>

Sets a display number for the SIM card in the specified slot. This API uses a promise to return the result.

System API: This is a system API.

Required permission: ohos.permission.SET_TELEPHONY_STATE

System capability: SystemCapability.Telephony.CoreService

Parameters

Name Type Mandatory Description
slotId number Yes Card slot ID.
- 0: card slot 1
- 1: card slot 2
number string Yes SIM card number.

Return value

Type Description
Promise<void> Promise used to return the result.

Error codes

For details about the following error codes, see Telephony Error Codes.

ID Error Message
201 Permission denied.
401 Parameter error.
8300001 Invalid parameter value.
8300002 Operation failed. Cannot connect to service.
8300003 System internal error.
8300004 Do not have sim card.
8300999 Unknown error code.

Example

let number = '+861xxxxxxxxxx';
let promise = sim.setShowNumber(0, number);
promise.then(() => {
    console.log(`setShowNumber success.`);
}).catch((err) => {
    console.log(`setShowNumber failed, promise: err->${JSON.stringify(err)}`);
});

sim.getShowNumber8+

getShowNumber(slotId: number, callback: AsyncCallback<string>): void

Obtains the display number of the SIM card in the specified slot. This API uses an asynchronous callback to return the result.

System API: This is a system API.

Required permission: ohos.permission.GET_TELEPHONY_STATE

System capability: SystemCapability.Telephony.CoreService

Parameters

Name Type Mandatory Description
slotId number Yes Card slot ID.
- 0: card slot 1
- 1: card slot 2
callback AsyncCallback<string> Yes Callback used to return the result.

Error codes

For details about the following error codes, see Telephony Error Codes.

ID Error Message
201 Permission denied.
401 Parameter error.
8300001 Invalid parameter value.
8300002 Operation failed. Cannot connect to service.
8300003 System internal error.
8300004 Do not have sim card.
8300999 Unknown error code.

Example

sim.getShowNumber(0, (err, data) => {
    console.log(`callback: err->${JSON.stringify(err)}, data->${JSON.stringify(data)}`);
});

sim.getShowNumber8+

getShowNumber(slotId: number): Promise<string>

Obtains the display number of the SIM card in the specified slot. This API uses a promise to return the result.

System API: This is a system API.

Required permission: ohos.permission.GET_TELEPHONY_STATE

System capability: SystemCapability.Telephony.CoreService

Parameters

Name Type Mandatory Description
slotId number Yes Card slot ID.
- 0: card slot 1
- 1: card slot 2

Return value

Type Description
Promise<string> Promise used to return the result.

Error codes

For details about the following error codes, see Telephony Error Codes.

ID Error Message
201 Permission denied.
401 Parameter error.
8300001 Invalid parameter value.
8300002 Operation failed. Cannot connect to service.
8300003 System internal error.
8300004 Do not have sim card.
8300999 Unknown error code.

Example

let promise = sim.getShowNumber(0);
promise.then(data => {
    console.log(`getShowNumber success, promise: data->${JSON.stringify(data)}`);
}).catch(err => {
    console.log(`getShowNumber failed, promise: err->${JSON.stringify(err)}`);
});

sim.activateSim8+

activateSim(slotId: number, callback: AsyncCallback<void>): void

Activates a SIM card in a specified card slot. This API uses an asynchronous callback to return the result.

System API: This is a system API.

Required permission: ohos.permission.SET_TELEPHONY_STATE

System capability: SystemCapability.Telephony.CoreService

Parameters

Name Type Mandatory Description
slotId number Yes Card slot ID.
- 0: card slot 1
- 1: card slot 2
callback AsyncCallback<void> Yes Callback used to return the result.

Error codes

For details about the following error codes, see Telephony Error Codes.

ID Error Message
201 Permission denied.
401 Parameter error.
8300001 Invalid parameter value.
8300002 Operation failed. Cannot connect to service.
8300003 System internal error.
8300004 Do not have sim card.
8300999 Unknown error code.

Example

sim.activateSim(0, (err) => {
    console.log(`callback: err->${JSON.stringify(err)}`);
});

sim.activateSim8+

activateSim(slotId: number): Promise<void>

Activates the SIM card in the specified slot. This API uses a promise to return the result.

System API: This is a system API.

Required permission: ohos.permission.SET_TELEPHONY_STATE

System capability: SystemCapability.Telephony.CoreService

Parameters

Name Type Mandatory Description
slotId number Yes Card slot ID.
- 0: card slot 1
- 1: card slot 2

Return value

Type Description
Promise<void> Promise used to return the result.

Error codes

For details about the following error codes, see Telephony Error Codes.

ID Error Message
201 Permission denied.
401 Parameter error.
8300001 Invalid parameter value.
8300002 Operation failed. Cannot connect to service.
8300003 System internal error.
8300004 Do not have sim card.
8300999 Unknown error code.

Example

let promise = sim.activateSim(0);
promise.then(() => {
    console.log(`activateSim success.`);
}).catch((err) => {
    console.log(`activateSim failed, promise: err->${JSON.stringify(err)}`);
});

sim.deactivateSim8+

deactivateSim(slotId: number, callback: AsyncCallback<void>): void

Disables the SIM card in the specified slot. This API uses an asynchronous callback to return the result.

System API: This is a system API.

Required permission: ohos.permission.SET_TELEPHONY_STATE

System capability: SystemCapability.Telephony.CoreService

Parameters

Name Type Mandatory Description
slotId number Yes Card slot ID.
- 0: card slot 1
- 1: card slot 2
callback AsyncCallback<void> Yes Callback used to return the result.

Error codes

For details about the following error codes, see Telephony Error Codes.

ID Error Message
201 Permission denied.
401 Parameter error.
8300001 Invalid parameter value.
8300002 Operation failed. Cannot connect to service.
8300003 System internal error.
8300004 Do not have sim card.
8300999 Unknown error code.

Example

sim.deactivateSim(0, (err) => {
    console.log(`callback: err->${JSON.stringify(err)}`);
});

sim.deactivateSim8+

deactivateSim(slotId: number): Promise<void>

Disables the SIM card in the specified slot. This API uses a promise to return the result.

System API: This is a system API.

Required permission: ohos.permission.SET_TELEPHONY_STATE

System capability: SystemCapability.Telephony.CoreService

Parameters

Name Type Mandatory Description
slotId number Yes Card slot ID.
- 0: card slot 1
- 1: card slot 2

Return value

Type Description
Promise<void> Promise used to return the result.

Error codes

For details about the following error codes, see Telephony Error Codes.

ID Error Message
201 Permission denied.
401 Parameter error.
8300001 Invalid parameter value.
8300002 Operation failed. Cannot connect to service.
8300003 System internal error.
8300004 Do not have sim card.
8300999 Unknown error code.

Example

let promise = sim.deactivateSim(0);
promise.then(() => {
    console.log(`deactivateSim success.`);
}).catch((err) => {
    console.log(`deactivateSim failed, promise: err->${JSON.stringify(err)}`);
});

sim.setLockState7+

setLockState(slotId: number, options: LockInfo, callback: AsyncCallback<LockStatusResponse>): void

Sets the lock status of the SIM card in the specified slot. This API uses an asynchronous callback to return the result.

System API: This is a system API.

Required permission: ohos.permission.SET_TELEPHONY_STATE

System capability: SystemCapability.Telephony.CoreService

Parameters

Name Type Mandatory Description
slotId number Yes Card slot ID.
- 0: card slot 1
- 1: card slot 2
callback AsyncCallback<LockStatusResponse> Yes Callback used to return the result.
options LockInfo Yes Lock information.
- lockType: LockType
- password: string
- state: LockState

Error codes

For details about the following error codes, see Telephony Error Codes.

ID Error Message
201 Permission denied.
401 Parameter error.
8300001 Invalid parameter value.
8300002 Operation failed. Cannot connect to service.
8300003 System internal error.
8300004 Do not have sim card.
8300999 Unknown error code.
8301002 SIM card operation error.

Example

let lockInfo = {
    lockType: sim.LockType.PIN_LOCK,
    password: "1234",
    state: sim.LockState.LOCK_OFF
};
sim.setLockState(0, lockInfo, (err, data) => {
    console.log(`callback: err->${JSON.stringify(err)}, data->${JSON.stringify(data)}`);
});

sim.setLockState7+

setLockState(slotId: number, options: LockInfo): Promise<LockStatusResponse>

Sets the lock status of the SIM card in the specified slot. This API uses a promise to return the result.

System API: This is a system API.

Required permission: ohos.permission.SET_TELEPHONY_STATE

System capability: SystemCapability.Telephony.CoreService

Parameters

Name Type Mandatory Description
slotId number Yes Card slot ID.
- 0: card slot 1
- 1: card slot 2
options LockInfo Yes Lock information.
- lockType: LockType
- password: string
- state: LockState

Return value

Type Description
Promise<LockStatusResponse> Promise used to return the result.

Error codes

For details about the following error codes, see Telephony Error Codes.

ID Error Message
201 Permission denied.
401 Parameter error.
8300001 Invalid parameter value.
8300002 Operation failed. Cannot connect to service.
8300003 System internal error.
8300004 Do not have sim card.
8300999 Unknown error code.
8301002 SIM card operation error.

Example

let lockInfo = {
    lockType: sim.LockType.PIN_LOCK,
    password: "1234",
    state: sim.LockState.LOCK_OFF
};
let promise = sim.setLockState(0, lockInfo);
promise.then(data => {
    console.log(`setLockState success, promise: data->${JSON.stringify(data)}`);
}).catch(err => {
    console.log(`setLockState failed, promise: err->${JSON.stringify(err)}`);
});

sim.getLockState8+

getLockState(slotId: number, lockType: LockType, callback: AsyncCallback<LockState>): void

Obtains the lock status of the SIM card in the specified slot. This API uses an asynchronous callback to return the result.

System API: This is a system API.

Required permission: ohos.permission.GET_TELEPHONY_STATE

System capability: SystemCapability.Telephony.CoreService

Parameters

Name Type Mandatory Description
slotId number Yes Card slot ID.
- 0: card slot 1
- 1: card slot 2
callback AsyncCallback<LockState> Yes Callback used to return the result.
options LockType Yes Lock type.
- 1: PIN lock
- 2: PIN 2 lock

Error codes

For details about the following error codes, see Telephony Error Codes.

ID Error Message
201 Permission denied.
401 Parameter error.
8300001 Invalid parameter value.
8300002 Operation failed. Cannot connect to service.
8300003 System internal error.
8300004 Do not have sim card.
8300999 Unknown error code.
8301002 SIM card operation error.

Example

sim.getLockState(0, 1, (err, data) => {
    console.log(`callback: err->${JSON.stringify(err)}, data->${JSON.stringify(data)}`);
});

sim.getLockState8+

getLockState(slotId: number, lockType: LockType): Promise<LockState>

Obtains the lock status of the SIM card in the specified slot. This API uses a promise to return the result.

System API: This is a system API.

Required permission: ohos.permission.GET_TELEPHONY_STATE

System capability: SystemCapability.Telephony.CoreService

Parameters

Name Type Mandatory Description
slotId number Yes Card slot ID.
- 0: card slot 1
- 1: card slot 2
options LockType Yes Lock type.
- 1: PIN lock
- 2: PIN 2 lock

Return value

Type Description
Promise<LockState> Promise used to return the result.

Error codes

For details about the following error codes, see Telephony Error Codes.

ID Error Message
201 Permission denied.
401 Parameter error.
8300001 Invalid parameter value.
8300002 Operation failed. Cannot connect to service.
8300003 System internal error.
8300004 Do not have sim card.
8300999 Unknown error code.
8301002 SIM card operation error.

Example

let promise = sim.getLockState(0, 1);
promise.then(data => {
    console.log(`getLockState success, promise: data->${JSON.stringify(data)}`);
}).catch(err => {
    console.log(`getLockState failed, promise: err->${JSON.stringify(err)}`);
});

sim.alterPin7+

alterPin(slotId: number, newPin: string, oldPin: string, callback: AsyncCallback<LockStatusResponse>): void

Changes the PIN of the SIM card in the specified slot. This API uses an asynchronous callback to return the result.

System API: This is a system API.

Required permission: ohos.permission.SET_TELEPHONY_STATE

System capability: SystemCapability.Telephony.CoreService

Parameters

Name Type Mandatory Description
slotId number Yes Card slot ID.
- 0: card slot 1
- 1: card slot 2
callback AsyncCallback<LockStatusResponse> Yes Callback used to return the result.
newPin string Yes New PIN.
oldPin string Yes Old PIN.

Error codes

For details about the following error codes, see Telephony Error Codes.

ID Error Message
201 Permission denied.
401 Parameter error.
8300001 Invalid parameter value.
8300002 Operation failed. Cannot connect to service.
8300003 System internal error.
8300004 Do not have sim card.
8300999 Unknown error code.
8301002 SIM card operation error.

Example

sim.alterPin(0, "1234", "0000", (err, data) => {
    console.log(`callback: err->${JSON.stringify(err)}, data->${JSON.stringify(data)}`);
});

sim.alterPin7+

alterPin(slotId: number, newPin: string, oldPin: string): Promise<LockStatusResponse>;

Changes the PIN of the SIM card in the specified slot. This API uses a promise to return the result.

System API: This is a system API.

Required permission: ohos.permission.SET_TELEPHONY_STATE

System capability: SystemCapability.Telephony.CoreService

Parameters

Name Type Mandatory Description
slotId number Yes Card slot ID.
- 0: card slot 1
- 1: card slot 2
newPin string Yes New PIN.
oldPin string Yes Old PIN.

Return value

Type Description
Promise<LockStatusResponse> Promise used to return the result.

Error codes

For details about the following error codes, see Telephony Error Codes.

ID Error Message
201 Permission denied.
401 Parameter error.
8300001 Invalid parameter value.
8300002 Operation failed. Cannot connect to service.
8300003 System internal error.
8300004 Do not have sim card.
8300999 Unknown error code.
8301002 SIM card operation error.

Example

let promise = sim.alterPin(0, "1234", "0000");
promise.then(data => {
    console.log(`alterPin success, promise: data->${JSON.stringify(data)}`);
}).catch(err => {
    console.log(`alterPin failed, promise: err->${JSON.stringify(err)}`);
});

sim.alterPin28+

alterPin2(slotId: number, newPin2: string, oldPin2: string, callback: AsyncCallback<LockStatusResponse>): void

Changes PIN 2 of the SIM card in the specified slot. This API uses an asynchronous callback to return the result.

System API: This is a system API.

Required permission: ohos.permission.SET_TELEPHONY_STATE

System capability: SystemCapability.Telephony.CoreService

Parameters

Name Type Mandatory Description
slotId number Yes Card slot ID.
- 0: card slot 1
- 1: card slot 2
callback AsyncCallback<LockStatusResponse> Yes Callback used to return the result.
newPin2 string Yes New PIN.
oldPin2 string Yes Old PIN.

Error codes

For details about the following error codes, see Telephony Error Codes.

ID Error Message
201 Permission denied.
401 Parameter error.
8300001 Invalid parameter value.
8300002 Operation failed. Cannot connect to service.
8300003 System internal error.
8300004 Do not have sim card.
8300999 Unknown error code.
8301002 SIM card operation error.

Example

sim.alterPin2(0, "1234", "0000", (err, data) => {
    console.log(`callback: err->${JSON.stringify(err)}, data->${JSON.stringify(data)}`);
});

sim.alterPin28+

alterPin2(slotId: number, newPin2: string, oldPin2: string): Promise<LockStatusResponse>

Changes PIN 2 of the SIM card in the specified slot. This API uses a promise to return the result.

System API: This is a system API.

Required permission: ohos.permission.SET_TELEPHONY_STATE

System capability: SystemCapability.Telephony.CoreService

Parameters

Name Type Mandatory Description
slotId number Yes Card slot ID.
- 0: card slot 1
- 1: card slot 2
newPin2 string Yes New PIN.
oldPin2 string Yes Old PIN.

Return value

Type Description
Promise<LockStatusResponse> Promise used to return the result.

Error codes

For details about the following error codes, see Telephony Error Codes.

ID Error Message
201 Permission denied.
401 Parameter error.
8300001 Invalid parameter value.
8300002 Operation failed. Cannot connect to service.
8300003 System internal error.
8300004 Do not have sim card.
8300999 Unknown error code.
8301002 SIM card operation error.

Example

let promise = sim.alterPin2(0, "1234", "0000");
promise.then(data => {
    console.log(`alterPin2 success, promise: data->${JSON.stringify(data)}`);
}).catch(err => {
    console.log(`alterPin2 failed, promise: err->${JSON.stringify(err)}`);
});

sim.unlockPin7+

unlockPin(slotId: number, pin: string, callback: AsyncCallback<LockStatusResponse>): void

Unlocks the PIN of the SIM card in the specified slot. This API uses an asynchronous callback to return the result.

System API: This is a system API.

Required permission: ohos.permission.SET_TELEPHONY_STATE

System capability: SystemCapability.Telephony.CoreService

Parameters

Name Type Mandatory Description
slotId number Yes Card slot ID.
- 0: card slot 1
- 1: card slot 2
pin string Yes PIN of the SIM card.
callback AsyncCallback<LockStatusResponse> Yes Callback used to return the result.

Error codes

For details about the following error codes, see Telephony Error Codes.

ID Error Message
201 Permission denied.
401 Parameter error.
8300001 Invalid parameter value.
8300002 Operation failed. Cannot connect to service.
8300003 System internal error.
8300004 Do not have sim card.
8300999 Unknown error code.
8301002 SIM card operation error.

Example

let pin = '1234';
sim.unlockPin(0, pin, (err, data) => {
    console.log(`callback: err->${JSON.stringify(err)}, data->${JSON.stringify(data)}`);
});

sim.unlockPin7+

unlockPin(slotId: number, pin: string): Promise<LockStatusResponse>

Unlocks the PIN of the SIM card in the specified slot. This API uses a promise to return the result.

System API: This is a system API.

Required permission: ohos.permission.SET_TELEPHONY_STATE

System capability: SystemCapability.Telephony.CoreService

Parameters

Name Type Mandatory Description
slotId number Yes Card slot ID.
- 0: card slot 1
- 1: card slot 2
pin string Yes PIN of the SIM card.

Return value

Type Description
Promise<LockStatusResponse> Promise used to return the result.

Error codes

For details about the following error codes, see Telephony Error Codes.

ID Error Message
201 Permission denied.
401 Parameter error.
8300001 Invalid parameter value.
8300002 Operation failed. Cannot connect to service.
8300003 System internal error.
8300004 Do not have sim card.
8300999 Unknown error code.
8301002 SIM card operation error.

Example

let pin = '1234';
let promise = sim.unlockPin(0, pin);
promise.then(data => {
    console.log(`unlockPin success, promise: data->${JSON.stringify(data)}`);
}).catch(err => {
    console.log(`unlockPin failed, promise: err->${JSON.stringify(err)}`);
});

sim.unlockPuk7+

unlockPuk(slotId: number, newPin: string, puk: string, callback: AsyncCallback<LockStatusResponse>): void

Unlocks the PUK of the SIM card in the specified slot. This API uses an asynchronous callback to return the result.

System API: This is a system API.

Required permission: ohos.permission.SET_TELEPHONY_STATE

System capability: SystemCapability.Telephony.CoreService

Parameters

Name Type Mandatory Description
slotId number Yes Card slot ID.
- 0: card slot 1
- 1: card slot 2
newPin string Yes New PIN.
puk string Yes PUK of the SIM card.
callback AsyncCallback<LockStatusResponse> Yes Callback used to return the result.

Error codes

For details about the following error codes, see Telephony Error Codes.

ID Error Message
201 Permission denied.
401 Parameter error.
8300001 Invalid parameter value.
8300002 Operation failed. Cannot connect to service.
8300003 System internal error.
8300004 Do not have sim card.
8300999 Unknown error code.
8301002 SIM card operation error.

Example

let puk = '1xxxxxxx';
let newPin = '1235';
sim.unlockPuk(0, newPin, puk, (err, data) => {
    console.log(`callback: err->${JSON.stringify(err)}, data->${JSON.stringify(data)}`);
});

sim.unlockPuk7+

unlockPuk(slotId: number, newPin: string, puk: string): Promise<LockStatusResponse>

Unlocks the PUK of the SIM card in the specified slot. This API uses a promise to return the result.

System API: This is a system API.

Required permission: ohos.permission.SET_TELEPHONY_STATE

System capability: SystemCapability.Telephony.CoreService

Parameters

Name Type Mandatory Description
slotId number Yes Card slot ID.
- 0: card slot 1
- 1: card slot 2
newPin string Yes New PIN.
puk string Yes PUK of the SIM card.

Return value

Type Description
Promise<LockStatusResponse> Promise used to return the result.

Error codes

For details about the following error codes, see Telephony Error Codes.

ID Error Message
201 Permission denied.
401 Parameter error.
8300001 Invalid parameter value.
8300002 Operation failed. Cannot connect to service.
8300003 System internal error.
8300004 Do not have sim card.
8300999 Unknown error code.
8301002 SIM card operation error.

Example

let puk = '1xxxxxxx';
let newPin = '1235';
let promise = sim.unlockPuk(0, newPin, puk);
promise.then(data => {
    console.log(`unlockPuk success, promise: data->${JSON.stringify(data)}`);
}).catch(err => {
    console.log(`unlockPuk failed, promise: err->${JSON.stringify(err)}`);
});

sim.unlockPin28+

unlockPin2(slotId: number, pin2: string, callback: AsyncCallback<LockStatusResponse>): void

Unlocks PIN 2 of the SIM card in the specified slot. This API uses an asynchronous callback to return the result.

System API: This is a system API.

Required permission: ohos.permission.SET_TELEPHONY_STATE

System capability: SystemCapability.Telephony.CoreService

Parameters

Name Type Mandatory Description
slotId number Yes Card slot ID.
- 0: card slot 1
- 1: card slot 2
pin2 string Yes PIN of the SIM card.
callback AsyncCallback<LockStatusResponse> Yes Callback used to return the result.

Error codes

For details about the following error codes, see Telephony Error Codes.

ID Error Message
201 Permission denied.
401 Parameter error.
8300001 Invalid parameter value.
8300002 Operation failed. Cannot connect to service.
8300003 System internal error.
8300004 Do not have sim card.
8300999 Unknown error code.
8301002 SIM card operation error.

Example

let pin2 = '1234';
sim.unlockPin2(0, pin2, (err, data) => {
    console.log(`callback: err->${JSON.stringify(err)}, data->${JSON.stringify(data)}`);
});

sim.unlockPin28+

unlockPin2(slotId: number, pin2: string): Promise<LockStatusResponse>

Unlocks PIN 2 of the SIM card in the specified slot. This API uses a promise to return the result.

System API: This is a system API.

Required permission: ohos.permission.SET_TELEPHONY_STATE

System capability: SystemCapability.Telephony.CoreService

Parameters

Name Type Mandatory Description
slotId number Yes Card slot ID.
- 0: card slot 1
- 1: card slot 2
pin2 string Yes PIN of the SIM card.

Return value

Type Description
Promise<LockStatusResponse> Promise used to return the result.

Error codes

For details about the following error codes, see Telephony Error Codes.

ID Error Message
201 Permission denied.
401 Parameter error.
8300001 Invalid parameter value.
8300002 Operation failed. Cannot connect to service.
8300003 System internal error.
8300004 Do not have sim card.
8300999 Unknown error code.
8301002 SIM card operation error.

Example

let pin2='1234';
let promise = sim.unlockPin2(0, pin2);
promise.then(data => {
    console.log(`unlockPin2 success, promise: data->${JSON.stringify(data)}`);
}).catch(err => {
    console.log(`unlockPin2 failed, promise: err->${JSON.stringify(err)}`);
});

sim.unlockPuk28+

unlockPuk2(slotId: number, newPin2: string, puk2: string, callback: AsyncCallback<LockStatusResponse>): void

Unlocks PUK 2 of the SIM card in the specified slot. This API uses an asynchronous callback to return the result.

System API: This is a system API.

Required permission: ohos.permission.SET_TELEPHONY_STATE

System capability: SystemCapability.Telephony.CoreService

Parameters

Name Type Mandatory Description
slotId number Yes Card slot ID.
- 0: card slot 1
- 1: card slot 2
newPin2 string Yes New PIN 2.
puk2 string Yes PUK of the SIM card.
callback AsyncCallback<LockStatusResponse> Yes Callback used to return the result.

Error codes

For details about the following error codes, see Telephony Error Codes.

ID Error Message
201 Permission denied.
401 Parameter error.
8300001 Invalid parameter value.
8300002 Operation failed. Cannot connect to service.
8300003 System internal error.
8300004 Do not have sim card.
8300999 Unknown error code.
8301002 SIM card operation error.

Example

let puk2 = '1xxxxxxx';
let newPin2 = '1235';
sim.unlockPuk2(0, newPin2, puk2, (err, data) => {
    console.log(`callback: err->${JSON.stringify(err)}, data->${JSON.stringify(data)}`);
});

sim.unlockPuk28+

unlockPuk2(slotId: number, newPin2: string, puk2: string): Promise<LockStatusResponse>

Unlocks PUK 2 of the SIM card in the specified slot. This API uses a promise to return the result.

System API: This is a system API.

Required permission: ohos.permission.SET_TELEPHONY_STATE

System capability: SystemCapability.Telephony.CoreService

Parameters

Name Type Mandatory Description
slotId number Yes Card slot ID.
- 0: card slot 1
- 1: card slot 2
newPin2 string Yes New PIN 2.
puk2 string Yes PUK of the SIM card.

Return value

Type Description
Promise<LockStatusResponse> Promise used to return the result.

Error codes

For details about the following error codes, see Telephony Error Codes.

ID Error Message
201 Permission denied.
401 Parameter error.
8300001 Invalid parameter value.
8300002 Operation failed. Cannot connect to service.
8300003 System internal error.
8300004 Do not have sim card.
8300999 Unknown error code.
8301002 SIM card operation error.

Example

let puk2 = '1xxxxxxx';
let newPin2 = '1235';
let promise = sim.unlockPuk2(0, newPin2, puk2);
promise.then(data => {
    console.log(`unlockPuk2 success, promise: data->${JSON.stringify(data)}`);
}).catch(err => {
    console.log(`unlockPuk2 failed, promise: err->${JSON.stringify(err)}`);
});

sim.getMaxSimCount7+

getMaxSimCount(): number

Obtains the number of card slots.

System capability: SystemCapability.Telephony.CoreService

Return value

Type Description
number Number of card slots.

Example

console.log("Result: "+ sim.getMaxSimCount())

sim.getSimIccId7+

getSimIccId(slotId: number, callback: AsyncCallback<string>): void

Obtains the ICCID of the SIM card in the specified slot. This API uses an asynchronous callback to return the result.

System API: This is a system API.

Required permission: ohos.permission.GET_TELEPHONY_STATE

System capability: SystemCapability.Telephony.CoreService

Parameters

Name Type Mandatory Description
slotId number Yes Card slot ID.
- 0: card slot 1
- 1: card slot 2
callback AsyncCallback<string> Yes Callback used to return the result.

Error codes

For details about the following error codes, see Telephony Error Codes.

ID Error Message
201 Permission denied.
401 Parameter error.
8300001 Invalid parameter value.
8300002 Operation failed. Cannot connect to service.
8300003 System internal error.
8300004 Do not have sim card.
8300999 Unknown error code.

Example

sim.getSimIccId(0, (err, data) => {
    console.log(`callback: err->${JSON.stringify(err)}, data->${JSON.stringify(data)}`);
});

sim.getSimIccId7+

getSimIccId(slotId: number): Promise<string>

Obtains the ICCID of the SIM card in the specified slot. This API uses a promise to return the result.

System API: This is a system API.

Required permission: ohos.permission.GET_TELEPHONY_STATE

System capability: SystemCapability.Telephony.CoreService

Parameters

Name Type Mandatory Description
slotId number Yes Card slot ID.
- 0: card slot 1
- 1: card slot 2

Return value

Type Description
Promise<string> Promise used to return the result.

Error codes

For details about the following error codes, see Telephony Error Codes.

ID Error Message
201 Permission denied.
401 Parameter error.
8300001 Invalid parameter value.
8300002 Operation failed. Cannot connect to service.
8300003 System internal error.
8300004 Do not have sim card.
8300999 Unknown error code.

Example

let promise = sim.getSimIccId(0);
promise.then(data => {
    console.log(`getSimIccId success, promise: data->${JSON.stringify(data)}`);
}).catch(err => {
    console.log(`getSimIccId failed, promise: err->${JSON.stringify(err)}`);
});

sim.getVoiceMailIdentifier8+

getVoiceMailIdentifier(slotId: number, callback: AsyncCallback<string>): void

Obtains the voice mailbox alpha identifier of the SIM card in the specified slot. This API uses an asynchronous callback to return the result.

System API: This is a system API.

Required permission: ohos.permission.GET_TELEPHONY_STATE

System capability: SystemCapability.Telephony.CoreService

Parameters

Name Type Mandatory Description
slotId number Yes Card slot ID.
- 0: card slot 1
- 1: card slot 2
callback AsyncCallback<string> Yes Callback used to return the result.

Error codes

For details about the following error codes, see Telephony Error Codes.

ID Error Message
201 Permission denied.
401 Parameter error.
8300001 Invalid parameter value.
8300002 Operation failed. Cannot connect to service.
8300003 System internal error.
8300004 Do not have sim card.
8300999 Unknown error code.

Example

sim.getVoiceMailIdentifier(0, (err, data) => {
    console.log(`callback: err->${JSON.stringify(err)}, data->${JSON.stringify(data)}`);
});

sim.getVoiceMailIdentifier8+

getVoiceMailIdentifier(slotId: number): Promise<string>

Obtains the voice mailbox alpha identifier of the SIM card in the specified slot. This API uses a promise to return the result.

System API: This is a system API.

Required permission: ohos.permission.GET_TELEPHONY_STATE

System capability: SystemCapability.Telephony.CoreService

Parameters

Name Type Mandatory Description
slotId number Yes Card slot ID.
- 0: card slot 1
- 1: card slot 2

Return value

Type Description
Promise<string> Promise used to return the result.

Error codes

For details about the following error codes, see Telephony Error Codes.

ID Error Message
201 Permission denied.
401 Parameter error.
8300001 Invalid parameter value.
8300002 Operation failed. Cannot connect to service.
8300003 System internal error.
8300004 Do not have sim card.
8300999 Unknown error code.

Example

let promise = sim.getVoiceMailIdentifier(0);
promise.then(data => {
    console.log(`getVoiceMailIdentifier success, promise: data->${JSON.stringify(data)}`);
}).catch(err => {
    console.log(`getVoiceMailIdentifier failed, promise: err->${JSON.stringify(err)}`);
});

sim.getVoiceMailNumber8+

getVoiceMailNumber(slotId: number, callback: AsyncCallback<string>): void

Obtains the voice mailbox number of the SIM card in the specified slot. This API uses an asynchronous callback to return the result.

System API: This is a system API.

Required permission: ohos.permission.GET_TELEPHONY_STATE

System capability: SystemCapability.Telephony.CoreService

Parameters

Name Type Mandatory Description
slotId number Yes Card slot ID.
- 0: card slot 1
- 1: card slot 2
callback AsyncCallback<string> Yes Callback used to return the result.

Error codes

For details about the following error codes, see Telephony Error Codes.

ID Error Message
201 Permission denied.
401 Parameter error.
8300001 Invalid parameter value.
8300002 Operation failed. Cannot connect to service.
8300003 System internal error.
8300004 Do not have sim card.
8300999 Unknown error code.

Example

sim.getVoiceMailNumber(0, (err, data) => {
    console.log(`callback: err->${JSON.stringify(err)}, data->${JSON.stringify(data)}`);
});

sim.getVoiceMailNumber8+

getVoiceMailNumber(slotId: number): Promise<string>

Obtains the voice mailbox number of the SIM card in the specified slot. This API uses a promise to return the result.

System API: This is a system API.

Required permission: ohos.permission.GET_TELEPHONY_STATE

System capability: SystemCapability.Telephony.CoreService

Parameters

Name Type Mandatory Description
slotId number Yes Card slot ID.
- 0: card slot 1
- 1: card slot 2

Return value

Type Description
Promise<string> Promise used to return the result.

Error codes

For details about the following error codes, see Telephony Error Codes.

ID Error Message
201 Permission denied.
401 Parameter error.
8300001 Invalid parameter value.
8300002 Operation failed. Cannot connect to service.
8300003 System internal error.
8300004 Do not have sim card.
8300999 Unknown error code.

Example

let promise = sim.getVoiceMailNumber(0);
promise.then(data => {
    console.log(`getVoiceMailNumber success, promise: data->${JSON.stringify(data)}`);
}).catch(err => {
    console.log(`getVoiceMailNumber failed, promise: err->${JSON.stringify(err)}`);
});

sim.setVoiceMailInfo8+

setVoiceMailInfo(slotId: number, mailName: string, mailNumber: string, callback: AsyncCallback<void>): void

Sets voice mailbox information for the SIM card in the specified slot. This API uses an asynchronous callback to return the result.

System API: This is a system API.

Required permission: ohos.permission.SET_TELEPHONY_STATE

System capability: SystemCapability.Telephony.CoreService

Parameters

Name Type Mandatory Description
slotId number Yes Card slot ID.
- 0: card slot 1
- 1: card slot 2
mailName string Yes Voice mailbox name.
mailNumber string Yes Voice mailbox number.
callback AsyncCallback<void> Yes Callback used to return the result.

Error codes

For details about the following error codes, see Telephony Error Codes.

ID Error Message
201 Permission denied.
401 Parameter error.
8300001 Invalid parameter value.
8300002 Operation failed. Cannot connect to service.
8300003 System internal error.
8300004 Do not have sim card.
8300999 Unknown error code.
8301002 SIM card operation error.

Example

sim.setVoiceMailInfo(0, "mail", "xxx@xxx.com", (err) => {
    console.log(`callback: err->${JSON.stringify(err)}`);
});

sim.setVoiceMailInfo8+

setVoiceMailInfo(slotId: number, mailName: string, mailNumber: string): Promise<void>

Sets voice mailbox information for the SIM card in the specified slot. This API uses a promise to return the result.

System API: This is a system API.

Required permission: ohos.permission.SET_TELEPHONY_STATE

System capability: SystemCapability.Telephony.CoreService

Parameters

Name Type Mandatory Description
slotId number Yes Card slot ID.
- 0: card slot 1
- 1: card slot 2
mailName string Yes Voice mailbox name.
mailNumber string Yes Voice mailbox number.

Return value

Type Description
Promise<void> Promise used to return the result.

Error codes

For details about the following error codes, see Telephony Error Codes.

ID Error Message
201 Permission denied.
401 Parameter error.
8300001 Invalid parameter value.
8300002 Operation failed. Cannot connect to service.
8300003 System internal error.
8300004 Do not have sim card.
8300999 Unknown error code.
8301002 SIM card operation error.

Example

let promise = sim.setVoiceMailInfo(0, "mail", "xxx@xxx.com");
promise.then(() => {
    console.log(`setVoiceMailInfo success.`);
}).catch((err) => {
    console.log(`setVoiceMailInfo failed, promise: err->${JSON.stringify(err)}`);
});

sim.getSimTelephoneNumber8+

getSimTelephoneNumber(slotId: number, callback: AsyncCallback<string>): void

Obtains the MSISDN of the SIM card in the specified slot. This API uses an asynchronous callback to return the result.

System API: This is a system API.

Required permission: ohos.permission.GET_TELEPHONY_STATE

System capability: SystemCapability.Telephony.CoreService

Parameters

Name Type Mandatory Description
slotId number Yes Card slot ID.
- 0: card slot 1
- 1: card slot 2
callback AsyncCallback<string> Yes Callback used to return the result.

Error codes

For details about the following error codes, see Telephony Error Codes.

ID Error Message
201 Permission denied.
401 Parameter error.
8300001 Invalid parameter value.
8300002 Operation failed. Cannot connect to service.
8300003 System internal error.
8300004 Do not have sim card.
8300999 Unknown error code.

Example

sim.getSimTelephoneNumber(0, (err, data) => {
    console.log(`callback: err->${JSON.stringify(err)}, data->${JSON.stringify(data)}`);
});

sim.getSimTelephoneNumber8+

getSimTelephoneNumber(slotId: number): Promise<string>

Obtains the MSISDN of the SIM card in the specified slot. This API uses a promise to return the result.

System API: This is a system API.

Required permission: ohos.permission.GET_TELEPHONY_STATE

System capability: SystemCapability.Telephony.CoreService

Parameters

Name Type Mandatory Description
slotId number Yes Card slot ID.
- 0: card slot 1
- 1: card slot 2

Return value

Type Description
Promise<string> Promise used to return the result.

Error codes

For details about the following error codes, see Telephony Error Codes.

ID Error Message
201 Permission denied.
401 Parameter error.
8300001 Invalid parameter value.
8300002 Operation failed. Cannot connect to service.
8300003 System internal error.
8300004 Do not have sim card.
8300999 Unknown error code.

Example

let promise = sim.getSimTelephoneNumber(0);
promise.then(data => {
    console.log(`getSimTelephoneNumber success, promise: data->${JSON.stringify(data)}`);
}).catch(err => {
    console.log(`getSimTelephoneNumber failed, promise: err->${JSON.stringify(err)}`);
});

sim.getSimGid17+

getSimGid1(slotId: number, callback: AsyncCallback<string>): void

Obtains the group identifier level 1 (GID1) of the SIM card in the specified slot. This API uses an asynchronous callback to return the result.

System API: This is a system API.

Required permission: ohos.permission.GET_TELEPHONY_STATE

System capability: SystemCapability.Telephony.CoreService

Parameters

Name Type Mandatory Description
slotId number Yes Card slot ID.
- 0: card slot 1
- 1: card slot 2
callback AsyncCallback<string> Yes Callback used to return the result.

Error codes

For details about the following error codes, see Telephony Error Codes.

ID Error Message
201 Permission denied.
401 Parameter error.
8300001 Invalid parameter value.
8300002 Operation failed. Cannot connect to service.
8300003 System internal error.
8300004 Do not have sim card.
8300999 Unknown error code.

Example

sim.getSimGid1(0, (err, data) => {
    console.log(`callback: err->${JSON.stringify(err)}, data->${JSON.stringify(data)}`);
});

sim.getSimGid17+

getSimGid1(slotId: number): Promise<string>

Obtains the GID1 of the SIM card in the specified slot. This API uses a promise to return the result.

System API: This is a system API.

Required permission: ohos.permission.GET_TELEPHONY_STATE

System capability: SystemCapability.Telephony.CoreService

Parameters

Name Type Mandatory Description
slotId number Yes Card slot ID.
- 0: card slot 1
- 1: card slot 2

Return value

Type Description
Promise<string> Promise used to return the result.

Error codes

For details about the following error codes, see Telephony Error Codes.

ID Error Message
201 Permission denied.
401 Parameter error.
8300001 Invalid parameter value.
8300002 Operation failed. Cannot connect to service.
8300003 System internal error.
8300999 Unknown error code.

Example

let promise = sim.getSimGid1(0);
promise.then(data => {
    console.log(`getSimGid1 success, promise: data->${JSON.stringify(data)}`);
}).catch(err => {
    console.log(`getSimGid1 failed, promise: err->${JSON.stringify(err)}`);
});

sim.getIMSI

getIMSI(slotId: number, callback: AsyncCallback<string>): void

Obtains the international mobile subscriber identity (IMSI) of the SIM card in the specified slot. This API uses an asynchronous callback to return the result.

System API: This is a system API.

Required permission: ohos.permission.GET_TELEPHONY_STATE

System capability: SystemCapability.Telephony.CoreService

Parameters

Name Type Mandatory Description
slotId number Yes Card slot ID.
- 0: card slot 1
- 1: card slot 2
callback AsyncCallback<string> Yes Callback used to return the result.

Error codes

For details about the following error codes, see Telephony Error Codes.

ID Error Message
201 Permission denied.
401 Parameter error.
8300001 Invalid parameter value.
8300002 Operation failed. Cannot connect to service.
8300003 System internal error.
8300999 Unknown error code.

Example

sim.getIMSI(0, (err, data) => {
    console.log(`callback: err->${JSON.stringify(err)}, data->${JSON.stringify(data)}`);
});

sim.getIMSI

getIMSI(slotId: number): Promise<string>

Obtains the IMSI of the SIM card in the specified slot. This API uses a promise to return the result.

System API: This is a system API.

Required permission: ohos.permission.GET_TELEPHONY_STATE

System capability: SystemCapability.Telephony.CoreService

Parameters

Name Type Mandatory Description
slotId number Yes Card slot ID.
- 0: card slot 1
- 1: card slot 2

Return value

Type Description
Promise<string> Promise used to return the result.

Error codes

For details about the following error codes, see Telephony Error Codes.

ID Error Message
201 Permission denied.
401 Parameter error.
8300001 Invalid parameter value.
8300002 Operation failed. Cannot connect to service.
8300003 System internal error.
8300004 Do not have sim card.
8300999 Unknown error code.

Example

let promise = sim.getIMSI(0);
promise.then(data => {
    console.log(`getIMSI success, promise: data->${JSON.stringify(data)}`);
}).catch(err => {
    console.log(`getIMSI failed, promise: err->${JSON.stringify(err)}`);
});

sim.getOperatorConfigs8+

getOperatorConfigs(slotId: number, callback: AsyncCallback<Array<OperatorConfig>>): void

Obtains the carrier configuration of the SIM card in the specified slot. This API uses an asynchronous callback to return the result.

System API: This is a system API.

Required permission: ohos.permission.GET_TELEPHONY_STATE

System capability: SystemCapability.Telephony.CoreService

Parameters

Name Type Mandatory Description
slotId number Yes Card slot ID.
- 0: card slot 1
- 1: card slot 2
callback AsyncCallback<Array<OperatorConfig>> Yes Callback used to return the result.

Error codes

For details about the following error codes, see Telephony Error Codes.

ID Error Message
201 Permission denied.
401 Parameter error.
8300001 Invalid parameter value.
8300002 Operation failed. Cannot connect to service.
8300003 System internal error.
8300004 Do not have sim card.
8300999 Unknown error code.

Example

sim.getOperatorConfigs(0, (err, data) => {
    console.log(`callback: err->${JSON.stringify(err)}, data->${JSON.stringify(data)}`);
});

sim.getOperatorConfigs8+

getOperatorConfigs(slotId: number): Promise<Array<OperatorConfig>>

Obtains the carrier configuration of the SIM card in the specified slot. This API uses a promise to return the result.

System API: This is a system API.

Required permission: ohos.permission.GET_TELEPHONY_STATE

System capability: SystemCapability.Telephony.CoreService

Parameters

Name Type Mandatory Description
slotId number Yes Card slot ID.
- 0: card slot 1
- 1: card slot 2

Return value

Type Description
Promise<Array<OperatorConfig>> Promise used to return the result.

Error codes

For details about the following error codes, see Telephony Error Codes.

ID Error Message
201 Permission denied.
401 Parameter error.
8300001 Invalid parameter value.
8300002 Operation failed. Cannot connect to service.
8300003 System internal error.
8300004 Do not have sim card.
8300999 Unknown error code.

Example

let promise = sim.getOperatorConfigs(0);
promise.then(data => {
    console.log(`getOperatorConfigs success, promise: data->${JSON.stringify(data)}`);
}).catch(err => {
    console.log(`getOperatorConfigs failed, promise: err->${JSON.stringify(err)}`);
});

sim.queryIccDiallingNumbers8+

queryIccDiallingNumbers(slotId: number, type: ContactType, callback: AsyncCallback<Array<DiallingNumbersInfo>>): void

Queries contact numbers of the SIM card in the specified slot. This API uses an asynchronous callback to return the result.

System API: This is a system API.

Permission required: ohos.permission.READ_CONTACTS

System capability: SystemCapability.Telephony.CoreService

Parameters

Name Type Mandatory Description
slotId number Yes Card slot ID.
- 0: card slot 1
- 1: card slot 2
type ContactType Yes Contact type.
- 1: GENERAL_CONTACT
- 2: FIXED_DIALING
callback AsyncCallback<Array<DiallingNumbersInfo>> Yes Callback used to return the result.

Error codes

For details about the following error codes, see Telephony Error Codes.

ID Error Message
201 Permission denied.
401 Parameter error.
8300001 Invalid parameter value.
8300002 Operation failed. Cannot connect to service.
8300003 System internal error.
8300004 Do not have sim card.
8300999 Unknown error code.
8301002 SIM card operation error.

Example

sim.queryIccDiallingNumbers(0, 1, (err, data) => {
    console.log(`callback: err->${JSON.stringify(err)}, data->${JSON.stringify(data)}`);
});

sim.queryIccDiallingNumbers8+

queryIccDiallingNumbers(slotId: number, type: ContactType): Promise<Array<DiallingNumbersInfo>>

Queries contact numbers of the SIM card in the specified slot. This API uses a promise to return the result.

System API: This is a system API.

Permission required: ohos.permission.READ_CONTACTS

System capability: SystemCapability.Telephony.CoreService

Parameters

Name Type Mandatory Description
slotId number Yes Card slot ID.
- 0: card slot 1
- 1: card slot 2
type ContactType Yes Contact type.
- 1: GENERAL_CONTACT
- 2: FIXED_DIALING

Return value

Type Description
Promise<Array<DiallingNumbersInfo>> Promise used to return the result.

Error codes

For details about the following error codes, see Telephony Error Codes.

ID Error Message
201 Permission denied.
401 Parameter error.
8300001 Invalid parameter value.
8300002 Operation failed. Cannot connect to service.
8300003 System internal error.
8300004 Do not have sim card.
8300999 Unknown error code.
8301002 SIM card operation error.

Example

let promise = sim.queryIccDiallingNumbers(0, 1);
promise.then(data => {
    console.log(`queryIccDiallingNumbers success, promise: data->${JSON.stringify(data)}`);
}).catch(err => {
    console.log(`queryIccDiallingNumbers failed, promise: err->${JSON.stringify(err)}`);
});

sim.addIccDiallingNumbers8+

addIccDiallingNumbers(slotId: number, type: ContactType, diallingNumbers: DiallingNumbersInfo, callback: AsyncCallback<void>): void

Adds contact numbers for the SIM card in the specified slot. This API uses an asynchronous callback to return the result.

System API: This is a system API.

Permission required: ohos.permission.WRITE_CONTACTS

System capability: SystemCapability.Telephony.CoreService

Parameters

Name Type Mandatory Description
slotId number Yes Card slot ID.
- 0: card slot 1
- 1: card slot 2
type ContactType Yes Contact type.
- 1: GENERAL_CONTACT
- 2: FIXED_DIALING
diallingNumbers DiallingNumbersInfo Yes Contact number information.
callback AsyncCallback<void> Yes Callback used to return the result.

Error codes

For details about the following error codes, see Telephony Error Codes.

ID Error Message
201 Permission denied.
401 Parameter error.
8300001 Invalid parameter value.
8300002 Operation failed. Cannot connect to service.
8300003 System internal error.
8300004 Do not have sim card.
8300999 Unknown error code.
8301002 SIM card operation error.

Example

let diallingNumbersInof = {
    alphaTag: "alpha",
    number: "138xxxxxxxx",
    pin2: "1234"
};
sim.addIccDiallingNumbers(0, sim.ContactType.GENERAL_CONTACT, diallingNumbersInof, (err) => {
    console.log(`callback: err->${JSON.stringify(err)}`);
});

sim.addIccDiallingNumbers8+

addIccDiallingNumbers(slotId: number, type: ContactType, diallingNumbers: DiallingNumbersInfo): Promise<void>

Adds contact numbers for the SIM card in the specified slot. This API uses a promise to return the result.

System API: This is a system API.

Permission required: ohos.permission.WRITE_CONTACTS

System capability: SystemCapability.Telephony.CoreService

Parameters

Name Type Mandatory Description
slotId number Yes Card slot ID.
- 0: card slot 1
- 1: card slot 2
type ContactType Yes Contact type.
- 1: GENERAL_CONTACT
- 2: FIXED_DIALING
diallingNumbers DiallingNumbersInfo Yes Contact number information.

Return value

Type Description
Promise<void> Promise used to return the result.

Error codes

For details about the following error codes, see Telephony Error Codes.

ID Error Message
201 Permission denied.
401 Parameter error.
8300001 Invalid parameter value.
8300002 Operation failed. Cannot connect to service.
8300003 System internal error.
8300004 Do not have sim card.
8300999 Unknown error code.
8301002 SIM card operation error.

Example

let diallingNumbersInof = {
    alphaTag: "alpha",
    number: "138xxxxxxxx"
};
let promise = sim.addIccDiallingNumbers(0, sim.ContactType.GENERAL_CONTACT, diallingNumbersInof);
promise.then(() => {
    console.log(`addIccDiallingNumbers success.`);
}).catch((err) => {
    console.log(`addIccDiallingNumbers failed, promise: err->${JSON.stringify(err)}`);
});

sim.delIccDiallingNumbers8+

delIccDiallingNumbers(slotId: number, type: ContactType, diallingNumbers: DiallingNumbersInfo, callback: AsyncCallback<void>): void

Deletes contact numbers from the SIM card in the specified slot. This API uses an asynchronous callback to return the result.

System API: This is a system API.

Permission required: ohos.permission.WRITE_CONTACTS

System capability: SystemCapability.Telephony.CoreService

Parameters

Name Type Mandatory Description
slotId number Yes Card slot ID.
- 0: card slot 1
- 1: card slot 2
type ContactType Yes Contact type.
- 1: GENERAL_CONTACT
- 2: FIXED_DIALING
diallingNumbers DiallingNumbersInfo Yes Contact number information.
callback AsyncCallback<void> Yes Callback used to return the result.

Error codes

For details about the following error codes, see Telephony Error Codes.

ID Error Message
201 Permission denied.
401 Parameter error.
8300001 Invalid parameter value.
8300002 Operation failed. Cannot connect to service.
8300003 System internal error.
8300004 Do not have sim card.
8300999 Unknown error code.
8301002 SIM card operation error.

Example

let diallingNumbersInof = {
    alphaTag: "alpha",
    number: "138xxxxxxxx",
    recordNumber: 123,
    pin2: "1234"
};
sim.delIccDiallingNumbers(0, sim.ContactType.GENERAL_CONTACT, diallingNumbersInof, (err) => {
    console.log(`callback: err->${JSON.stringify(err)}`);
});

sim.delIccDiallingNumbers8+

delIccDiallingNumbers(slotId: number, type: ContactType, diallingNumbers: DiallingNumbersInfo): Promise<void>

Deletes contact numbers from the SIM card in the specified slot. This API uses a promise to return the result.

System API: This is a system API.

Permission required: ohos.permission.WRITE_CONTACTS

System capability: SystemCapability.Telephony.CoreService

Parameters

Name Type Mandatory Description
slotId number Yes Card slot ID.
- 0: card slot 1
- 1: card slot 2
type ContactType Yes Contact type.
- 1: GENERAL_CONTACT
- 2: FIXED_DIALING
diallingNumbers DiallingNumbersInfo Yes Contact number information.

Return value

Type Description
Promise<void> Promise used to return the result.

Error codes

For details about the following error codes, see Telephony Error Codes.

ID Error Message
201 Permission denied.
401 Parameter error.
8300001 Invalid parameter value.
8300002 Operation failed. Cannot connect to service.
8300003 System internal error.
8300004 Do not have sim card.
8300999 Unknown error code.
8301002 SIM card operation error.

Example

let diallingNumbersInof = {
    alphaTag: "alpha",
    number: "138xxxxxxxx"
};
let promise = sim.delIccDiallingNumbers(0, sim.ContactType.GENERAL_CONTACT, diallingNumbersInof);
promise.then(() => {
    console.log(`delIccDiallingNumbers success.`);
}).catch((err) => {
    console.log(`delIccDiallingNumbers failed, promise: err->${JSON.stringify(err)}`);
});

sim.updateIccDiallingNumbers8+

updateIccDiallingNumbers(slotId: number, type: ContactType, diallingNumbers: DiallingNumbersInfo, callback: AsyncCallback<void>): void

Updates contact numbers for the SIM card in the specified slot. This API uses an asynchronous callback to return the result.

System API: This is a system API.

Permission required: ohos.permission.WRITE_CONTACTS

System capability: SystemCapability.Telephony.CoreService

Parameters

Name Type Mandatory Description
slotId number Yes Card slot ID.
- 0: card slot 1
- 1: card slot 2
type ContactType Yes Contact type.
- 1: GENERAL_CONTACT
- 2: FIXED_DIALING
diallingNumbers DiallingNumbersInfo Yes Contact number information.
callback AsyncCallback<void> Yes Callback used to return the result.

Error codes

For details about the following error codes, see Telephony Error Codes.

ID Error Message
201 Permission denied.
401 Parameter error.
8300001 Invalid parameter value.
8300002 Operation failed. Cannot connect to service.
8300003 System internal error.
8300004 Do not have sim card.
8300999 Unknown error code.
8301002 SIM card operation error.

Example

let diallingNumbersInof = {
    alphaTag: "alpha",
    number: "138xxxxxxxx",
    recordNumber: 123,
    pin2: "1234"
};
sim.updateIccDiallingNumbers(0, sim.ContactType.GENERAL_CONTACT, diallingNumbersInof, (err) => {
    console.log(`callback: err->${JSON.stringify(err)}`);
});

sim.updateIccDiallingNumbers8+

updateIccDiallingNumbers(slotId: number, type: ContactType, diallingNumbers: DiallingNumbersInfo): Promise<void>

Updates contact numbers for the SIM card in the specified slot. This API uses a promise to return the result.

System API: This is a system API.

Permission required: ohos.permission.WRITE_CONTACTS

System capability: SystemCapability.Telephony.CoreService

Parameters

Name Type Mandatory Description
slotId number Yes Card slot ID.
- 0: card slot 1
- 1: card slot 2
type ContactType Yes Contact type.
- 1: GENERAL_CONTACT
- 2: FIXED_DIALING
diallingNumbers DiallingNumbersInfo Yes Contact number information.

Return value

Type Description
Promise<void> Promise used to return the result.

Error codes

For details about the following error codes, see Telephony Error Codes.

ID Error Message
201 Permission denied.
401 Parameter error.
8300001 Invalid parameter value.
8300002 Operation failed. Cannot connect to service.
8300003 System internal error.
8300004 Do not have sim card.
8300999 Unknown error code.
8301002 SIM card operation error.

Example

let diallingNumbersInof = {
    alphaTag: "alpha",
    number: "138xxxxxxxx",
    recordNumber: 123
};
let promise = sim.updateIccDiallingNumbers(0, sim.ContactType.GENERAL_CONTACT, diallingNumbersInof);
promise.then(() => {
    console.log(`updateIccDiallingNumbers success.`);
}).catch((err) => {
    console.log(`updateIccDiallingNumbers failed, promise: err->${JSON.stringify(err)}`);
});

sim.sendEnvelopeCmd8+

sendEnvelopeCmd(slotId: number, cmd: string, callback: AsyncCallback<void>): void

Sends an envelope command to the SIM card in the specified slot. This API uses an asynchronous callback to return the result.

System API: This is a system API.

Required permission: ohos.permission.SET_TELEPHONY_STATE

System capability: SystemCapability.Telephony.CoreService

Parameters

Name Type Mandatory Description
slotId number Yes Card slot ID.
- 0: card slot 1
- 1: card slot 2
cmd string Yes Envelope command.
callback AsyncCallback<void> Yes Callback used to return the result.

Error codes

For details about the following error codes, see Telephony Error Codes.

ID Error Message
201 Permission denied.
401 Parameter error.
8300001 Invalid parameter value.
8300002 Operation failed. Cannot connect to service.
8300003 System internal error.
8300004 Do not have sim card.
8300999 Unknown error code.

Example

sim.sendEnvelopeCmd(0, "ls", (err) => {
    console.log(`callback: err->${JSON.stringify(err)}`);
});

sim.sendEnvelopeCmd8+

sendEnvelopeCmd(slotId: number, cmd: string): Promise<void>

Sends an envelope command to the SIM card in the specified slot. This API uses a promise to return the result.

System API: This is a system API.

Required permission: ohos.permission.SET_TELEPHONY_STATE

System capability: SystemCapability.Telephony.CoreService

Parameters

Name Type Mandatory Description
slotId number Yes Card slot ID.
- 0: card slot 1
- 1: card slot 2
cmd string Yes Envelope command.

Return value

Type Description
Promise<void> Promise used to return the result.

Error codes

For details about the following error codes, see Telephony Error Codes.

ID Error Message
201 Permission denied.
401 Parameter error.
8300001 Invalid parameter value.
8300002 Operation failed. Cannot connect to service.
8300003 System internal error.
8300004 Do not have sim card.
8300999 Unknown error code.

Example

let promise = sim.sendEnvelopeCmd(0, "ls");
promise.then(() => {
    console.log(`sendEnvelopeCmd success.`);
}).catch((err) => {
    console.log(`sendEnvelopeCmd failed, promise: err->${JSON.stringify(err)}`);
});

sim.sendTerminalResponseCmd8+

sendTerminalResponseCmd(slotId: number, cmd: string, callback: AsyncCallback<void>): void

Sends a terminal response command to the SIM card in the specified slot. This API uses an asynchronous callback to return the result.

System API: This is a system API.

Required permission: ohos.permission.SET_TELEPHONY_STATE

System capability: SystemCapability.Telephony.CoreService

Parameters

Name Type Mandatory Description
slotId number Yes Card slot ID.
- 0: card slot 1
- 1: card slot 2
cmd string Yes Envelope command.
callback AsyncCallback<void> Yes Callback used to return the result.

Error codes

For details about the following error codes, see Telephony Error Codes.

ID Error Message
201 Permission denied.
401 Parameter error.
8300001 Invalid parameter value.
8300002 Operation failed. Cannot connect to service.
8300003 System internal error.
8300999 Unknown error code.

Example

sim.sendTerminalResponseCmd(0, "ls", (err) => {
    console.log(`callback: err->${JSON.stringify(err)}`);
});

sim.sendTerminalResponseCmd8+

sendTerminalResponseCmd(slotId: number, cmd: string): Promise<void>

Sends a terminal response command to the SIM card in the specified slot. This API uses a promise to return the result.

System API: This is a system API.

Required permission: ohos.permission.SET_TELEPHONY_STATE

System capability: SystemCapability.Telephony.CoreService

Parameters

Name Type Mandatory Description
slotId number Yes Card slot ID.
- 0: card slot 1
- 1: card slot 2
cmd string Yes Envelope command.

Return value

Type Description
Promise<void> Promise used to return the result.

Error codes

For details about the following error codes, see Telephony Error Codes.

ID Error Message
201 Permission denied.
401 Parameter error.
8300001 Invalid parameter value.
8300002 Operation failed. Cannot connect to service.
8300003 System internal error.
8300999 Unknown error code.

Example

let promise = sim.sendTerminalResponseCmd(0, "ls");
promise.then(() => {
    console.log(`sendTerminalResponseCmd success.`);
}).catch((err) => {
    console.log(`sendTerminalResponseCmd failed, promise: err->${JSON.stringify(err)}`);
});

sim.unlockSimLock8+

unlockSimLock(slotId: number, lockInfo: PersoLockInfo, callback: AsyncCallback<LockStatusResponse>): void

Unlocks the SIM card in the specified slot. This API uses an asynchronous callback to return the result.

System API: This is a system API.

Required permission: ohos.permission.SET_TELEPHONY_STATE

System capability: SystemCapability.Telephony.CoreService

Parameters

Name Type Mandatory Description
slotId number Yes Card slot ID.
- 0: card slot 1
- 1: card slot 2
lockInfo PersoLockInfo Yes Personalized lock information.
callback AsyncCallback<LockStatusResponse> Yes Callback used to return the result.

Error codes

For details about the following error codes, see Telephony Error Codes.

ID Error Message
201 Permission denied.
401 Parameter error.
8300001 Invalid parameter value.
8300002 Operation failed. Cannot connect to service.
8300003 System internal error.
8300004 Do not have sim card.
8300999 Unknown error code.
8301002 SIM card operation error.

Example

let persoLockInfo = {
    lockType: sim.PersoLockType.PN_PIN_LOCK,
    password: "1234"
};
sim.unlockSimLock(0, persoLockInfo, (err, data) => {
    console.log(`callback: err->${JSON.stringify(err)}, data->${JSON.stringify(data)}`);
});

sim.unlockSimLock8+

unlockSimLock(slotId: number, lockInfo: PersoLockInfo): Promise<LockStatusResponse>

Unlocks the SIM card in the specified slot. This API uses a promise to return the result.

System API: This is a system API.

Required permission: ohos.permission.SET_TELEPHONY_STATE

System capability: SystemCapability.Telephony.CoreService

Parameters

Name Type Mandatory Description
slotId number Yes Card slot ID.
- 0: card slot 1
- 1: card slot 2
lockInfo PersoLockInfo Yes Personalized lock information.

Return value

Type Description
Promise<LockStatusResponse> Promise used to return the result.

Error codes

For details about the following error codes, see Telephony Error Codes.

ID Error Message
201 Permission denied.
401 Parameter error.
8300001 Invalid parameter value.
8300002 Operation failed. Cannot connect to service.
8300003 System internal error.
8300004 Do not have sim card.
8300999 Unknown error code.
8301002 SIM card operation error.

Example

let persoLockInfo = {
    lockType: sim.PersoLockType.PN_PIN_LOCK,
    password: "1234"
};
let promise = sim.unlockSimLock(0, persoLockInfo);
promise.then(data => {
    console.log(`unlockSimLock success, promise: data->${JSON.stringify(data)}`);
}).catch(err => {
    console.log(`unlockSimLock failed, promise: err->${JSON.stringify(err)}`);
});

sim.getOpKey9+

getOpKey(slotId: number, callback: AsyncCallback<string>): void

Obtains the opkey of the SIM card in the specified slot. This API uses an asynchronous callback to return the result.

System capability: SystemCapability.Telephony.CoreService

Parameters

Name Type Mandatory Description
slotId number Yes Card slot ID.
- 0: card slot 1
- 1: card slot 2
callback AsyncCallback<string> Yes Callback used to return the result.

Error codes

For details about the following error codes, see Telephony Error Codes.

ID Error Message
401 Parameter error.
801 Capability not supported.
8300001 Invalid parameter value.
8300002 Operation failed. Cannot connect to service.
8300003 System internal error.
8300999 Unknown error code.

Example

try {
    sim.getOpKey(0, (err, data) => {
    if (err) {
      console.log("getOpKey failed, err: " + JSON.stringify(err));
    } else {
      console.log('getOpKey successfully, data: ' + JSON.stringify(data));
    }
  });
} catch (err) {
  console.log("getOpKey err: " + JSON.stringify(err));
}

sim.getOpKey9+

getOpKey(slotId: number): Promise<string>

Obtains the opkey of the SIM card in the specified slot. This API uses a promise to return the result.

System capability: SystemCapability.Telephony.CoreService

Parameters

Name Type Mandatory Description
slotId number Yes Card slot ID.
- 0: card slot 1
- 1: card slot 2

Return value

Type Description
Promise<string> Promise used to return the result.

Error codes

For details about the following error codes, see Telephony Error Codes.

ID Error Message
401 Parameter error.
801 Capability not supported.
8300001 Invalid parameter value.
8300002 Operation failed. Cannot connect to service.
8300003 System internal error.
8300999 Unknown error code.

Example

try {
    let data = sim.getOpKey(0);
    console.log(`getOpKey success, promise: data->${JSON.stringify(data)}`);
} catch (error) {
    console.log(`getOpKey failed, promise: err->${JSON.stringify(error)}`);
}

sim.getOpName9+

getOpName(slotId: number, callback: AsyncCallback<string>): void

Obtains the OpName of the SIM card in the specified slot. This API uses an asynchronous callback to return the result.

System capability: SystemCapability.Telephony.CoreService

Parameters

Name Type Mandatory Description
slotId number Yes Card slot ID.
- 0: card slot 1
- 1: card slot 2
callback AsyncCallback<string> Yes Callback used to return the result.

Error codes

For details about the following error codes, see Telephony Error Codes.

ID Error Message
401 Parameter error.
801 Capability not supported.
8300001 Invalid parameter value.
8300002 Operation failed. Cannot connect to service.
8300003 System internal error.
8300004 Do not have sim card.
8300999 Unknown error code.

Example

try {
    sim.getOpName(0, (err, data) => {
    if (err) {
      console.log("getOpName failed, err: " + JSON.stringify(err));
    } else {
      console.log('getOpName successfully, data: ' + JSON.stringify(data));
    }
  });
} catch (err) {
  console.log("getOpName err: " + JSON.stringify(err));
}

sim.getOpName9+

getOpName(slotId: number): Promise<string>

Obtains the OpName of the SIM card in the specified slot. This API uses a promise to return the result.

System capability: SystemCapability.Telephony.CoreService

Parameters

Name Type Mandatory Description
slotId number Yes Card slot ID.
- 0: card slot 1
- 1: card slot 2

Return value

Type Description
Promise<string> Promise used to return the result.

Error codes

For details about the following error codes, see Telephony Error Codes.

ID Error Message
401 Parameter error.
801 Capability not supported.
8300001 Invalid parameter value.
8300002 Operation failed. Cannot connect to service.
8300003 System internal error.
8300004 Do not have sim card.
8300999 Unknown error code.

Example

try {
    let data = sim.getOpName(0);
    console.log(`getOpName success, promise: data->${JSON.stringify(data)}`);
} catch (error) {
    console.log(`getOpName failed, promise: err->${JSON.stringify(error)}`);
}

SimState

Enumerates SIM card states.

System capability: SystemCapability.Telephony.CoreService

Name Value Description
SIM_STATE_UNKNOWN 0 The SIM card is in unknown state; that is, the SIM card status cannot be obtained.
SIM_STATE_NOT_PRESENT 1 The SIM card is in not present state; that is, no SIM card is inserted into the card slot.
SIM_STATE_LOCKED 2 The SIM card is in locked state; that is, the SIM card is locked by the personal identification number (PIN), PIN unblocking key (PUK), or network.
SIM_STATE_NOT_READY 3 The SIM card is in not ready state; that is, the SIM card has been installed but cannot work properly.
SIM_STATE_READY 4 The SIM card is in ready state; that is, the SIM card has been installed and is working properly.
SIM_STATE_LOADED 5 The SIM card is in loaded state; that is, the SIM card is present and all its files have been loaded.

CardType7+

Enumerates SIM card types.

System capability: SystemCapability.Telephony.CoreService

Name Value Description
UNKNOWN_CARD -1 Unknown type.
SINGLE_MODE_SIM_CARD 10 Single-card (SIM).
SINGLE_MODE_USIM_CARD 20 Single-card (USIM).
SINGLE_MODE_RUIM_CARD 30 Single-card (RUIM).
DUAL_MODE_CG_CARD 40 Dual-card (CDMA+GSM).
CT_NATIONAL_ROAMING_CARD 41 China Telecom internal roaming card.
CU_DUAL_MODE_CARD 42 China Unicom dual-mode card.
DUAL_MODE_TELECOM_LTE_CARD 43 China Telecom dual-mode LTE card.
DUAL_MODE_UG_CARD 50 Dual-mode card (UMTS+GSM).
SINGLE_MODE_ISIM_CARD8+ 60 Single-card (ISIM).

LockType8+

Enumerates lock types.

System API: This is a system API.

System capability: SystemCapability.Telephony.CoreService

Name Value Description
PIN_LOCK 1 SIM card password lock.
FDN_LOCK 2 Fixed dialing lock.

LockState8+

Enumerates lock states.

System API: This is a system API.

System capability: SystemCapability.Telephony.CoreService

Name Value Description
LOCK_OFF 0 The lock is off.
LOCK_ON 1 The lock is on.

PersoLockType8+

Enumerates personalized lock types.

System API: This is a system API.

System capability: SystemCapability.Telephony.CoreService

Name Value Description
PN_PIN_LOCK 0 Personalized network PIN lock. For details, see 3GPP TS 22.022 [33].
PN_PUK_LOCK 1 Personalized network PUK lock.
PU_PIN_LOCK 2 Personalized network subset PIN lock. For details, see 3GPP TS 22.022 [33].
PU_PUK_LOCK 3 Personalized network subset PUK lock.
PP_PIN_LOCK 4 Personalized service provider PIN lock. For details, see 3GPP TS 22.022 [33].
PP_PUK_LOCK 5 Personalized service provider PUK lock.
PC_PIN_LOCK 6 Personalized corporate PIN lock. For details, see 3GPP TS 22.022 [33].
PC_PUK_LOCK 7 Personalized corporate PUK lock.
SIM_PIN_LOCK 8 Personalized SIM card PIN lock. For details, see 3GPP TS 22.022 [33].
SIM_PUK_LOCK 9 Personalized SIM card PUK lock.

LockStatusResponse7+

Defines the personalized lock information.

System API: This is a system API.

System capability: SystemCapability.Telephony.CoreService

Name Type Mandatory Description
result number Yes Operation result.
remain?: number number No Remaining attempts (can be null).

LockInfo8+

Defines the personalized lock information.

System API: This is a system API.

System capability: SystemCapability.Telephony.CoreService

Name Type Mandatory Description
lockType LockType Yes Lock type.
password string Yes Password.
state LockState Yes Lock state.

PersoLockInfo8+

Defines the personalized lock information.

System API: This is a system API.

System capability: SystemCapability.Telephony.CoreService

Name Type Mandatory Description
lockType PersoLockType Yes Personalized lock type.
password string Yes Password.

IccAccountInfo7+

Defines the ICC account information.

System API: This is a system API.

System capability: SystemCapability.Telephony.CoreService

Name Type Mandatory Description
simId number Yes SIM card ID.
slotIndex number Yes Card slot ID.
isEsim boolean Yes Whether the SIM card is an eSim card.
isActive boolean Yes Whether the card is activated.
iccId string Yes ICCID number.
showName string Yes SIM card display name.
showNumber string Yes SIM card display number.

OperatorConfig8+

Defines the carrier configuration.

System API: This is a system API.

System capability: SystemCapability.Telephony.CoreService

Name Type Mandatory Description
field string Yes Field.
value string Yes Value.

DiallingNumbersInfo8+

Defines the contact number information.

System API: This is a system API.

System capability: SystemCapability.Telephony.CoreService

Name Type Mandatory Description
alphaTag string Yes Tag.
number string Yes Call transfer number.
recordNumber number Yes Record number.
pin2 string Yes PIN 2.

ContactType8+

Enumerates contact types.

System API: This is a system API.

System capability: SystemCapability.Telephony.CoreService

Name Value Description
GENERAL_CONTACT 1 Common contact number.
FIXED_DIALING 2 Fixed dialing number.

OperatorConfigKey9+

Enumerates carrier configuration keys.

System API: This is a system API.

System capability: SystemCapability.Telephony.CoreService

Name Value Description
KEY_VOICE_MAIL_NUMBER_STRING "voice_mail_number_string" Voice mailbox number.
KEY_IMS_SWITCH_ON_BY_DEFAULT_BOOL "ims_switch_on_by_default_bool" Fixed dialing number.
KEY_HIDE_IMS_SWITCH_BOOL "hide_ims_switch_bool" Whether to hide the IMS switch.
KEY_VOLTE_SUPPORTED_BOOL "volte_supported_bool" Whether to support VoLTE.
KEY_NR_MODE_SUPPORTED_LIST_INT_ARRAY "nr_mode_supported_list_int_array" List of supported NR modes.
KEY_VOLTE_PROVISIONING_SUPPORTED_BOOL "volte_provisioning_supported_bool" Whether to support VoLTE provisioning.
KEY_SS_OVER_UT_SUPPORTED_BOOL "ss_over_ut_supported_bool" Whether SS over UT is supported.
KEY_IMS_GBA_REQUIRED_BOOL "ims_gba_required_bool" Whether GBA is required for IMS.
KEY_UT_PROVISIONING_SUPPORTED_BOOL "ut_provisioning_supported_bool" Whether to support UT provisioning.
KEY_IMS_PREFER_FOR_EMERGENCY_BOOL "ims_prefer_for_emergency_bool" IMS preferences for emergency.
KEY_CALL_WAITING_SERVICE_CLASS_INT "call_waiting_service_class_int" Call waiting service.
KEY_CALL_TRANSFER_VISIBILITY_BOOL "call_transfer_visibility_bool" Call transfer visibility.
KEY_IMS_CALL_DISCONNECT_REASON_INFO_MAPPING_STRING_ARRAY "ims_call_disconnect_reason_info_mapping_string_array" List of IMS call disconnection reasons.
KEY_FORCE_VOLTE_SWITCH_ON_BOOL "force_volte_switch_on_bool" Whether to forcibly turn on VoLTE.
KEY_ENABLE_OPERATOR_NAME_CUST_BOOL "enable_operator_name_cust_bool" Whether to display the carrier name.
KEY_OPERATOR_NAME_CUST_STRING "operator_name_cust_string" Carrier name.
KEY_SPN_DISPLAY_CONDITION_CUST_INT "spn_display_condition_cust_int" SPN display rule.
KEY_PNN_CUST_STRING_ARRAY "pnn_cust_string_array" PLMN name
KEY_OPL_CUST_STRING_ARRAY "opl_cust_string_array" PLMN information of the carrier.
KEY_EMERGENCY_CALL_STRING_ARRAY "emergency_call_string_array" Emergency call list.