SIM卡管理
說明:
開發前請熟悉鴻蒙開發指導文檔 :[gitee.com/li-shizhen-skin/harmony-os/blob/master/README.md
]
本模塊首批接口從API version 6開始支持。后續版本的新增接口,采用上角標單獨標記接口的起始版本。
導入模塊
import sim from '@ohos.telephony.sim';
sim.isSimActive7+
isSimActive(slotId: number, callback: AsyncCallback): void
獲取指定卡槽SIM卡是否激活,使用callback方式作為異步方法。
系統能力 :SystemCapability.Communication.CoreService
參數:
參數名 | 類型 | 必填 | 說明 |
---|---|---|---|
slotId | number | 是 | 卡槽ID。 - 0:卡槽1 - 1:卡槽2 |
callback | AsyncCallback | 是 | 回調函數。 |
示例:
sim.isSimActive(0, (err, data) = > {
console.log(`callback: err- >${JSON.stringify(err)}, data- >${JSON.stringify(data)}`);
});
sim.isSimActive7+
isSimActive(slotId: number): Promise
獲取指定卡槽SIM卡是否激活,使用Promise方式作為異步方法。
系統能力 :SystemCapability.Communication.CoreService
參數:
參數名 | 類型 | 必填 | 說明 |
---|---|---|---|
slotId | number | 是 | 卡槽ID。 - 0:卡槽1 - 1:卡槽2 |
返回值:
類型 | 說明 |
---|---|
Promise | 以Promise形式返回指定卡槽是否激活,如果激活返回true。 |
示例:
let promise = sim.isSimActive(0);
promise.then(data = > {
console.log(`isSimActive success, promise: data- >${JSON.stringify(data)}`);
}).catch(err = > {
console.log(`isSimActive fail, promise: err- >${JSON.stringify(err)}`);
});
sim.getDefaultVoiceSlotId7+
getDefaultVoiceSlotId(callback: AsyncCallback): void
獲取默認語音業務的卡槽ID,使用callback方式作為異步方法。
系統能力 :SystemCapability.Communication.CoreService
參數:
參數名 | 類型 | 必填 | 說明 |
---|---|---|---|
callback | AsyncCallback | 是 | 回調函數。 |
示例:
sim.getDefaultVoiceSlotId((err, data) = > {
console.log(`callback: err- >${JSON.stringify(err)}, data- >${JSON.stringify(data)}`);
});
sim.getDefaultVoiceSlotId7+
getDefaultVoiceSlotId(): Promise
獲取默認語音業務的卡槽ID,使用Promise方式作為異步方法。
系統能力 :SystemCapability.Communication.CoreService
返回值:
類型 | 說明 |
---|---|
Promise | 以Promise形式返回默認語音業務的卡槽ID。 |
示例:
let promise = sim.getDefaultVoiceSlotId();
promise.then(data = > {
console.log(`getDefaultVoiceSlotId success, promise: data- >${JSON.stringify(data)}`);
}).catch(err = > {
console.log(`getDefaultVoiceSlotId fail, promise: err- >${JSON.stringify(err)}`);
});
sim.hasOperatorPrivileges7+
hasOperatorPrivileges(slotId: number, callback: AsyncCallback): void
檢查應用(調用者)是否已被授予運營商權限,使用callback方式作為異步方法。
系統能力 :SystemCapability.Communication.CoreService
參數:
參數名 | 類型 | 必填 | 說明 |
---|---|---|---|
slotId | number | 是 | 卡槽ID。 - 0:卡槽1 - 1:卡槽2 |
callback | AsyncCallback | 是 | 回調函數。 |
示例:
sim.hasOperatorPrivileges(0, (err, data) = > {
console.log(`callback: err- >${JSON.stringify(err)}, data- >${JSON.stringify(data)}`);
});
sim.hasOperatorPrivileges7+
hasOperatorPrivileges(slotId: number): Promise
檢查應用(調用者)是否已被授予運營商權限,使用Promise方式作為異步方法。
系統能力 :SystemCapability.Communication.CoreService
參數:
參數名 | 類型 | 必填 | 說明 |
---|---|---|---|
slotId | number | 是 | 卡槽ID。 - 0:卡槽1 - 1:卡槽2 |
返回值:
類型 | 說明 |
---|---|
Promise | 以Promise形式返回檢查應用(調用者)是否已被授予運營商權限。 |
示例:
let promise = sim.hasOperatorPrivileges(0);
promise.then(data = > {
console.log(`hasOperatorPrivileges success, promise: data- >${JSON.stringify(data)}`);
}).catch(err = > {
console.log(`hasOperatorPrivileges fail, promise: err- >${JSON.stringify(err)}`);
});
sim.getISOCountryCodeForSim
getISOCountryCodeForSim(slotId: number, callback: AsyncCallback): void
獲取指定卡槽SIM卡的ISO國家碼,使用callback方式作為異步方法。
系統能力 :SystemCapability.Communication.CoreService
參數:
參數名 | 類型 | 必填 | 說明 |
---|---|---|---|
slotId | number | 是 | 卡槽ID。 - 0:卡槽1 - 1:卡槽2 |
callback | AsyncCallback | 是 | 回調函數。返回國家碼,例如:CN(中國)。 |
示例:
sim.getISOCountryCodeForSim(0, (err, data) = > {
console.log(`callback: err- >${JSON.stringify(err)}, data- >${JSON.stringify(data)}`);
});
sim.getISOCountryCodeForSim
getISOCountryCodeForSim(slotId: number): Promise
獲取指定卡槽SIM卡的ISO國家碼,使用Promise方式作為異步方法。
系統能力 :SystemCapability.Communication.CoreService
參數:
參數名 | 類型 | 必填 | 說明 |
---|---|---|---|
slotId | number | 是 | 卡槽ID。 - 0:卡槽1 - 1:卡槽2 |
返回值:
類型 | 說明 |
---|---|
Promise | 以Promise形式返回獲取指定卡槽SIM卡的ISO國家碼,例如:CN(中國)。 |
示例:
let promise = sim.getISOCountryCodeForSim(0);
promise.then(data = > {
console.log(`getISOCountryCodeForSim success, promise: data- >${JSON.stringify(data)}`);
}).catch(err = > {
console.log(`getISOCountryCodeForSim fail, promise: err- >${JSON.stringify(err)}`);
});
sim.getSimOperatorNumeric
getSimOperatorNumeric(slotId: number, callback: AsyncCallback): void
獲取指定卡槽SIM卡的歸屬PLMN(Public Land Mobile Network)號,使用callback方式作為異步方法。
系統能力 :SystemCapability.Communication.CoreService
參數:
參數名 | 類型 | 必填 | 說明 |
---|---|---|---|
slotId | number | 是 | 卡槽ID。 - 0:卡槽1 - 1:卡槽2 |
callback | AsyncCallback | 是 | 回調函數。 |
示例:
sim.getSimOperatorNumeric(0, (err, data) = > {
console.log(`callback: err- >${JSON.stringify(err)}, data- >${JSON.stringify(data)}`);
});
sim.getSimOperatorNumeric
getSimOperatorNumeric(slotId: number): Promise
獲取指定卡槽SIM卡的歸屬PLMN(Public Land Mobile Network)號,使用Promise方式作為異步方法。
系統能力 :SystemCapability.Communication.CoreService
參數:
參數名 | 類型 | 必填 | 說明 |
---|---|---|---|
slotId | number | 是 | 卡槽ID。 - 0:卡槽1 - 1:卡槽2 |
返回值:
類型 | 說明 |
---|---|
Promise | 以Promise形式返回獲取指定卡槽SIM卡的歸屬PLMN號。 |
示例:
let promise = sim.getSimOperatorNumeric(0);
promise.then(data = > {
console.log(`getSimOperatorNumeric success, promise: data- >${JSON.stringify(data)}`);
}).catch(err = > {
console.log(`getSimOperatorNumeric fail, promise: err- >${JSON.stringify(err)}`);
});
sim.getSimSpn
getSimSpn(slotId: number, callback: AsyncCallback): void
獲取指定卡槽SIM卡的服務提供商名稱(Service Provider Name,SPN),使用callback方式作為異步方法。
系統能力 :SystemCapability.Communication.CoreService
參數:
參數名 | 類型 | 必填 | 說明 |
---|---|---|---|
slotId | number | 是 | 卡槽ID。 - 0:卡槽1 - 1:卡槽2 |
callback | AsyncCallback | 是 | 回調函數。 |
示例:
sim.getSimSpn(0, (err, data) = > {
console.log(`callback: err- >${JSON.stringify(err)}, data- >${JSON.stringify(data)}`);
});
sim.getSimSpn
getSimSpn(slotId: number): Promise
獲取指定卡槽SIM卡的服務提供商名稱(Service Provider Name,SPN),使用Promise方式作為異步方法。
系統能力 :SystemCapability.Communication.CoreService
參數:
參數名 | 類型 | 必填 | 說明 |
---|---|---|---|
slotId | number | 是 | 卡槽ID。 - 0:卡槽1 - 1:卡槽2 |
返回值:
類型 | 說明 |
---|---|
Promise | 以Promise形式返回獲取指定卡槽SIM卡的SPN。 |
示例:
let promise = sim.getSimSpn(0);
promise.then(data = > {
console.log(`getSimSpn success, promise: data- >${JSON.stringify(data)}`);
}).catch(err = > {
console.log(`getSimSpn fail, promise: err- >${JSON.stringify(err)}`);
});
sim.getSimState
getSimState(slotId: number, callback: AsyncCallback): void
獲取指定卡槽的SIM卡狀態,使用callback方式作為異步方法。
系統能力 :SystemCapability.Communication.CoreService
參數:
參數名 | 類型 | 必填 | 說明 |
---|---|---|---|
slotId | number | 是 | 卡槽ID。 - 0:卡槽1 - 1:卡槽2 |
callback | AsyncCallback<[SimState]> | 是 | 回調函數。參考SimState。 |
示例:
sim.getSimState(0, (err, data) = > {
console.log(`callback: err- >${JSON.stringify(err)}, data- >${JSON.stringify(data)}`);
});
sim.getSimState
getSimState(slotId: number): Promise
獲取指定卡槽的SIM卡狀態,使用Promise方式作為異步方法。
系統能力 :SystemCapability.Communication.CoreService
參數:
參數名 | 類型 | 必填 | 說明 |
---|---|---|---|
slotId | number | 是 | 卡槽ID。 - 0:卡槽1 - 1:卡槽2 |
返回值:
類型 | 說明 |
---|---|
Promise<[SimState]> | 以Promise形式返回獲取指定卡槽的SIM卡狀態。 |
示例:
let promise = sim.getSimState(0);
promise.then(data = > {
console.log(`getSimState success, promise: data- >${JSON.stringify(data)}`);
}).catch(err = > {
console.log(`getSimState fail, promise: err- >${JSON.stringify(err)}`);
});
sim.getCardType7+
getCardType(slotId: number, callback: AsyncCallback): void
獲取指定卡槽SIM卡的卡類型,使用callback方式作為異步方法。
系統能力 :SystemCapability.Communication.CoreService
參數:
參數名 | 類型 | 必填 | 說明 |
---|---|---|---|
slotId | number | 是 | 卡槽ID。 - 0:卡槽1 - 1:卡槽2 |
callback | AsyncCallback<[CardType]> | 是 | 回調函數。 |
示例:
sim.getCardType(0, (err, data) = > {
console.log(`callback: err- >${JSON.stringify(err)}, data- >${JSON.stringify(data)}`);
});
sim.getCardType7+
getCardType(slotId: number): Promise
獲取指定卡槽SIM卡的卡類型,使用Promise方式作為異步方法。
系統能力 :SystemCapability.Communication.CoreService
參數:
參數名 | 類型 | 必填 | 說明 |
---|---|---|---|
slotId | number | 是 | 卡槽ID。 - 0:卡槽1 - 1:卡槽2 |
返回值:
類型 | 說明 |
---|---|
Promise<[CardType]> | 以Promise形式返回指定卡槽SIM卡的卡類型。 |
示例:
let promise = sim.getCardType(0);
promise.then(data = > {
console.log(`getCardType success, promise: data- >${JSON.stringify(data)}`);
}).catch(err = > {
console.log(`getCardType fail, promise: err- >${JSON.stringify(err)}`);
});
sim.hasSimCard7+
hasSimCard(slotId: number, callback: AsyncCallback): void
獲取指定卡槽SIM卡是否插卡,使用callback方式作為異步方法。
系統能力 :SystemCapability.Communication.CoreService
參數:
參數名 | 類型 | 必填 | 說明 |
---|---|---|---|
slotId | number | 是 | 卡槽ID。 - 0:卡槽1 - 1:卡槽2 |
callback | AsyncCallback | 是 | 回調函數。 |
示例:
sim.hasSimCard(0, (err, data) = > {
console.log(`callback: err- >${JSON.stringify(err)}, data- >${JSON.stringify(data)}`);
});
sim.hasSimCard7+
hasSimCard(slotId: number): Promise
獲取指定卡槽SIM卡是否插卡,使用Promise方式作為異步方法。
系統能力 :SystemCapability.Communication.CoreService
參數:
參數名 | 類型 | 必填 | 說明 |
---|---|---|---|
slotId | number | 是 | 卡槽ID。 - 0:卡槽1 - 1:卡槽2 |
返回值:
類型 | 說明 |
---|---|
Promise | 以Promise形式返回指定卡槽是否插卡,如果插卡返回true。 |
示例:
let promise = sim.hasSimCard(0);
promise.then(data = > {
console.log(`hasSimCard success, promise: data- >${JSON.stringify(data)}`);
}).catch(err = > {
console.log(`hasSimCard fail, promise: err- >${JSON.stringify(err)}`);
});
sim.getMaxSimCount7+
getMaxSimCount(): number
獲取卡槽數量。
系統能力 :SystemCapability.Communication.CoreService
返回值:
類型 | 說明 |
---|---|
number | 卡槽數量。 |
示例:
console.log("Result: "+sim.getMaxSimCount())
SimState
SIM卡狀態。
系統能力 :以下各項對應的系統能力均為SystemCapability.Telephony.CoreService。
名稱 | 值 | 說明 |
---|---|---|
SIM_STATE_UNKNOWN | 0 | SIM卡狀態未知,即無法獲取準確的狀態。 |
SIM_STATE_NOT_PRESENT | 1 | 表示SIM卡處于not present狀態,即卡槽中沒有插入SIM卡。 |
SIM_STATE_LOCKED | 2 | 表示SIM卡處于locked狀態,即SIM卡被PIN、PUK或網絡鎖鎖定。 |
SIM_STATE_NOT_READY | 3 | 表示SIM卡處于not ready狀態,即SIM卡在位但無法正常工作。 |
SIM_STATE_READY | 4 | 表示SIM卡處于ready狀態,即SIM卡在位且工作正常。 |
SIM_STATE_LOADED | 5 | 表示SIM卡處于loaded狀態,即SIM卡在位且所有卡文件加載完畢。HarmonyOS與OpenHarmony鴻蒙文檔籽料:mau123789是v直接拿 |
CardType7+
卡類型。
系統能力 :以下各項對應的系統能力均為SystemCapability.Telephony.CoreService。
名稱 | 值 | 說明 |
---|---|---|
UNKNOWN_CARD | -1 | 未知類型 |
SINGLE_MODE_SIM_CARD | 10 | 單SIM卡 |
SINGLE_MODE_USIM_CARD | 20 | 單USIM卡 |
SINGLE_MODE_RUIM_CARD | 30 | 單RUIM卡 |
DUAL_MODE_CG_CARD | 40 | 雙卡模式C+G |
CT_NATIONAL_ROAMING_CARD | 41 | 中國電信內部漫游卡 |
CU_DUAL_MODE_CARD | 42 | 中國聯通雙模卡 |
DUAL_MODE_TELECOM_LTE_CARD | 43 | 雙模式電信LTE卡 |
DUAL_MODE_UG_CARD | 50 | 雙模式UG卡 |
SINGLE_MODE_ISIM_CARD8+ | 60 | 單一ISIM卡類型 |
審核編輯 黃宇
-
SIM卡
+關注
關注
6文章
284瀏覽量
28590 -
鴻蒙
+關注
關注
57文章
2307瀏覽量
42737
發布評論請先 登錄
相關推薦
評論