`

Getting the IMSI / IMEI (SIM/Device unique IDs)

阅读更多
What you learn:  You will learn how read out the IMSI  (International Mobile Subscriber Identity ) of the SIM-Card present in your mobile and the IMEI (International Mobile Equipment Identity). The IMSI  identifies with the SIM , the IMEI  with the device

Possible Scenario:  You need a unique id  for authentication/registration or license purposes of your Android-Activity Question  This two lines below provide you one SIM-unique ID, the IMSI  and the device-unique ID the IMEI  Exclamation  

Difficulty:  1 of 5 Smile  

Idea  Questions/Problems:  Simply post below... 

Description:  
An International Mobile Subscriber Identity, or IMSI , is a unique number  associated with all GSM and Universal Mobile Telecommunications System (UMTS) network mobile phone users. It is stored  in the Subscriber Identity Module (SIM ) inside the phone and is sent by the phone to the network. It is also used to acquire other details of the mobile in the Home Location Register (HLR ) or as locally copied in the Visitor Location Register. In order to avoid the subscriber being identified and tracked by eavesdroppers on the radio interface, the IMSI  is sent as rarely as possible and a randomly generated TMSI  is sent instead

The International Mobile Equipment Identity or IMEI  is a number unique  to every GSM  and UMTS  mobile phone.It is usually found printed on the phone underneath the battery and can also be found by dialing the sequence *#06#  into the phone.  


Code:  And this is how you read out the unique  IMSI-ID  / IMEI-ID  within Android
Java:
String  myIMSI = android.os .SystemProperties .get ( android.telephony .TelephonyProperties .PROPERTY_IMSI )
// within my emulator it returns:   310995000000000  

String  myIMEI = android.os .SystemProperties .get ( android.telephony .TelephonyProperties .PROPERTY_IMEI )
// within my emulator it returns:   000000000000000

Thats it Smile


The following code is deprecated. 

String myIMSI = android.os.SystemProperties.get(android.telephony.TelephonyProperties.PROPERTY_IMSI); 
// within my emulator it returns: 310995000000000 

String myIMEI = android.os.SystemProperties.get(android.telephony.TelephonyProperties.PROPERTY_IMEI); 
// within my emulator it returns: 000000000000000 

In order to get IMSI and IMEI, the following code works, assuming you write the code in a Activity class. 

TelephonyManager mTelephonyMgr = (TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE); 
String imsi = mTelephonyMgr.getSubscriberId(); 
String imei = mTelephonyMgr.getDeviceId(); 

Do not forget to set <uses-permission android:name="android.permission.READ_PHONE_STATE"/> in AndroidManifest.xml.
分享到:
评论

相关推荐

    WIndow mobile 6.0 以上 获取IMSI和IMEI

    在Windows Mobile 6.0及更高版本的操作系统中,获取手机设备的国际移动用户识别码(IMSI)和国际移动设备标识(IMEI)是开发者进行设备管理或网络通信功能开发时的重要步骤。这两个标识符在移动通信领域扮演着至关...

    Android 读取IMSI 和IMEI号支持双卡双待

    在双卡双待的Android设备上,由于存在两个SIM卡槽,所以可能会有两个IMSI和两个IMEI。为了获取这些信息,开发者需要使用Android的TelephonyManager类。以下是如何使用该类的示例代码: ```java TelephonyManager ...

    android平台获取手机IMSI,IMEI ,序列号,和 手机号的方法

    Android 平台获取手机 IMSI、IMEI、序列号和手机号的方法 Android 操作系统提供了多种方法来获取手机的 IMSI、IMEI、序列号和手机号,这些信息对于移动应用程序的开发和维护非常重要。本文将详细介绍 Android 平台...

    Android小工具(aimsi.apk)

    本工具是Android获取IMSI/IMEI,以及发短信的小工具。 支持双卡同时获取其IMSI/IMEI;发短信时,可以选择卡1或卡2。

    imsi_imei Windows Mobile平台获取

    在Windows Mobile平台上,获取IMSI(国际移动用户识别码)和IMEI(国际移动设备识别码)是移动设备开发中的重要任务,这通常涉及到通信模块的管理与设备识别。以下是对这些知识点的详细阐述: IMSI是每个移动网络...

    Android工具(aimsi.apk)v1.1

    本软件是Android获取IMSI/IMEI等信息,以及发短信的小工具。 它可同时获取双卡的IMSI/IMEI;发短信时,可以选择卡1或卡2。它还能模拟手机收到短信,显示提醒并且点击可查看。

    [android平台][获取手机IMSI、IMEI、序列号及手机号的用法]

    Android平台获取手机IMSI、IMEI、序列号及手机号的用法 在 Android 平台中,获取手机的 IMSI、IMEI、序列号及手机号是非常重要的,以下将详细介绍如何获取这些信息。 1. 获取运营商 SIM 卡 IMSI 号 使用 `android...

    Android 查看手机 IMEI IMSI

    IMEI是设备的唯一标识,而IMSI则与SIM卡相关联,代表了用户的身份。本DEMO将向我们展示如何在Android应用中获取这些信息。 IMEI是一个15位数字的序列号,每个具有移动通信功能的设备都有一个独特的IMEI,用于区分...

    IMSI获取,IMEI获取

    IMSI获取 安卓手机IMSI 和IMEI获取,安装后打开即可看到

    IMSI.rar_IMEI_IMSI_windows mobile

    Windows Mobile提供了如`AT+CGSN`命令来获取IMEI,而获取IMSI则通常需要通过AT命令集与SIM卡进行交互,比如`AT+CIMI`命令。开发过程中,可能需要使用.NET Compact Framework或者C++/C#等语言,并利用Windows Mobile ...

    c#获取mobile手机的IMEI和IMSI

    在移动通信领域,IMEI(International Mobile Equipment Identity)和IMSI(International Mobile Subscriber Identity)是两个重要的标识符。IMEI是手机设备的唯一识别码,而IMSI则是移动网络用户的身份标识。在C#...

    SIM卡的IMSI号简介

    ### SIM卡的IMSI号详解 #### 一、IMSI号概述 IMSI(International Mobile Subscriber Identity),即国际移动用户识别码,是用于区分不同移动用户的唯一标识符。这一识别码存储于SIM卡中,是确保移动通信网络能够...

    Windows Mobile 取得 IMEI、IMSI

    在Windows Mobile操作系统中,IMEI(国际移动设备识别码)和IMSI(国际移动用户识别码)是两个非常重要的概念,它们与移动通信设备的身份标识紧密相关。IMEI是每台GSM(全球系统移动通信)和UMTS(通用分组无线业务...

    IMEI_IMSI.rar_IMEI_IMSI_SIM卡imsi_visual c_wince_wince IMEI

    WinCE 获取PDA的SIM卡号和设备序列号

    VC++手机IMEI/IMSI 读取

    在移动通信领域,IMEI(国际移动设备识别码)和IMSI(国际移动用户标识)是两个关键的概念,用于唯一地标识每一台手机设备和移动网络中的用户身份。本文将详细探讨如何使用VC++编程语言来读取这些信息。 IMEI是每个...

    GSM11.11/11.14 SIM卡技术规范

    SIM卡是GSM系统中至关重要的组成部分,它存储了用户的个人识别号码(PIN)、国际移动用户识别码(IMSI)以及密钥等关键信息,确保了用户的隐私和通信安全。 《GSM11.11 SIM卡技术规范》是定义SIM卡硬件和软件接口的...

    获取手机IMEI号,sim卡的IMSI号C#源码

    在移动通信领域,IMEI(International Mobile Equipment Identity)和IMSI(International Mobile Subscriber Identity)是两个关键的概念。IMEI是国际移动设备身份码,用于唯一标识一部移动设备,而IMSI则是国际...

    wince windows mobile 获取IMSI IMEI码

    IMSI国际移动用户识别码(IMSI) international mobile subscriber identity 国际上为唯一识别一个移动用户所分配的号码。从技术上讲,IMSI可以彻底解决国际漫游问题。但是由于北美目前仍有大量的AMPS系统使用MIN...

    C# windows mobile 获得IMEI号和IMSI号

    在IT行业中,尤其是在移动开发领域,IMEI(国际移动设备识别码)和IMSI(国际移动用户识别码)是两个非常关键的概念。IMEI主要用于唯一标识一部手机,而IMSI则是用于识别移动网络中的特定用户。本文将深入探讨如何在...

Global site tag (gtag.js) - Google Analytics