android2.2应用开发之IccCard(sim卡或USIM卡)第一篇
来源:互联网 发布:网上订电影票软件 编辑:程序博客网 时间:2024/06/06 11:47
如果要做android通讯录的联系人的机卡混排显示,由于手机卡类型的不同,导致手机卡存储容量以及可以存储信息不同,就要涉及到android去读Icc卡的信息。
一般的sim卡只能存储姓名跟一个电话号码,而USIM卡还可以存多个电话号码跟邮箱,所以编辑卡上联系人的时候应该动态的去布局,或者应用可以去写死,让USIM卡的存储信息与SIM卡一致。
由于本人是在源码上开发的,用SDK开发的朋友有些类或方法以及属性可能引用不到,这是由于用的谷歌没有公开的API导致,望大家不要莫名其妙。
1、读取ICC卡的类型:
由于我只需要去区分sim和USIM,所以返回的不是USIM的我都视为sim,这个大家可以根据需要自己去改。
import android.os.SystemProperties;
public String getSimType(){
if (SystemProperties.get("gsm.sim.card.type", "SIM").contentEquals ("USIM")){
return "USIM";
}else{
return "SIM";
}
}
2 、是否有ICC卡:
import android.telephony.TelephonyManager;
boolean hasIcc = ((TelephonyManager) getSystemService
(Context.TELEPHONY_SERVICE)).hasIccCard();
3、何时导手机卡上的联系人既sim卡联系人导入的时机:
一般大家会想到开机就导呗,接收boot_completed的消息然后启动一个service去导,那我这里告诉大家一个系统发的广播,比boot_completed时间发出的更早些。
注意:这个广播只有插入手机卡的情况下才会去播出,没有插卡式不会播出去的。
import com.android.internal.telephony.IccCard;
import com.android.internal.telephony.TelephonyIntents;
对,这个广播即TelephonyIntents.ACTION_SIM_STATE_CHANGED,字符串是:"android.intent.action.SIM_STATE_CHANGED",系统在发这个action广播的时候会在intent里附加一个IccCard.INTENT_KEY_ICC_STATE的数据,说到这里大家应该知道IccCard会有好几种状态,具体多少大家可以去查源码,我这里当状态为IccCard.INTENT_VALUE_ICC_LOADED时表明手机卡已经装载好,可以去读手机卡的数据了。
先写到这里吧,下一篇说下是如何去导sim卡联系人的。
- android2.2应用开发之IccCard(sim卡或USIM卡)第一篇
- android2.2应用开发之IccCard(sim卡或USIM卡)第一篇
- android2.2应用开发之IccCard(sim卡或USIM卡)第一篇
- android2.2应用开发之IccCard(sim卡或USIM卡)
- android2.2应用开发之IccCard(sim卡或USIM卡)
- android2.2应用开发之IccCard(sim卡或USIM卡)
- SIM卡与USIM
- 手机卡,SIM卡,USIM 卡,nano卡
- SIM(USIM)卡中的数据和2G/3G网络的鉴权
- SIM(USIM)卡中的数据和2G/3G网络的鉴权
- android -- sim/usim卡导联系人
- USIM卡与SIM的区别
- UICC,USIM卡与SIM的区别
- UICC,USIM卡与SIM的区别
- UICC,USIM卡与SIM的区别
- UICC,USIM卡与SIM的区别
- UICC,USIM卡与SIM的区别
- USIM卡与SIM的区别
- js查看Object对象的内容
- zoj 2185 || poj 1969 Count on Canton
- ArcGIS Server Instance name on port 80 already exists Please choose another 解决办法
- .NET单元测试学习(二)
- 带有输入自动匹配功能的Combobox
- android2.2应用开发之IccCard(sim卡或USIM卡)第一篇
- ubuntu linux android 环境配置
- ArcGIS Server9.3 AJAX系列(一)之CallbackResults
- Windows mobile 添加一个loading动画
- winsock2.h和windows.h冲突问题的解决方案
- Ubuntu安装时没注册root用户密码,怎么登录root
- linux如何根据进程ID查找启动程序的路径
- Notes on MongoDB
- Ubuntu安装中文输入法