android 获取手机号码,由于运营商的管理方式的不同,所以获取手机号码的方式也可能完全相同.现在很多运营商并不会把手机号码存入sim卡中.

最简单的,比如说中国移动并不将手机号保存在sim卡中,只会存储imsi号,这样当你丢失sim卡后,可以买新卡还能使用原来的号码.这就有以下获取手机号码的方式.

方式一:此种方法比较简单,是android自带的方法,但是缺点是不是所有的号码都能获取到(国内大部分的号码获取不了,我的移动动感地带号码无法获取到).方法为:

TelephonyManager phoneMgr=(TelephonyManager)this.getSystemService(Context.TELEPHONY_SERVICE);
string phoneNum = phoneMgr.getLine1Number(); //获取到手机号

此方法需要权限:

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

此方法测试结果(引用:http://blog.csdn.net/shichaosong/article/details/7777398),由于本人没那么多卡,本人未测,仅供参考.

运营商 卡类型 结果

中国移动 动感地带:3.0 获取不到

中国移动 神州行卡 可以获取

中国移动  全球通 可以获取

中国电信 全球漫游天翼国际卡 获取不到

中国联通 世界风 64K OTA 获取不到

中国联通 沃 128K USIM 可以获取

方式二: 通过发送一条上行短信监听发送人获取手机号码(比如发送给10086),存到app缓存中,此方法优点是大部分的手机都能获取到号码,缺点也显而易见,首先是要获取用户的发短信权限,第二是可能会产生通讯费,第三是,为了不干扰用户,提高用户体验度,还得拦截,擦除发送和接收短信.

参考资料:

http://blog.csdn.net/sodino/article/details/5871537
http://macleo.iteye.com/blog/1608311
http://2402766.blog.51cto.com/2392766/1080837
http://www.eoeandroid.com/thread-313410-1-1.html

欢迎补充,欢迎指点~

android 获取手机号的更多相关文章

  1. delphi for android 获取手机号

    delphi for android 获取手机号 uses   System.SysUtils, System.Types, System.UITypes, System.Classes, Syste ...

  2. android获取手机号

    private String getPhoneNum(){ //与手机建立连接 TelephonyManager tm = (TelephonyManager)getSystemService(Con ...

  3. android手机获取手机号

    最近做到一个项目,需要获取手机号.项目中使用的手机卡为电信卡,那么就以此为例吧. 网上不符合需求的方法 Google了一下,网上的做法如下: //获取手机号码 TelephonyManager tm  ...

  4. android手机如何获取手机号

    两个方案:1 通过android.permission.READ_PHONE_STATE读取  2 通过短信过滤,读取手机号. 按照第1个方案,AndroidManifest.xml需要添加 < ...

  5. Android获取短信验证码

    Android开发中关于短息验证码的设计层出不穷,越来越多的应用为了更好的提高软件的安全性,开始使用通过服务器向用户发送验证码的方式,来保护用户个人信息的安全性.无论是用户注册时的信息验证还是当用户发 ...

  6. android 获取IMEI号

    android 获取 imei号码 核心代码: Imei = ((TelephonyManager) getSystemService(TELEPHONY_SERVICE)).getDeviceId( ...

  7. android 获取 imei号码 及相关信息

    android 获取 imei号码 参考:http://www.cnblogs.com/luxiaofeng54/archive/2011/03/01/1968063.html 核心代码: Imei ...

  8. Android获取手机号码

    今天来说一下Android系统中怎么获取手机号 一.SIM卡存储的数据可分为四类,它们分别是: 第一类是固定存放的数据.这类数据在移动电话机被出售之前由SIM卡中心写入,包括国际移动用户识别号(IMS ...

  9. Android获取内置sdcard跟外置sdcard路径

    Android获取内置sdcard跟外置sdcard路径.(测试过两个手机,亲测可用) 1.先得到外置sdcard路径,这个接口是系统提供的标准接口. 2.得到上一级文件夹目录 3.得到该目录的所有文 ...

随机推荐

  1. 百度API_Demo

    package com.test.www; import java.io.BufferedReader; import java.io.IOException; import java.io.Inpu ...

  2. 将 Discuz X3 手机版默认的“标准版”改为“触屏版”

    修改前请备份原文件   1.找到“\source\class\discuz\discuz_application.php”,将其中的   'mobiletpl' => array('1' =&g ...

  3. Uploadify帮助文档

    auto 当文件被添加到队列时,自动上传. (字符串) buttonImg 浏览按钮的背景图片路径. (字符串) buttonText 默认在按钮上显示的文本. (字符串) cancelImg 取消按 ...

  4. aptana中删除空行

    问题:有一个css文件,写一行样式后,会换行,空一行,再写另一个样式.现在需要把空的一行给去掉. 尝试直接复制空行,但是aptana会把所有的换行都去了,变成了一个文件只有一行.尝试用正则,\r\t\ ...

  5. BootStrap2学习日记13----关于按钮

    普通按钮 代码: <div style="margin-bottom:15px"> <a href="#" class="" ...

  6. The Romantic Hero

    Problem Description There is an old country and the king fell in love with a devil. The devil always ...

  7. Java设计模式13:常用设计模式之桥接模式(结构型模式)

    1. Java之桥接模式(Bridge Pattern) (1)概述: 首先我们说一个生活中的例子:       就拿汽车在路上行驶的来说.即有小汽车又有公共汽车,它们都不但能在市区中的公路上行驶,也 ...

  8. [转]W3C 验证 there is no attribute target for this element

    http://validator.w3.org/ 本文转自:http://hi.baidu.com/linkbestlove/item/d7fff865aefa5f0ba1cf0f04 我们要在新窗口 ...

  9. VIJOS P1540 月亮之眼

    [题目大意] 有多个珠子,给出部分珠子之间的相对上下位置和间距,问你这些珠子在满足给出的条件下,是否能把珠子排列在一条竖直直线上,如果能,求出每个珠子距离最高的珠子的距离,珠子的位置可重叠. [分析] ...

  10. Centos搭建nginx环境,编译,添加服务,开机启动。

    首先安装所需的安装库,yum -y install gcc gcc-c++ autoconf libtool* openssl openssl-devel 编译的时候,若有提示错误,提示缺少某个库,y ...