android平台双卡适配

随着双卡手机的普及,应用中需要对SIM卡相关功能进行适配。由于Android原生仅支持单卡,双卡适配需针对各厂商定制系统进行。基本步骤包括:通过ADB检查服务,识别phone和sms服务;使用反射获取服务实例并分析类名和方法;通过反射调用相关接口测试功能;分析广播Intent适配短信接收;以及数据库列名分析适配双卡信息。
摘要由CSDN通过智能技术生成

市面上很多双卡机型,所以应用中如果有于sim卡有关的功能都需要适配。

android源码里只支持单卡,双卡是各个厂商在源码基础上扩展的。所以要适配,只好针对不同厂商的不同机型逐一进行。


适配基本步骤:

拿到一台双卡手机后,连上adb shell 查看一下注册的服务:

service list

在服务列表里找到phone 和sms相关的服务。phone、phone2、isms、isms2之类。

有的双卡只有一个phone,有的会有两个。不管几个,先写个测试代码,获得他们的服务实例。

以电话适配为例,先获得电话服务中的一个:

Object mTelephonyManager = mContext.getSystemService("phone2");

获得实例后,利用反射,查看实例的类名和所有public方法:

if(mTelephonyManager !=null){
			Method[] ms = mTelephonyManager.getClass().getMethods();
			Loge(mTelephonyManager.getClass().getCanonicalName());
			for(Method m:ms){
				Loge(m.getName()+" "+m.toGenericString()+" "+m.isAcc
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值