android 获取手机号
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 获取手机号的更多相关文章
- delphi for android 获取手机号
delphi for android 获取手机号 uses System.SysUtils, System.Types, System.UITypes, System.Classes, Syste ...
- android获取手机号
private String getPhoneNum(){ //与手机建立连接 TelephonyManager tm = (TelephonyManager)getSystemService(Con ...
- android手机获取手机号
最近做到一个项目,需要获取手机号.项目中使用的手机卡为电信卡,那么就以此为例吧. 网上不符合需求的方法 Google了一下,网上的做法如下: //获取手机号码 TelephonyManager tm ...
- android手机如何获取手机号
两个方案:1 通过android.permission.READ_PHONE_STATE读取 2 通过短信过滤,读取手机号. 按照第1个方案,AndroidManifest.xml需要添加 < ...
- Android获取短信验证码
Android开发中关于短息验证码的设计层出不穷,越来越多的应用为了更好的提高软件的安全性,开始使用通过服务器向用户发送验证码的方式,来保护用户个人信息的安全性.无论是用户注册时的信息验证还是当用户发 ...
- android 获取IMEI号
android 获取 imei号码 核心代码: Imei = ((TelephonyManager) getSystemService(TELEPHONY_SERVICE)).getDeviceId( ...
- android 获取 imei号码 及相关信息
android 获取 imei号码 参考:http://www.cnblogs.com/luxiaofeng54/archive/2011/03/01/1968063.html 核心代码: Imei ...
- Android获取手机号码
今天来说一下Android系统中怎么获取手机号 一.SIM卡存储的数据可分为四类,它们分别是: 第一类是固定存放的数据.这类数据在移动电话机被出售之前由SIM卡中心写入,包括国际移动用户识别号(IMS ...
- Android获取内置sdcard跟外置sdcard路径
Android获取内置sdcard跟外置sdcard路径.(测试过两个手机,亲测可用) 1.先得到外置sdcard路径,这个接口是系统提供的标准接口. 2.得到上一级文件夹目录 3.得到该目录的所有文 ...
随机推荐
- linux添加修改用户名密码
语 法: useradd [-mMnr][-c <备注>][-d <登入目录>][-e <有效期限>][-f <缓冲天数>][-g <群组> ...
- debian防火墙firestarter
Firestarter是一个非常好用的防火墙图形化配置工具,作者和开发者是芬兰人. 首先肯定的说Firestarter防火墙是一款非常优秀的基于GUI图形用户界面下的,完全免费的自由软件,它为中小型L ...
- 浅谈C/C++中的static和extern关键字 转
原文:http://developer.51cto.com/art/201104/256820.htm static是C++中常用的修饰符,它被用来控制变量的存贮方式和可见性.extern, &quo ...
- make clean 和make distclean的区别
make clean 和make distclean的区别:make clean仅仅是清除之前编译的可执行文件及配置文件.而make distclean要清除所有生成的文件make distclean ...
- set_ip_pool
#! /usr/bin/env python# -*- coding: utf-8 -*- import redisimport urllib2class RedisConnect: #clas ...
- Eclipse遇到Initializing Java Tooling解决办法
可参考博客:http://liaojuncai.iteye.com/blog/1954113 打开Eclipse的时候莫名其妙的出现这个错误,进度条一直显示这个提示Initializing java ...
- Wince 对话框程序设计
如何编程实现wince下“打开文件夹对话框”呢?这里就要涉及到下面要分析的知识了,对话框是一种特殊的窗口,它在wince 作为应用程序和程序使用者之间的交流窗口,通过显示和获取信息使人们的交流更加方便 ...
- 在windows2003系统上安装两个版本的oracle
想试试oracle11g都有什么变化,于是在机器上又安装了oracle11.1.7版本的.安装很简单,只是安装后如何让两个数据库同时跑起来,需要稍微设置下.1.将11goracle的监听换一个端口,比 ...
- 详解HTML<head> 头标签元素的意义以及使用场景
HTML<head>头部分的标签.元素有很多,涉及到浏览器对网页的渲染,SEO 等等,而各个浏览器内核以及各个国内浏览器厂商都有些自己的标签元素,这就造成了很多差异性.移动互联网时代,he ...
- MongoDB - Introduction to MongoDB, Documents
MongoDB stores data records as BSON documents. BSON is a binary representation of JSON documents, th ...