首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在Android中检索SIM卡IMSI?

如何在Android中检索SIM卡IMSI?
EN

Stack Overflow用户
提问于 2012-05-21 16:52:15
回答 3查看 14.1K关注 0票数 2
代码语言:javascript
运行
复制
public String getSubscriberId(){
    operator = (TelephonyManager)context.getSystemService(Context.TELEPHONY_SERVICE);
    String IMSI = operator.getSubscriberId();
    return IMSI;
}

simID = (TextView) findViewById(R.id.text2);
    simIMSI = getSubscriberId().toString();

    if (simIMSI.equals("")){
        simID.setText("No SIM card detected!");
    }
    else{
        simID.setText(simIMSI.toString());
        SaveUniqueId(simIMSI.toString());
    }

我希望检索手机SIM卡IMSI并在布局中显示,我使用仿真器运行程序,即使我知道仿真器没有连接SIM卡,但它应该有类似“没有检测到SIM卡”的结果,对吗?但是为什么我的代码会出错,或者是我的"getSubscriberId()“出了什么问题?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2012-05-21 16:58:19

代码语言:javascript
运行
复制
String serviceName = Context.TELEPHONY_SERVICE;
TelephonyManager m_telephonyManager = (TelephonyManager) getSystemService(serviceName);

现在让我们从检索信息的实际源代码开始:

代码语言:javascript
运行
复制
public String findDeviceID() {
     String deviceID = null;
     String serviceName = Context.TELEPHONY_SERVICE;
     TelephonyManager m_telephonyManager = (TelephonyManager) getSystemService(serviceName);
     int deviceType = m_telephonyManager.getPhoneType();
     switch (deviceType) {
           case (TelephonyManager.PHONE_TYPE_GSM):
           break;
  case (TelephonyManager.PHONE_TYPE_CDMA):
  break;
  case (TelephonyManager.PHONE_TYPE_NONE):
  break;
          default:
         break;
     }
     deviceID = m_telephonyManager.getDeviceId();
     return deviceID;
}

有关更多详细信息,请参阅此站点http://ashnatechnologies.blogspot.in/2010/10/how-to-get-imei-on-android-devices.html

票数 2
EN

Stack Overflow用户

发布于 2012-05-21 16:55:38

您可以访问此链接http://www.anddev.org/tinytut_-_getting_the_imsi_-_imei_sim-device_unique_ids-t446.html

对IMSI使用以下代码

代码语言:javascript
运行
复制
String imsi = android.os.SystemProperties.get(android.telephony.TelephonyProperties.PROPERTY_IMSI);
票数 0
EN

Stack Overflow用户

发布于 2013-06-25 15:25:57

这段代码应该可以工作。

代码语言:javascript
运行
复制
String myIMSI =
android.os.SystemProperties.get(android.telephony.TelephonyProperties.PROPERTY_IMSI);
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10682124

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档