android关于获取手机号

手机在生产时,每部手机均有一个唯一的标识(ID),国际上采用国际移动设备身份码(IMEI, International Mobile Equipment Identity)。IMEI是由15位数字组成的"电子串号",它与每台手机一一对应,而且该码是全世界唯一的。每一只手机在组装完成后都将被赋予一个全球唯一的一组号码,这个号码从生产到交付使用都将被制造生产的厂商所记录。

在手机应用开发中,使用IMEI来做身份认证是一个常用的技术手段,在Android SDK中,类android.telephony.TelephonyManager提供了手机设备信息的相关操作和管理。

1、在AndroidManifest.xml中增加访问设备状态的权限:
<uses-permission android:name="android.permission.READ_PHONE_STATE" />

2、通过上下文设备获取到TelephonyManager实例,调用getDeviceId方法获取IMEI:
import android.telephony.*;
……
TelephonyManager telephonyManager=(TelephonyManager) this.getSystemService(Context.TELEPHONY_SERVICE);
String imei=telephonyManager.getDeviceId();

值得说明的是,在模拟器中运行时,getDeviceId方法返回总是000000000000000。

另外,TelephonyManager类还提供了获取手机其他信息的方法,如:
getLine1Number():获取到手机号码; getDeviceSoftwareVersion:获取到Android操作系统的版本; getSimSerialNumber:获取到SIM卡唯一编号ID; getSubscriberId:获取到客户ID,即IMSI

更多相关文章

  1. 浅析LruCache原理
  2. Android(安卓)JNI 动态注册方法(JNI_OnLoad)
  3. Android网络编程之通过Post传递参数
  4. 在Xamarin.Forms中使用SkiaSharp绘图时从原生工程中加载图片
  5. android interview 2
  6. 完美解决Android中,ScrollView嵌套ListView的冲突。
  7. Android基于Pull方式解析xml的方法详解
  8. Android(安卓)再爆新漏洞,9.0 以下所有手机全部中招!
  9. android 开发如何获得第三方应用Widget的包名和类名

随机推荐

  1. Windows下git下载android source
  2. Android(安卓)动画中共用的属性!
  3. android设置textview限制字数以省略号显
  4. Android开发环境搭建
  5. Android(安卓)控件 ListView
  6. Android架构分析之Android开发环境搭建
  7. Android(安卓)小的知识片
  8. Android异步处理四:AsyncTask的实现原理
  9. android ListView嵌套checkbox并取代chec
  10. Android重要控件概览(上)