android系统如何获取imei号码,获取手机型号和系统版本号(1)

本文详细介绍了Android中的TelephonyManager类,展示了其各种功能如电话状态、位置信息、设备标识等,并鼓励开发者提升技能,尤其是高级Android开发,以应对行业变化和面试挑战。
摘要由CSDN通过智能技术生成

import android.app.Activity;

import android.os.Bundle;

import android.telephony.CellLocation;

import android.telephony.PhoneStateListener;

import android.telephony.TelephonyManager;

public class TelManager extends Activity {

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

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

/*

  • 电话状态:

  • 1.tm.CALL_STATE_IDLE=0 无活动

  • 2.tm.CALL_STATE_RINGING=1 响铃

  • 3.tm.CALL_STATE_OFFHOOK=2 摘机

*/

tm.getCallState();//int

/*

  • 电话方位:

*/

tm.getCellLocation();//CellLocation

/*

  • 唯一的设备ID:

  • GSM手机的 IMEI 和 CDMA手机的 MEID.

  • Return null if device ID is not available.

*/

tm.getDeviceId();//String

/*

  • 设备的软件版本号:

  • 例如:the IMEI/SV(software version) for GSM phones.

  • Return null if the software version is not available.

*/

tm.getDeviceSoftwareVersion();//String

/*

  • 手机号:

  • GSM手机的 MSISDN.

  • Return null if it is unavailable.

*/

tm.getLine1Number();//String

/*

  • 附近的电话的信息:

  • 类型:List

  • 需要权限:android.Manifest.permission#ACCESS_COARSE_UPDATES

*/

tm.getNeighboringCellInfo();//List

/*

  • 获取ISO标准的国家码,即国际长途区号。

  • 注意:仅当用户已在网络注册后有效。

  •   在CDMA网络中结果也许不可靠。   
    

*/

tm.getNetworkCountryIso();//String

/*

  • MCC+MNC(mobile country code + mobile network code)

  • 注意:仅当用户已在网络注册时有效。

  • 在CDMA网络中结果也许不可靠。

*/

tm.getNetworkOperator();//String

/*

  • 按照字母次序的current registered operator(当前已注册的用户)的名字

  • 注意:仅当用户已在网络注册时有效。

  • 在CDMA网络中结果也许不可靠。

*/

tm.getNetworkOperatorName();//String

/*

  • 当前使用的网络类型:

  • 例如: NETWORK_TYPE_UNKNOWN 网络类型未知 0

NETWORK_TYPE_GPRS GPRS网络 1

NETWORK_TYPE_EDGE EDGE网络 2

NETWORK_TYPE_UMTS UMTS网络 3

NETWORK_TYPE_HSDPA HSDPA网络 8

NETWORK_TYPE_HSUPA HSUPA网络 9

NETWORK_TYPE_HSPA HSPA网络 10

NETWORK_TYPE_CDMA CDMA网络,IS95A 或 IS95B. 4

NETWORK_TYPE_EVDO_0 EVDO网络, revision 0. 5

NETWORK_TYPE_EVDO_A EVDO网络, revision A. 6

NETWORK_TYPE_1xRTT 1xRTT网络 7

*/

tm.getNetworkType();//int

/*

  • 手机类型:

  • 例如: PHONE_TYPE_NONE 无信号

PHONE_TYPE_GSM GSM信号

PHONE_TYPE_CDMA CDMA信号

*/

tm.getPhoneType();//int

/*

  • Returns the ISO country code equivalent for the SIM provider’s country code.

  • 获取ISO国家码,相当于提供SIM卡的国家码。

*/

tm.getSimCountryIso();//String

/*

  • Returns the MCC+MNC (mobile country code + mobile network code) of the provider of the SIM. 5 or 6 decimal digits.

  • 获取SIM卡提供的移动国家码和移动网络码.5或6位的十进制数字.

  • SIM卡的状态必须是 SIM_STATE_READY(使用getSimState()判断).

*/

tm.getSimOperator();//String

/*

  • 服务商名称:

  • 例如:中国移动、联通

最后

感觉现在好多人都在说什么安卓快凉了,工作越来越难找了。又是说什么程序员中年危机啥的,为啥我这年近30的老农根本没有这种感觉,反倒觉得那些贩卖焦虑的都是瞎j8扯谈。当然,职业危机意识确实是要有的,但根本没到那种草木皆兵的地步好吗?

Android凉了都是弱者的借口和说辞。虽然 Android 没有前几年火热了,已经过去了会四大组件就能找到高薪职位的时代了。这只能说明 Android 中级以下的岗位饱和了,现在高级工程师还是比较缺少的,很多高级职位给的薪资真的特别高(钱多也不一定能找到合适的),所以努力让自己成为高级工程师才是最重要的。

所以,最后这里放上我耗时两个月,将自己8年Android开发的知识笔记整理成的Android开发者必知必会系统学习资料笔记,上述知识点在笔记中都有详细的解读,里面还包含了腾讯、字节跳动、阿里、百度2019-2021面试真题解析,并且把每个技术点整理成了视频和PDF(知识脉络 + 诸多细节)。

以上全套学习笔记面试宝典,吃透一半保你可以吊打面试官,只有自己真正强大了,有核心竞争力,你才有拒绝offer的权力,所以,奋斗吧!骚年们!千里之行,始于足下。种下一颗树最好的时间是十年前,其次,就是现在。

最后,赠与大家一句诗,共勉!

不驰于空想,不骛于虚声。不忘初心,方得始终。
《Android学习笔记总结+移动架构视频+大厂面试真题+项目实战源码》点击传送门,即可获取!
]

以上全套学习笔记面试宝典,吃透一半保你可以吊打面试官,只有自己真正强大了,有核心竞争力,你才有拒绝offer的权力,所以,奋斗吧!骚年们!千里之行,始于足下。种下一颗树最好的时间是十年前,其次,就是现在。

最后,赠与大家一句诗,共勉!

不驰于空想,不骛于虚声。不忘初心,方得始终。
《Android学习笔记总结+移动架构视频+大厂面试真题+项目实战源码》点击传送门,即可获取!

  • 11
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值