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

2、IMSI 国际移动用户识别码(IMSI:International Mobile SubscriberIdentification Number)
是区别移动用户的标志,储存在SIM卡中,可用于区别移动用户的有效信息。其总长度不超过15位,同样使用0~9的数字。
IMSI共有15位,其结构如下:
  MCC+MNC+MSIN
  MCC:Mobile Country Code,移动国家码,MCC的资源由国际电联(ITU)统一分配和管理,唯一识别移动用户所属的国家,共3位,中国为460;
  MNC:Mobile Network Code,移动网络码,共2位,中国移动系统使用00、02、07,中国联通GSM系统使用01,中国电信CDMA系统使用03,一个典型的IMSI号码为460030912121001;
  MSIN:Mobile Subscriber Identification Number共有10位,其结构如下:
  EF+M0M1M2M3+ABCD
  其中的M0M1M2M3和MDN号码中的H0H1H2H3可存在对应关系,ABCD四位为自由分配。
  可以看出IMSI在NMSI号码前加了MCC,可以区别出每个用户的来自的国家,因此可以实现国际漫游。在同一个国家内,如果有多个移动网络运营商,可以通过MNC来进行区别.

需要权限:
<uses-permission android:name="android.permission.READ_PHONE_STATE"/>public class DeviceInfo
{public static void getDeviceInfo(Context context){TelephonyManager tm = (TelephonyManager)context.getSystemService(Context.TELEPHONY_SERVICE);String number = tm.getLine1Number();              //本机号码(多半不可取)String imei = tm.getDeviceId();                    //(设备序列号全球唯一, IMEI)String businessName = tm.getNetworkOperatorName();//运营商名字String sim = tm.getSimSerialNumber();                //SIM卡序列号String imsi = tm.getSubscriberId();                   //IMSI String iso = tm.getNetworkCountryIso();              //设备所属国家 cn或者us 之类String businessId = tm.getNetworkOperator();         //运营商IDSystem.out.println(" number : "+number +" imei "+imei+" bussnessName "+businessName+" sim "+sim+" imsi "+imsi+" iso "+iso+" businessId "+businessId);}
}

Android基础---获取手机硬件数据(转)相关推荐

  1. Android之获取手机内部及sdcard存储空间

    Android之获取手机内部及sdcard存储空间 文章链接 知识点: 内部存储空间获取总大小和可用大小: sdcard存储空间获取总大小和可用大小: 新名词记录{StatFs:描述文件系统信息的类} ...

  2. Android杂谈---获取手机屏幕大小

    Android杂谈---获取手机屏幕大小 SurfaceView简单例子 玩转Android---UI篇---ZoomControls放大缩小图片 更多相关推荐 这里总结下android中关于手机屏幕 ...

  3. Android中获取手机设备信息、RAM、ROM存储信息,如宽、高、厂商名、手机品牌

    借鉴:https://www.jianshu.com/p/ca869aa2fd72 今天有两个工具类总结,代码里都有注释,直接看代码. 一.首先第一个,主要获取手机设备信息DeviceInfoUtil ...

  4. Android适配 获取手机屏幕的分辨率

    如何将一个应用程序适配在不同的手机上,虽然这不算是一个技术问题,但是对于刚刚做屏幕的开发人员来说,还真不是一件多么简单的事情. 首先:你需要在AndroidManifest.xml文件的<man ...

  5. Android中获取手机中的联系人信息

    #Android中获取手机中的联系人信息 1.0.查看系统通讯录的表,表路径:data->data->com.android.providers.contacts->database ...

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

    android平台获取手机IMSI,IMEI ,序列号,和 手机号的方法 1)获取运营商sim卡imsi号: String android_imsi = telephonyManager.getSub ...

  7. android获取存储设备根目录,Android ndk获取手机内部存储卡的根目录方法

    如下所示: jclass envcls = env->FindClass("android/os/Environment"); //获得类引用 if (envcls == n ...

  8. android 自动获取手机验证码

    真的很奇怪大家的复制粘贴功能,一篇自动获取手机验证码的文章各大平台争相转发,我以为很牛逼,到后来发现不能用,可能我技术不够吧,复制粘贴还不到家. android 自动获取手机验证码好处 :① 用户不用 ...

  9. Android studio获取服务器端json数据——天气预报(仅读取了json文件尚未分析)

    Android studio获取服务器端json数据--天气预报 MainActivity.java import androidx.appcompat.app.AppCompatActivity;i ...

最新文章

  1. web后门隐藏与检测思路
  2. Python爬虫入门教程 32-100 B站博人传评论数据抓取 scrapy
  3. nagios新添加服务有时显示,有时不显示问题解决
  4. bootstrapTable基础操作
  5. python 元组 列表 字典区别_python编程:常用的数据结构之字典的方法总结,和列表和元组区别...
  6. 我现写掼蛋游戏就是要努力奋斗
  7. Hadoop的Python框架指南
  8. LibLinear(SVM包)使用说明之(二)MATLAB接口
  9. Spark学习之路 (六)Spark Transformation和Action
  10. python之Beautiflusoup操作
  11. 《JAVA与模式》— 原型模式
  12. 备考2022年软考论文写作注意要点
  13. c语言程序实验报告范文,C语言实验报告范文
  14. Android访问assets本地Json文件
  15. 第五人格显示服务器连接失败,第五人格网络连接失败怎么回事
  16. IDEA光标变成白色粗条的问题
  17. VB.net应用技巧5: VB.net 除法运算
  18. python公开课乐博学院_乐搏学院 - 主页
  19. xmodem,ymodem,zmodem,kermit的主要区别
  20. 使用 jodd:form tag

热门文章

  1. springboot中关闭eureka server中已注册服务列表自我保护配置
  2. 谷歌 AI 中国中心成立,人工智能势不可挡?
  3. 压缩流--DeflateStream和GZipStream
  4. gamma函数stiriling公式_SVM参数: C和gamma
  5. oss导出数据为空时怎么处理_数据库导出时有空表导不出的解决方法
  6. 2.2 理解 Mini-batch 梯度下降-深度学习第二课《改善深层神经网络》-Stanford吴恩达教授
  7. 玩转Mixly – 5、Arduino AVR编程 之 逻辑
  8. 玩转Mixly – 2、Arduino AVR编程 之 输入输出
  9. c标准基本库函数:libc、glibc的关系
  10. 根据UE发送前导码时是否存在碰撞