首页 > 分享 > Android获取手机号的探讨与实现

Android获取手机号的探讨与实现

最新推荐文章于 2024-04-27 14:50:01 发布

还是很孤独很沉默 于 2012-07-23 23:28:13 发布

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

最近做一个项目 需要获取到手机的相关信息

一个朋友的看法:

从技术层面而言,手机的SIM卡上并不会存储手机号码信息,只会存储IMSI(International Mobile Subscriber Identification Number)。手机号码(MSISDN)都是登记在HLR(Home Location Register)中的,在HLR中会把IMSI和MSISDN关联在一起。

 中国移动的SIM卡里只有IMSI号码而没有存储手机号码,在中国移动的HLR中会有一张映射表,专门用于把用户手机SIM卡的IMSI号映射成为用户的手机号码,这就是移动丢卡不丢号的业务也就是缘于此,也是一卡多号的原理。而电信CDMA(原来联通CDMA)的机卡合一的手机卡里会同时存在IMSI和手机号码。 

•客户端获取:在客户端对移动用户而言只能够获取诸如IMSI、IMEI号等,并不能直接获得手机号。而对电信CDMA机卡合一用户可以获取手机号码。
•服务器端获取:在早期的移动白名单中是能够获得明文的手机号的,最近移动策略变了,手机号变成了天书般的唯一串号。因此目前从服务器端直接获取手机号也不行了。
 目前能够想到的能够相对可靠地自动获取用户手机号的方法只有通过短信方式。

•通过短信方式:让用户上行一条短信,通过短信网关获取用户手机号,从而将用户id与手机号绑定

另一个朋友的看法:


android 获取手机号码的方法 这里就不说了,太简单了。
手机号码不是所有的都能获取。只是有一部分可以拿到。这个是由于移动运营商没有把手机号码的数据写入到sim卡中.SIM卡只有唯一的编号,供网络与设备识别那就是IMSI号码,手机的信号也可以说是通过这个号码在网络中传递的,并不是手机号码。试想,你的SIM丢失后,补办一张新的会换号码吗?是不会的.就是因为在你的手机号码对应的IMSI号 在移动运营商中被修改成新SIM卡的IMSI号码。
那么手机号为什么有的就能显示呢?
这个就像是一个变量,当移动运营商为它赋值了,它自然就会有值。不赋值自然为空。
对于移动的用户,手机号码(MDN)保存在运营商的服务器中,而不是保存在SIM卡里。SIM卡只保留了IMSI和一些验证信息。手机每次入网注册的时候,都会以短信的形式将IMSI及验证信息上传到运营商的服务器,服务器在完成注册动作之后,会以短信的形式将注册的结果下发到手机里。下发的内容会因条件不同而不同。
如果服务器在下发的短信中,不包含手机的号码,手机是无法取得电话号码。如果短信中

相关知识

Android Studio实现简单的购物商城界面
基于Android的鲜花预定软件的设计与实现
基于node.js+vue基于Android的平台书架的设计与实现后(开题+程序+论文)计算机毕业设计
基于Android的设施化花卉病虫害远程监测预警系统
花识别Android应用程序的实现
Android简单实现汉字笔顺动画——Java版
基于Android的花卉交流平台的设计与实现
实现类似android:clipChildren=“false”的效果,在使用android:clipChildren多次尝试无效时使用
Android进阶之路
基于Android的鲜花购物商城设计与实

网址: Android获取手机号的探讨与实现 https://m.huajiangbk.com/newsview1212992.html

所属分类:花卉
上一篇: Flower花最新安卓下载
下一篇: 手机 花app下载