android/ophone中本机号码的获取

本文详细解析了SIM卡及IMEI的相关概念,包括SIM卡中存储的不同类型数据及其作用,如IMSI与IMEI的区别,以及如何通过编程方式获取这些信息。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

本贴转自:优快云中的 zeng666peng    http://blog.youkuaiyun.com/zeng622peng/archive/2010/10/21/5955773.aspx

 

 

首先我们来明确几个概念:

 

SIM 卡存储的数据可分为四类:

第一类是固定存放的数据。这类数据在移动电话机被出售之前由 SIM 卡中心写入,包括国际移动用户识别号( IMSI )、鉴权密钥( KI )、鉴权和加密算法等等。

第二类是暂时存放的有关网络的数据。如位置区域识别码( LAI )、移动用户暂时识别码( TMSI )、禁止接入的公共电话网代码等。

第三类是相关的业务代码,如个人识别码( PIN )、解锁码( PUK )、计费费率等。

第四类是电话号码簿,是手机用户随时输入的电话号码。用户全部资料几乎都存储在 SIM 卡内,因此 SIM 卡又称为用户资料识别卡。

 

IMSI 是一个唯一的数字, 标识了GSMUMTS 网络里的唯一一个用户. 它存储 在手机的SIM 卡里,它会通过手机发送到网络上. IMSI SIM 唯一对应

IMEI 也是一串唯一的数字, 标识了 GSM UMTS 网络里的唯一一个手机. 它通常被打印在手机里电池下面的那一面,拨 *#06# 也能看到它. IMEI 设备唯一对应 .

1IMEI 不存在于 SIM 卡中,它是手机本身的串号。
2
。通常我们所说的 手机号 也不存在于 SIM 卡中,虽然 SIM 卡中有一个专门存储 SIM 卡本身号码的地方,但是此号码是通过手工设定的,而且是可以更改的。   SIM 卡的识别通常使用 IMSI 号,这个对于 SIM 卡是唯一的。
3
。使用 SimGetRecordInfo 之类的函数获得 SIM 卡的 IMSI 号码能否成功依赖于设备制造商是否实现了此函数,据我所知在 DOPOD 的机器上是可以获得,但是在联想的机器上却不行,其他机器没有。
4
。获得 IMEI 以及 IMSI 可以通过 RIL 或者 TAPI 中的 LINE 操作的函数获得。

 

 

下面给出获取手机本机号码的代码:

        TelephonyManager tm = (TelephonyManager) this.getSystemService(Context.TELEPHONY_SERVICE);

       

        String deviceid = tm.getDeviceId();

        String tel = tm.getLine1Number();

        String  imei = tm.getSimSerialNumber();      

        String imsi = tm.getSubscriberId();

 

添加权限:

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

 

注意,手机号码不是所有的都能获取。只是有一部分可以拿到。这个是由于移动运营商没有把手机号码的数据写入到 sim 卡中。这个就像是一个变量,当移动运营商为它赋值了,它自然就会有值。不赋值自然为空。这就是为什么很多人得不到本机号码的原因。

 

名词解释:

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

IMSI :(InternationalMobileSubscriberIdentificationNumber )国际移动用户识别码,是区别移动用户的标志,储存在SIM 卡中,可用于区别移动用户的有效信息。其总长度不超过15 位,同样使用09 的数字。其中MCC 是移动用户所属国家代号,占3 位数字,中国的MCC 规定为460MNC 是移动网号码,最多由两位数字组成,用于识别移动用户所归属的移动通信网;MSIN 是移动用户识别码,用以识别某一移动通信网中的移动用户。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值