1、核心代码

Imei = ((TelephonyManager) getSystemService(TELEPHONY_SERVICE)).getDeviceId();

2、加权限

mainfest.xml文件中添加:

<uses-permission android:name="android.permission.READ_PHONE_STATE" />

3、示例

public class MainActivity extends Activity {private TextView tv;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);TelephonyManager telephonyManager = (TelephonyManager)this.getSystemService(Context.TELEPHONY_SERVICE);String imeiString = telephonyManager.getDeviceId();tv = (TextView) findViewById(R.id.textView1);tv.setTextSize(40);tv.setText(imeiString);}
}

3、使用代码

importandroid.app.Activity;
importandroid.os.Bundle;
importandroid.telephony.CellLocation;
importandroid.telephony.PhoneStateListener;
importandroid.telephony.TelephonyManager;
public class TelManager extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
TelephonyManager tm = (TelephonyManager) this.getSystemService(TELEPHONY_SERVICE);
/*
* 电话状态:
* 1.tm.CALL_STATE_IDLE=0 无<a href="http://www.eyeandroid.com/misc.php?mod=tag&id=155" target="_blank" class="relatedlink">活动</a>
* 2.tm.CALL_STATE_RINGING=1 响铃
* 3.tm.CALL_STATE_OFFHOOK=2 摘机
*/
tm.getCallState();//int /*
* 电话方位:
*
*/
tm.getCellLocation();//CellLocation /*
* 唯一的设备ID:
* GSM手机的 IMEI 和 CDMA手机的 MEID.
* Return null if device ID is not available.
*/
tm.getDeviceId();//String /*
* 设备的软件版本号:
* 例如:the IMEI/SV(software version) for GSM phones.
* Return null if the software version is not available.
*/
tm.getDeviceSoftwareVersion();//String /*
* 手机号:
* GSM手机的 MSISDN.
* Return null if it is unavailable.
*/
tm.getLine1Number();//String /*
* 附近的电话的信息:
* 类型:List<NeighboringCellInfo>
* 需要权限:android.Manifest.permission#ACCESS_COARSE_UPDATES
*/
tm.getNeighboringCellInfo();//List<NeighboringCellInfo> /*
* 获取ISO标准的国家码,即国际长途区号。
* 注意:仅当用户已在网络注册后有效。
* 在CDMA网络中结果也许不可靠。
*/
tm.getNetworkCountryIso();//String /*
* MCC+MNC(mobile country code + mobile network code)
* 注意:仅当用户已在网络注册时有效。
* 在CDMA网络中结果也许不可靠。
*/
tm.getNetworkOperator();//String /*
* 按照字母次序的current registered operator(当前已注册的用户)的名字
* 注意:仅当用户已在网络注册时有效。
* 在CDMA网络中结果也许不可靠。
*/
tm.getNetworkOperatorName();//String /*
* 当前使用的网络类型:
* 例如: NETWORK_TYPE_UNKNOWN 网络类型未知 0
NETWORK_TYPE_GPRS GPRS网络 1
NETWORK_TYPE_EDGE EDGE网络 2
NETWORK_TYPE_UMTS UMTS网络 3
NETWORK_TYPE_HSDPA HSDPA网络 8
NETWORK_TYPE_HSUPA HSUPA网络 9
NETWORK_TYPE_HSPA HSPA网络 10
NETWORK_TYPE_CDMA CDMA网络,IS95A 或 IS95B. 4
NETWORK_TYPE_EVDO_0 EVDO网络, revision 0. 5
NETWORK_TYPE_EVDO_A EVDO网络, revision A. 6
NETWORK_TYPE_1xRTT 1xRTT网络 7
*/
tm.getNetworkType();//int /*
* 手机类型:
* 例如: PHONE_TYPE_NONE 无信号
PHONE_TYPE_GSM GSM信号
PHONE_TYPE_CDMA CDMA信号
*/
tm.getPhoneType();//int /*
* Returns the ISO country code equivalent for the SIM provider's country code.
* 获取ISO国家码,相当于提供SIM卡的国家码。
*
*/
tm.getSimCountryIso();//String /*
* Returns the MCC+MNC (mobile country code + mobile network code) of the provider of the SIM. 5 or 6 decimal digits.
* 获取SIM卡提供的移动国家码和移动网络码.5或6位的十进制数字.
* SIM卡的状态必须是 SIM_STATE_READY(使用getSimState()判断).
*/
tm.getSimOperator();//String /*
* <a href="http://www.eyeandroid.com/misc.php?mod=tag&id=220" target="_blank" class="relatedlink">服务</a>商名称:
* 例如:中国移动、联通
* SIM卡的状态必须是 SIM_STATE_READY(使用getSimState()判断).
*/
tm.getSimOperatorName();//String /*
* SIM卡的序列号:
* 需要权限:READ_PHONE_STATE
*/
tm.getSimSerialNumber();//String /*
* SIM的状态信息:
* SIM_STATE_UNKNOWN 未知状态 0
SIM_STATE_ABSENT 没插卡 1
SIM_STATE_PIN_REQUIRED 锁定状态,需要用户的PIN码解锁 2
SIM_STATE_PUK_REQUIRED 锁定状态,需要用户的PUK码解锁 3
SIM_STATE_NETWORK_LOCKED 锁定状态,需要网络的PIN码解锁 4
SIM_STATE_READY 就绪状态 5
*/
tm.getSimState();//int /*
* 唯一的用户ID:
* 例如:IMSI(国际移动用户识别码) for a GSM phone.
* 需要权限:READ_PHONE_STATE
*/
tm.getSubscriberId();//String /*
* 取得和语音邮件相关的标签,即为识别符
* 需要权限:READ_PHONE_STATE
*/
tm.getVoiceMailAlphaTag();//String /*
* 获取语音邮件号码:
* 需要权限:READ_PHONE_STATE
*/
tm.getVoiceMailNumber();//String /*
* ICC卡是否存在
*/
tm.hasIccCard();//boolean /*
* 是否漫游:
* (在GSM用途下)
*/
tm.isNetworkRoaming();// }
} 
</pre><pre name="code" class="java">
import android.app.Activity;
import android.os.Bundle;
import android.telephony.CellLocation;
import android.telephony.PhoneStateListener;
import android.telephony.TelephonyManager;
public class TelManager extends Activity {     @Override
protected void onCreate(Bundle savedInstanceState) {     super.onCreate(savedInstanceState);     TelephonyManager tm = (TelephonyManager) this.getSystemService(TELEPHONY_SERVICE);     /*   * 电话状态:   * 1.tm.CALL_STATE_IDLE=0          无<a href="http://www.eyeandroid.com/misc.php?mod=tag&id=155" target="_blank" class="relatedlink">活动</a>   * 2.tm.CALL_STATE_RINGING=1  响铃   * 3.tm.CALL_STATE_OFFHOOK=2  摘机   */    tm.getCallState();//int     /*   * 电话方位:   *    */    tm.getCellLocation();//CellLocation     /*   * 唯一的设备ID:   * GSM手机的 IMEI 和 CDMA手机的 MEID.    * Return null if device ID is not available.   */    tm.getDeviceId();//String     /*   * 设备的软件版本号:   * 例如:the IMEI/SV(software version) for GSM phones.   * Return null if the software version is not available.    */    tm.getDeviceSoftwareVersion();//String     /*   * 手机号:   * GSM手机的 MSISDN.   * Return null if it is unavailable.    */    tm.getLine1Number();//String     /*   * 附近的电话的信息:   * 类型:List<NeighboringCellInfo>    * 需要权限:android.Manifest.permission#ACCESS_COARSE_UPDATES   */    tm.getNeighboringCellInfo();//List<NeighboringCellInfo>     /*   * 获取ISO标准的国家码,即国际长途区号。   * 注意:仅当用户已在网络注册后有效。   *       在CDMA网络中结果也许不可靠。   */    tm.getNetworkCountryIso();//String     /*   * MCC+MNC(mobile country code + mobile network code)   * 注意:仅当用户已在网络注册时有效。   *    在CDMA网络中结果也许不可靠。   */    tm.getNetworkOperator();//String     /*   * 按照字母次序的current registered operator(当前已注册的用户)的名字   * 注意:仅当用户已在网络注册时有效。   *    在CDMA网络中结果也许不可靠。   */    tm.getNetworkOperatorName();//String     /*   * 当前使用的网络类型:   * 例如: NETWORK_TYPE_UNKNOWN  网络类型未知  0   NETWORK_TYPE_GPRS     GPRS网络  1   NETWORK_TYPE_EDGE     EDGE网络  2   NETWORK_TYPE_UMTS     UMTS网络  3   NETWORK_TYPE_HSDPA    HSDPA网络  8    NETWORK_TYPE_HSUPA    HSUPA网络  9   NETWORK_TYPE_HSPA     HSPA网络  10   NETWORK_TYPE_CDMA     CDMA网络,IS95A 或 IS95B.  4   NETWORK_TYPE_EVDO_0   EVDO网络, revision 0.  5   NETWORK_TYPE_EVDO_A   EVDO网络, revision A.  6   NETWORK_TYPE_1xRTT    1xRTT网络  7   */    tm.getNetworkType();//int     /*   * 手机类型:   * 例如: PHONE_TYPE_NONE  无信号   PHONE_TYPE_GSM   GSM信号   PHONE_TYPE_CDMA  CDMA信号   */    tm.getPhoneType();//int     /*   * Returns the ISO country code equivalent for the SIM provider's country code.   * 获取ISO国家码,相当于提供SIM卡的国家码。   *    */    tm.getSimCountryIso();//String     /*   * Returns the MCC+MNC (mobile country code + mobile network code) of the provider of the SIM. 5 or 6 decimal digits.   * 获取SIM卡提供的移动国家码和移动网络码.5或6位的十进制数字.   * SIM卡的状态必须是 SIM_STATE_READY(使用getSimState()判断).   */    tm.getSimOperator();//String     /*   * <a href="http://www.eyeandroid.com/misc.php?mod=tag&id=220" target="_blank" class="relatedlink">服务</a>商名称:   * 例如:中国移动、联通   * SIM卡的状态必须是 SIM_STATE_READY(使用getSimState()判断).   */    tm.getSimOperatorName();//String     /*   * SIM卡的序列号:   * 需要权限:READ_PHONE_STATE   */    tm.getSimSerialNumber();//String     /*   * SIM的状态信息:   *  SIM_STATE_UNKNOWN          未知状态 0   SIM_STATE_ABSENT           没插卡 1   SIM_STATE_PIN_REQUIRED     锁定状态,需要用户的PIN码解锁 2   SIM_STATE_PUK_REQUIRED     锁定状态,需要用户的PUK码解锁 3   SIM_STATE_NETWORK_LOCKED   锁定状态,需要网络的PIN码解锁 4   SIM_STATE_READY            就绪状态 5   */    tm.getSimState();//int     /*   * 唯一的用户ID:   * 例如:IMSI(国际移动用户识别码) for a GSM phone.   * 需要权限:READ_PHONE_STATE   */    tm.getSubscriberId();//String     /*   * 取得和语音邮件相关的标签,即为识别符   * 需要权限:READ_PHONE_STATE   */    tm.getVoiceMailAlphaTag();//String     /*   * 获取语音邮件号码:   * 需要权限:READ_PHONE_STATE   */    tm.getVoiceMailNumber();//String     /*   * ICC卡是否存在   */    tm.hasIccCard();//boolean     /*   * 是否漫游:   * (在GSM用途下)   */    tm.isNetworkRoaming();//     }     } 

10、Android 获取IMEI号码相关推荐

  1. android 获取 imei号码

    转自:http://blog.csdn.net/gumanren/archive/2011/02/26/6209237.aspx android 获取 imei号码 核心代码: Imei = ((Te ...

  2. [转]android 获取 imei号码

    核心代码: Imei = ((TelephonyManager) getSystemService(TELEPHONY_SERVICE)) .getDeviceId(); 1.加入权限 在manife ...

  3. Android 获取imei号码,获取手机型号和系统版本号

    在AndroidManifest.xml文件中要添加 <uses-permission android:name="android.permission.READ_PHONE_STAT ...

  4. android 获取 imei号码 以及其他手机信息

    核心代码: Imei = ((TelephonyManager) getSystemService(TELEPHONY_SERVICE)) .getDeviceId(); 1.加入权限 在manife ...

  5. android 获取 imei号码,kotlin开发安卓

    1.加入权限 在manifest.xml文件中要添加 2.代码 /** * * *创建日期 2010-4-29 下午05:02:47 * */ package net.sunniwell.app; i ...

  6. android 获取 imei号码,android设计模式原则

    /** * * *创建日期 2010-4-29 下午05:02:47 * */ package net.sunniwell.app; import android.app.Activity; impo ...

  7. android 获取 imei号码,大厂内部资料

    tm.getCellLocation();//CellLocation /* * 唯一的设备ID: * GSM手机的 IMEI 和 CDMA手机的 MEID. * Return null if dev ...

  8. android获取imei兼容_Android获取IMEI号码

    1 android 获取 imei号码2 3 核心代码:4 5 Imei =((TelephonyManager) getSystemService(TELEPHONY_SERVICE))6 .get ...

  9. android 获取imei(国际移动设备身份码)号码详解及其应用场景

    IMEI简介: IMEI(International Mobile Equipment Identity)是国际移动设备身份码的缩写,国际移动装备辨识码,是由15位数字组成的"电子串号&qu ...

最新文章

  1. python configparser 参数 用法
  2. 浅析Hadoop的三个作业调度器
  3. notepad++每行首尾添加内容
  4. SAP Spartacus里unit list tree节点expanded属性的赋值逻辑
  5. 区块链教程(五):合约编写实战实例
  6. Reddit热议被引最多的机器学习论文:上世纪LSTM称霸,何恺明今年被引1.8w居首...
  7. java多线程-生产者消费者模式
  8. 电阻电容封装选型经验详解
  9. python实现猜数字游戏
  10. 视频教程-网络工程师实战系列视频课程【VLAN专题】-网络技术
  11. pdf文件过大如何缩小?
  12. 荣耀手机wifi信号如何连接服务器,教你手机无限流量免费上网 荣耀WiFi实测
  13. 在奋斗的日子里,傻笑出来
  14. OSG KML文件解析
  15. 微信公众号文章采集的一些基础概念
  16. 二元关系的关系性质判断
  17. 谷歌android联盟,2019谷歌开源技术区域联盟(川陕)移动应用开发 研讨活动
  18. 计算机仿真在机械行业中的应用,计算机仿真技术在机械行业中的应用
  19. 关于发短信的软件(zz)
  20. Cris 小哥哥的大数据项目之 Hive 统计 YouTube 热门视频

热门文章

  1. 计算从出生到现在活了多少天
  2. 2017美国数学建模ICM E题(环境) 翻译 需要可持续城市!(Sustainable Cities Needed!)
  3. Modbus CRC16校验方法及实现代码
  4. 数据恢复软件设计与实现(二)
  5. volumio怎么连接屏幕_如何把拼接屏和电脑连接起来
  6. c语言,%d %.2d %2d %02d的区别
  7. 点击网页分享按钮,触发微信分享功能
  8. 关于如何使用xposed来hook某支付软件
  9. 【软考软件评测师】2010年下案例分析历年真题
  10. 电竞专业与计算机专业,2021电竞专业的大学排名 电竞专业主要上什么课程