我正在创建一个关于通话记录的应用程序,我偶然发现了这个想法。现在,通过电话拨号器和设备上安装的voip软件拨打的电话也会显示为通话记录并猜测,因为Voip软件会在呼叫按钮按下Voip时呼叫电话拨号器。现在我正在考虑消除voip调用的解决方案,我提出了这个想法,但我不知道它是否可行。
现在是否可以获取从中进行特定呼叫的Sim卡序列号?
这是我正在使用的代码行。
Telly=(TelephonyManager)getSystemService(Context.TELEPHONY_SERVICE);
simSerialNumber=Telly.getSimSerialNumber();
Cursor Logs_query=managedQuery(CallLog.Calls.CONTENT_URI, null, null, null, null);
int number=Logs_query.getColumnIndex(CallLog.Calls.NUMBER);
我很感激建议和代码方面的一些帮助。
答案 0 :(得分:1)
现在是否可以获取从中进行特定呼叫的Sim卡序列号?
不,您无法区分日志来自哪个拨号程序。
呼叫日志内容提供程序不保存插入日志的拨号程序的信息。
答案 1 :(得分:0)
如果您运行该代码,您现在有任何结果或例外吗?
你设置了权限READ_PHONE_STATE
吗?这需要使用getSimSerialNumber()
方法。
答案 2 :(得分:0)
您必须使用Telephony Manager;如果没有找到联系人号码。用户;您可以使用相同的Telephony Manager Class获取Sim Card的Sim Serial Number和Imei No. Android Device ...
添加权限:
导入:
import android.telephony.TelephonyManager;
使用以下代码:
TelephonyManager tm =(TelephonyManager)getSystemService(Context.TELEPHONY_SERVICE);
// get IMEI
imei = tm.getDeviceId();
// get SimSerialNumber
simSerialNumber = tm.getSimSerialNumber();