0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

鴻蒙開發(fā)電話服務(wù):ohos.telephony.sim之SIM卡管理

jf_46214456 ? 來源:jf_46214456 ? 作者:jf_46214456 ? 2024-06-16 22:28 ? 次閱讀

SIM卡管理

說明:
開發(fā)前請(qǐng)熟悉鴻蒙開發(fā)指導(dǎo)文檔 :[gitee.com/li-shizhen-skin/harmony-os/blob/master/README.md]
本模塊首批接口從API version 6開始支持。后續(xù)版本的新增接口,采用上角標(biāo)單獨(dú)標(biāo)記接口的起始版本。

導(dǎo)入模塊

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

sim.isSimActive7+

isSimActive(slotId: number, callback: AsyncCallback): void

獲取指定卡槽SIM卡是否激活,使用callback方式作為異步方法。

系統(tǒng)能力 :SystemCapability.Communication.CoreService

參數(shù)

參數(shù)名類型必填說明
slotIdnumber卡槽ID。 - 0:卡槽1 - 1:卡槽2
callbackAsyncCallback回調(diào)函數(shù)。

示例:

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

sim.isSimActive7+

isSimActive(slotId: number): Promise

獲取指定卡槽SIM卡是否激活,使用Promise方式作為異步方法。

系統(tǒng)能力 :SystemCapability.Communication.CoreService

參數(shù):

參數(shù)名類型必填說明
slotIdnumber卡槽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

獲取默認(rèn)語音業(yè)務(wù)的卡槽ID,使用callback方式作為異步方法。

系統(tǒng)能力 :SystemCapability.Communication.CoreService

參數(shù):

參數(shù)名類型必填說明
callbackAsyncCallback回調(diào)函數(shù)。

示例:

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

sim.getDefaultVoiceSlotId7+

getDefaultVoiceSlotId(): Promise

獲取默認(rèn)語音業(yè)務(wù)的卡槽ID,使用Promise方式作為異步方法。

系統(tǒng)能力 :SystemCapability.Communication.CoreService

返回值:

類型說明
Promise以Promise形式返回默認(rèn)語音業(yè)務(wù)的卡槽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

檢查應(yīng)用(調(diào)用者)是否已被授予運(yùn)營(yíng)商權(quán)限,使用callback方式作為異步方法。

系統(tǒng)能力 :SystemCapability.Communication.CoreService

參數(shù):

參數(shù)名類型必填說明
slotIdnumber卡槽ID。 - 0:卡槽1 - 1:卡槽2
callbackAsyncCallback回調(diào)函數(shù)。

示例:

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

sim.hasOperatorPrivileges7+

hasOperatorPrivileges(slotId: number): Promise

檢查應(yīng)用(調(diào)用者)是否已被授予運(yùn)營(yíng)商權(quán)限,使用Promise方式作為異步方法。

系統(tǒng)能力 :SystemCapability.Communication.CoreService

參數(shù):

參數(shù)名類型必填說明
slotIdnumber卡槽ID。 - 0:卡槽1 - 1:卡槽2

返回值:

類型說明
Promise以Promise形式返回檢查應(yīng)用(調(diào)用者)是否已被授予運(yùn)營(yíng)商權(quán)限。

示例:

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國(guó)家碼,使用callback方式作為異步方法。

系統(tǒng)能力 :SystemCapability.Communication.CoreService

參數(shù):

參數(shù)名類型必填說明
slotIdnumber卡槽ID。 - 0:卡槽1 - 1:卡槽2
callbackAsyncCallback回調(diào)函數(shù)。返回國(guó)家碼,例如:CN(中國(guó))。

示例:

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

sim.getISOCountryCodeForSim

getISOCountryCodeForSim(slotId: number): Promise

獲取指定卡槽SIM卡的ISO國(guó)家碼,使用Promise方式作為異步方法。

系統(tǒng)能力 :SystemCapability.Communication.CoreService

參數(shù):

參數(shù)名類型必填說明
slotIdnumber卡槽ID。 - 0:卡槽1 - 1:卡槽2

返回值:

類型說明
Promise以Promise形式返回獲取指定卡槽SIM卡的ISO國(guó)家碼,例如:CN(中國(guó))。

示例:

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)號(hào),使用callback方式作為異步方法。

系統(tǒng)能力 :SystemCapability.Communication.CoreService

參數(shù):

參數(shù)名類型必填說明
slotIdnumber卡槽ID。 - 0:卡槽1 - 1:卡槽2
callbackAsyncCallback回調(diào)函數(shù)。

示例:

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)號(hào),使用Promise方式作為異步方法。

系統(tǒng)能力 :SystemCapability.Communication.CoreService

參數(shù):

參數(shù)名類型必填說明
slotIdnumber卡槽ID。 - 0:卡槽1 - 1:卡槽2

返回值:

類型說明
Promise以Promise形式返回獲取指定卡槽SIM卡的歸屬PLMN號(hào)。

示例:

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卡的服務(wù)提供商名稱(Service Provider Name,SPN),使用callback方式作為異步方法。

系統(tǒng)能力 :SystemCapability.Communication.CoreService

參數(shù):

參數(shù)名類型必填說明
slotIdnumber卡槽ID。 - 0:卡槽1 - 1:卡槽2
callbackAsyncCallback回調(diào)函數(shù)。

示例:

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

sim.getSimSpn

getSimSpn(slotId: number): Promise

獲取指定卡槽SIM卡的服務(wù)提供商名稱(Service Provider Name,SPN),使用Promise方式作為異步方法。

系統(tǒng)能力 :SystemCapability.Communication.CoreService

參數(shù):

參數(shù)名類型必填說明
slotIdnumber卡槽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卡狀態(tài),使用callback方式作為異步方法。

系統(tǒng)能力 :SystemCapability.Communication.CoreService

參數(shù):

參數(shù)名類型必填說明
slotIdnumber卡槽ID。 - 0:卡槽1 - 1:卡槽2
callbackAsyncCallback<[SimState]>回調(diào)函數(shù)。參考SimState。

示例:

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

sim.getSimState

getSimState(slotId: number): Promise

獲取指定卡槽的SIM卡狀態(tài),使用Promise方式作為異步方法。

系統(tǒng)能力 :SystemCapability.Communication.CoreService

參數(shù):

參數(shù)名類型必填說明
slotIdnumber卡槽ID。 - 0:卡槽1 - 1:卡槽2

返回值:

類型說明
Promise<[SimState]>以Promise形式返回獲取指定卡槽的SIM卡狀態(tài)。

示例:

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方式作為異步方法。

系統(tǒng)能力 :SystemCapability.Communication.CoreService

參數(shù):

參數(shù)名類型必填說明
slotIdnumber卡槽ID。 - 0:卡槽1 - 1:卡槽2
callbackAsyncCallback<[CardType]>回調(diào)函數(shù)。

示例:

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

sim.getCardType7+

getCardType(slotId: number): Promise

獲取指定卡槽SIM卡的卡類型,使用Promise方式作為異步方法。

系統(tǒng)能力 :SystemCapability.Communication.CoreService

參數(shù):

參數(shù)名類型必填說明
slotIdnumber卡槽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方式作為異步方法。

系統(tǒng)能力 :SystemCapability.Communication.CoreService

參數(shù):

參數(shù)名類型必填說明
slotIdnumber卡槽ID。 - 0:卡槽1 - 1:卡槽2
callbackAsyncCallback回調(diào)函數(shù)。

示例:

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

sim.hasSimCard7+

hasSimCard(slotId: number): Promise

獲取指定卡槽SIM卡是否插卡,使用Promise方式作為異步方法。

系統(tǒng)能力 :SystemCapability.Communication.CoreService

參數(shù):

參數(shù)名類型必填說明
slotIdnumber卡槽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

獲取卡槽數(shù)量。

系統(tǒng)能力 :SystemCapability.Communication.CoreService

返回值:

類型說明
number卡槽數(shù)量。

示例:

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

SimState

SIM卡狀態(tài)。

系統(tǒng)能力 :以下各項(xiàng)對(duì)應(yīng)的系統(tǒng)能力均為SystemCapability.Telephony.CoreService。

名稱說明
SIM_STATE_UNKNOWN0SIM卡狀態(tài)未知,即無法獲取準(zhǔn)確的狀態(tài)。
SIM_STATE_NOT_PRESENT1表示SIM卡處于not present狀態(tài),即卡槽中沒有插入SIM卡。
SIM_STATE_LOCKED2表示SIM卡處于locked狀態(tài),即SIM卡被PIN、PUK或網(wǎng)絡(luò)鎖鎖定。
SIM_STATE_NOT_READY3表示SIM卡處于not ready狀態(tài),即SIM卡在位但無法正常工作。
SIM_STATE_READY4表示SIM卡處于ready狀態(tài),即SIM卡在位且工作正常。
SIM_STATE_LOADED5表示SIM卡處于loaded狀態(tài),即SIM卡在位且所有卡文件加載完畢。HarmonyOSOpenHarmony鴻蒙文檔籽料:mau123789是v直接拿

搜狗高速瀏覽器截圖20240326151344.png

CardType7+

卡類型。

系統(tǒng)能力 :以下各項(xiàng)對(duì)應(yīng)的系統(tǒng)能力均為SystemCapability.Telephony.CoreService。

名稱說明
UNKNOWN_CARD-1未知類型
SINGLE_MODE_SIM_CARD10單SIM卡
SINGLE_MODE_USIM_CARD20單USIM卡
SINGLE_MODE_RUIM_CARD30單RUIM卡
DUAL_MODE_CG_CARD40雙卡模式C+G
CT_NATIONAL_ROAMING_CARD41中國(guó)電信內(nèi)部漫游卡
CU_DUAL_MODE_CARD42中國(guó)聯(lián)通雙模卡
DUAL_MODE_TELECOM_LTE_CARD43雙模式電信LTE卡
DUAL_MODE_UG_CARD50雙模式UG卡
SINGLE_MODE_ISIM_CARD8+60單一ISIM卡類型

審核編輯 黃宇

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • SIM卡
    +關(guān)注

    關(guān)注

    6

    文章

    277

    瀏覽量

    28399
  • 鴻蒙
    +關(guān)注

    關(guān)注

    56

    文章

    2267

    瀏覽量

    42482
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    原來手機(jī)SIM的PCB設(shè)計(jì)是這樣的!

    SIM(SubscriberIdentityModule)是移動(dòng)電話機(jī)中的一塊智能芯片,它的主要功能是存儲(chǔ)用戶的身份識(shí)別信息。一張符合GSM規(guī)范的
    的頭像 發(fā)表于 07-26 08:08 ?1613次閱讀
    原來手機(jī)<b class='flag-5'>SIM</b><b class='flag-5'>卡</b>的PCB設(shè)計(jì)是這樣的!

    鴻蒙實(shí)戰(zhàn)項(xiàng)目開發(fā):【短信服務(wù)

    數(shù)據(jù)管理 電話服務(wù) 分布式應(yīng)用開發(fā) 通知與窗口管理 多媒體技術(shù) 安全技能 任務(wù)管理 WebGL
    發(fā)表于 03-03 21:29

    鴻蒙實(shí)戰(zhàn)開發(fā):【SIM管理

    碼,getSimOperatorNumeric方法獲取指定SIM的歸屬PLMN號(hào),getDefaultVoiceSlotId方法獲取默認(rèn)語音業(yè)務(wù)的卡槽ID等開發(fā)電話
    發(fā)表于 03-04 22:18

    #鎳氫電池 #SIM

    SIM
    jf_97106930
    發(fā)布于 :2023年05月19日 09:47:38

    HarmonyOS API Version 7版本特性說明

    4所示,提供基于蜂窩網(wǎng)絡(luò)的電話服務(wù)能力,包括SIM、搜網(wǎng)、短彩信、蜂窩數(shù)據(jù)、通話管理、網(wǎng)絡(luò)管理
    發(fā)表于 11-30 15:19

    HarmonyOS API Version 7版本特性說明

    4所示,提供基于蜂窩網(wǎng)絡(luò)的電話服務(wù)能力,包括SIM、搜網(wǎng)、短彩信、蜂窩數(shù)據(jù)、通話管理、網(wǎng)絡(luò)管理
    發(fā)表于 12-01 10:35

    SIM

    SIM 也稱為用戶識(shí)別,是數(shù)字移動(dòng)電話的一張資料,它記錄著用戶的身份識(shí)別及密鑰,可供GSM
    發(fā)表于 12-19 10:40 ?1095次閱讀

    iphone5采用nano-SIM 普通SIM不能剪成nano-SIM

    iPhone 5采用的是更小的nano-SIM,蘋果也明確表示,iPhone 5不兼容micro-SIM。要買iPhone 5的同學(xué)要知道普通SIM
    發(fā)表于 09-13 14:23 ?9893次閱讀

    如何設(shè)置手機(jī)SIMPIN密碼

    SIM是,也稱為用戶身份識(shí)別、智能,GSM數(shù)字移動(dòng)電話機(jī)必須裝上此方能使用。在電腦芯片上
    的頭像 發(fā)表于 03-06 15:13 ?7.8w次閱讀
    如何設(shè)置手機(jī)<b class='flag-5'>SIM</b><b class='flag-5'>卡</b>PIN密碼

    基于Android智能終端的虛擬SIM軟件實(shí)現(xiàn)

    為了滿足移動(dòng)用戶境外出行時(shí)的上網(wǎng)需求,設(shè)計(jì)實(shí)現(xiàn)了一種基于Android智能終端的虛擬SIM軟件,支持用戶通過終端下載漫游地SIM信息,并且可以通過使用下載的卡參數(shù)鑒權(quán)入網(wǎng),以接近漫
    的頭像 發(fā)表于 08-07 10:01 ?2.7w次閱讀

    SIMGPRS模塊知識(shí)詳解 淺談SIMGPRS原理模塊

    SIM是(Subscriber Identification Module ),也稱為用戶身份識(shí)別、智能,GSM數(shù)字移動(dòng)電話機(jī)必須裝上
    的頭像 發(fā)表于 09-11 09:39 ?4w次閱讀

    SIM卡座與SIM的應(yīng)用領(lǐng)域都有哪些

    計(jì)費(fèi)).而應(yīng)該是多種運(yùn)用的渠道。這意味著SIM不只具有現(xiàn)在的輔佐功用(電話薄存儲(chǔ)、消息存儲(chǔ)、激活不同的效勞、呼叫約束和觀運(yùn)用履行),并且有可能集成銀行、社保、公交等各種職業(yè)運(yùn)用于一身,各運(yùn)用之間選用相似防火墻的技能進(jìn)行維護(hù),從
    的頭像 發(fā)表于 09-24 18:01 ?3606次閱讀

    simpin碼怎么設(shè)置 simpin碼怎么重置

    SIMPIN碼是一種用于保護(hù)SIM的安全性的功能,它要求在每次啟動(dòng)手機(jī)或更換SIM時(shí)輸入正
    的頭像 發(fā)表于 01-31 14:34 ?1.7w次閱讀

    鴻蒙開發(fā)實(shí)戰(zhàn):【電話服務(wù)子系統(tǒng)】

    電話服務(wù)子系統(tǒng),提供了一系列的API用于獲取無線蜂窩網(wǎng)絡(luò)和SIM相關(guān)的一些信息。應(yīng)用可以通過調(diào)用API來獲取當(dāng)前注冊(cè)網(wǎng)絡(luò)名稱、網(wǎng)絡(luò)服務(wù)狀態(tài)
    的頭像 發(fā)表于 03-14 21:49 ?264次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>開發(fā)</b>實(shí)戰(zhàn):【<b class='flag-5'>電話</b><b class='flag-5'>服務(wù)</b>子系統(tǒng)】

    鴻蒙開發(fā)電話服務(wù)ohos.telephony.data蜂窩數(shù)據(jù)

    獲取默認(rèn)移動(dòng)數(shù)據(jù)的SIM,使用callback方式作為異步方法。
    的頭像 發(fā)表于 06-18 09:31 ?203次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>開發(fā)電話</b><b class='flag-5'>服務(wù)</b>:<b class='flag-5'>ohos.telephony</b>.data<b class='flag-5'>之</b>蜂窩數(shù)據(jù)