Android开发平台中,可通过TelephonyManager 获取本机号码。

TelephonyManager

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

txtPhoneNumber.setText(phoneMgr.getLine1Number());

//txtPhoneNumber是一个EditText

用于显示手机号

注:

根据Android的安全机制,在使用TelephonyManager时,必须在AndroidManifest.xml中添加

否则无法获得系统的许可。

手机型号 Build.MODEL

String MODEL The end-user-visible name for the end product.

sdk版本 Build.VERSION.SDK

String SDK This constant is deprecated. Use SDK_INT to easily

get this as an integer.

及frimware版本号(系统版本号) Build.VERSION.RELEASE

String RELEASE The user-visible version string.

private void loadPhoneStatus(){

TelephonyManager

phoneMgr=(TelephonyManager)this.getSystemService(Context.TELEPHONY_SERVICE); txtPhoneModel.setText(Build.MODEL); //手机型号

txtPhoneNumber.setText(phoneMgr.getLine1Number());//本机电话号码

txtSdkVersion.setText(Build.VERSION.SDK);//SDK版本号

txtOsVersion.setText(Build.VERSION.RELEASE);//Firmware/OS

版本号}

事实上,Build能向我们提供包括 硬件厂商,硬件编号,序列号等很多信息 调用方法也都同上,很简单。

String BOARD The name of the underlying board, like

"goldfish".

String BOOTLOADER The system bootloader version number.

String BRAND The brand (e.g., carrier) the software is customized

for, if any.

String CPU_ABI The name of the instruction set (CPU type + ABI

convention) of native code.

String CPU_ABI2 The name of the second instruction set (CPU type +

ABI convention) of native code.

String DEVICE The name of the industrial design.

String DISPLAY A build ID string meant for displaying to the

user

String FINGERPRINT A string that uniquely identifies this

build.

String HARDWARE The name of the hardware (from the kernel command

line or /proc).

String HOST String ID Either a changelist number, or a label like

"M4-rc20".

String MANUFACTURER The manufacturer of the product/hardware.

String MODEL The end-user-visible name for the end product.

String PRODUCT The name of the overall product.

String RADIO The radio firmware version number.

String SERIAL A hardware serial number, if available.

String TAGS Comma-separated tags describing the build, like

"unsigned,debug".

long TIME String TYPE The type of build, like "user" or "eng".

String UNKNOWN Value used for when a build property is

unknown.

String USER

=================================================

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

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

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

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

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

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

IMSI是一个唯一的数字, 标识了GSM和UMTS 网络里的唯一一个用户. 它存储

在手机的SIM卡里,它会通过手机发送到网络上. IMSI 与 SIM唯一对应

IMEI也是一串唯一的数字, 标识了 GSM 和 UMTS网络里的唯一一个手机.它通常被打印在手机里电池下面的那一面,拨

*#06# 也能看到它. IMEI 与 设备唯一对应.

1。IMEI不存在于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();

添加权限:

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

android添加sdk版本号,Android编程获取手机型号、sdk版本及firmware版本号相关推荐

  1. Android获取手机型号,系统版本,App版本号等信息

    MainActivity如下: package cn.testgethandsetinfo; import android.os.Bundle; import android.text.TextUti ...

  2. js 获取手机型号和版本

    // 获取手机型号及版本 function getPhoneModel() {var result = [];// 最新版google中 会报错// Array.prototype.contains ...

  3. Android编程获取手机型号,本机电话号码,sdk版本及firmware版本号(即系统版本号)...

    Android开发平台中,可通过TelephonyManager 获取本机号码. TelephonyManager phoneMgr=(TelephonyManager)this.getSystemS ...

  4. Android获取手机应用的版本名和版本号

    正常来说我们在自己的app应用中的欢迎页和设置中心会显示当前app的版本号,代码如下: //获取自己应用内部的版本号 public static int getVersionCode(Context ...

  5. android获取手机和系统版本等信息的代码,Android获取手机的版本号等信息的代码...

    本文实例分享了Android获取手机系统版本等信息的方法,供大家参考,具体内容如下: 第一种代码: String phoneInfo = "Product: " + android ...

  6. JavaScript调用原生API获取手机型号

    跨平台技术简介 针对原生开发面临问题,人们一直都在努力寻找好的解决方案,而时至今日,已经有很多跨平台框架,根据其原理,主要分为三类: H5+原生(Cordova.Ionic.微信小程序) JavaSc ...

  7. Android 获取手机系统版本号、获取手机型号、获取手机厂商、获取手机IMEI、获取手机CPU_ABI、获取手机唯一识别码

    1.先申请权限,关于如何申请权限请查看RxPermissions的使用(简单实用)_ErwinNakajima的博客-CSDN博客 2.手機唯一識別碼管理類. package com.phone.co ...

  8. Android获取手机型号、系统版本号、手机IMEI、手机厂商等

    添加工具类 SystemUtil : public class SystemUtil {/*** 获取当前手机系统语言.* 例如:当前设置的是"中文-中国",则返回"zh ...

  9. android获取手机型号和手机厂商

    分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow 也欢迎大家转载本篇文章.分享知识,造福人民,实现我们中华民族伟大复兴! 1. 获 ...

最新文章

  1. MySQL Cluster(MySQL 集群) 初试
  2. 如何找出错误ora-07445发生时系统执行的语句
  3. xml simpleXML_load_file(), simpleXML_load_string()
  4. 解析“60k”大佬的19道C#面试题(上)
  5. easyui 动态设置单元格控件_动态显示最大最小值的折线图
  6. 为什么下了android 4.1 的SDK后在本地用浏览器看api说明文档时,浏览器打开api的html文件很慢?试了好几款浏览器都一样。为什么?...
  7. halcon 将数据保存到excel_pandas筛选、合并、批量保存excel数据
  8. zoj 3488 conic section
  9. python拆分合并文件_python实现文件的分割与合并
  10. H5页面快速搭建之高级字体应用实践
  11. 「读懂源码系列3」lodash 是如何实现深拷贝的(上)
  12. 北大中文核心期刊目录(2004年版)
  13. omnigraffle所有模板免费下载网站
  14. 各种通信接口的简单对比
  15. 安全中心服务器已关闭啥意思,启用windows安全中心服务是什么意思,windows安全中心服务关闭方法...
  16. Frodo and pillows CodeForces - 760B
  17. 判断一个数字是不是素数
  18. 配置全局less变量;解决iphoneX、 iphone8 plus 键盘退下去仍占空间,导致无法点击;vue-photo-preview 配置正常,但无法触发图片的预览
  19. chrome绿色版浏览器
  20. mysql获取中文拼音_mysql获取汉字拼音

热门文章

  1. 德勤:2023技术趋势报告(附下载链接)
  2. C语言题目:左旋字符串.
  3. 分享信号处理相关的几部名著
  4. 十大最受欢迎骨传导耳机品牌,全球最好的骨传导耳机排行榜测评
  5. 谷歌SEO-图片站点地图
  6. 关于新时期道路交通安全管理若干问题的思考(上、下)
  7. php中时间戳与时间的相互转换
  8. PMP考试报名麻烦吗?(含pmp资料)
  9. logstash处理snmptrap消息问题
  10. Springboot启动出现A component required a bean of type ‘com.xxx‘ that could not问题解决