我们手机中使用的SIM卡分为SIM/USIM等,这些卡的种类不同,功能有别,但是统称为UICC(Universal Integrated Circuit Card),而且无论什么类型的SIM卡,其最基本的功能是相同的,比如都要有唯一的ID(ICCID),都要具备运营商标识(MCC/MNC),都要有存储数据的能力(保存通讯录)等,Android构建了一套系统抽象的管理所有的SIM卡,其主要组成部分如下:
1、UiccController.java
----Uicc的总控制接口,向外提供UiccCard、UiccCardApplication、IccRecords、IccFileHandler对象
2、UiccCard.java
----向外提供UiccCardApplication对象,并完成CatService的初始化
3、UiccCardApplication.java
----创建并向外提供IccFileHandler、IccRecords对象
4、IccFileHandler.java
----负责SIM卡文件系统的读写
5、IccRecords.java
----保存SIM卡常用信息,包括SIM联系人、语音信箱等
6、CatService.java
----负责STK业务
他们的孵化关系又可以用下图来表示:
1、UiccController.java
----Uicc的总控制接口,向外提供UiccCard、UiccCardApplication、IccRecords、IccFileHandler对象
2、UiccCard.java
----向外提供UiccCardApplication对象,并完成CatService的初始化
3、UiccCardApplication.java
----创建并向外提供IccFileHandler、IccRecords对象
4、IccFileHandler.java
----负责SIM卡文件系统的读写
5、IccRecords.java
----保存SIM卡常用信息,包括SIM联系人、语音信箱等
6、CatService.java
----负责STK业务
他们的孵化关系又可以用下图来表示: