Android中与电话功能相关的类是 TelephonyManager ,此类中定义了很多常量,以下分类说明
获取以下信息需要在AndroidManifest.xml中指定权限
一、 数据连接状态
获取数据连接状态:int getDataState()
获取数据活动状态:int getDataActivity()
常用的有这几个:
int DATA_ACTIVITY_IN 数据连接状态:活动,正在接受数据
int DATA_ACTIVITY_OUT 数据连接状态:活动,正在发送数据
int DATA_ACTIVITY_INOUT 数据连接状态:活动,正在接受和发送数据
int DATA_ACTIVITY_NONE 数据连接状态:活动,但无数据发送和接受
int DATA_CONNECTED 数据连接状态:已连接
int DATA_CONNECTING 数据连接状态:正在连接
int DATA_DISCONNECTED 数据连接状态:断开
int DATA_SUSPENDED 数据连接状态:暂停
二、 移动网络类型
获取网络类型:int getNetworkType()
常用的有这几个:
int NETWORK_TYPE_CDMA 网络类型为CDMA
int NETWORK_TYPE_EDGE 网络类型为EDGE
int NETWORK_TYPE_EVDO_0 网络类型为EVDO0
int NETWORK_TYPE_EVDO_A 网络类型为EVDOA
int NETWORK_TYPE_GPRS 网络类型为GPRS
int NETWORK_TYPE_HSDPA 网络类型为HSDPA
int NETWORK_TYPE_HSPA 网络类型为HSPA
int NETWORK_TYPE_HSUPA 网络类型为HSUPA
int NETWORK_TYPE_UMTS 网络类型为UMTS
在中国,联通的3G为UMTS或HSDPA,移动和联通的2G为GPRS或EGDE,电信的2G为CDMA,电信的3G为EVDO
三、 手机制式类型
获取手机制式:int getPhoneType()
int PHONE_TYPE_CDMA 手机制式为CDMA,电信
int PHONE_TYPE_GSM 手机制式为GSM,移动和联通
int PHONE_TYPE_NONE 手机制式未知
四、 SIM卡状态
获取SIM卡状态:int getSimState()
int SIM_STATE_ABSENT SIM卡未找到
int SIM_STATE_NETWORK_LOCKED SIM卡网络被锁定,需要Network PIN解锁
int SIM_STATE_PIN_REQUIRED SIM卡PIN被锁定,需要User PIN解锁
int SIM_STATE_PUK_REQUIRED SIM卡PUK被锁定,需要User PUK解锁
int SIM_STATE_READY SIM卡可用
int SIM_STATE_UNKNOWN SIM卡未知
五、其它信息
String getSimCountryIso()
返回SIM卡提供商的国家代码
String getNetworkCountryIso()
返回ISO标准的国家码,即国际长途区号
String getSimOperator()
String getNetworkOperator()
返回MCC+MNC代码 (SIM卡运营商国家代码和运营商网络代码)(IMSI)
String getSimOperatorName()
String getNetworkOperatorName()
返回移动网络运营商的名字(SPN)
String getSubscriberId()
返回IMSI,即国际移动用户识别码
String getDeviceId()
如果是GSM网络,返回IMEI;如果是CDMA网络,返回MEID
String getSimSerialNumber()
返回SIM卡的序列号(IMEI)
String getLine1Number()
返回手机号码,对于GSM网络来说即MSISDN
boolean isNetworkRoaming()
返回手机是否处于漫游状态
解释:
IMSI是国际移动用户识别码的简称(International Mobile Subscriber Identity)
IMSI共有15位,其结构如下:
MCC+MNC+MIN
MCC:Mobile Country Code,移动国家码,共3位,中国为460;
MNC:Mobile NetworkCode,移动网络码,共2位
在中国,移动的代码为电00和02,联通的代码为01,电信的代码为03
合起来就是(也是Android手机中APN配置文件中的代码):
中国移动:46000 46002
中国联通:46001
中国电信:46003
举例,一个典型的IMSI号码为460030912121001
IMEI是International Mobile Equipment Identity (国际移动设备标识)的简称
IMEI由15位数字组成的”电子串号”,它与每台手机一一对应,而且该码是全世界唯一的
其组成为:
1. 前6位数(TAC)是”型号核准号码”,一般代表机型
2. 接着的2位数(FAC)是”最后装配号”,一般代表产地
3. 之后的6位数(SNR)是”串号”,一般代表生产顺序号
4. 最后1位数(SP)通常是”0″,为检验码,目前暂备用
分享到:
相关推荐
在Android平台上,开发一款应用程序来获取手机陀螺仪传感器数据并计算手机相对于初始位置的旋转角度是一项技术性任务。陀螺仪传感器是移动设备中的一种关键硬件,它能够检测设备在三维空间中的角速度变化,这对于...
Android系统提供了一个`ContentResolver`接口,通过它我们可以查询`MediaStore`内容提供者,获取手机中的图片信息。`MediaStore.Images.Media.EXTERNAL_CONTENT_URI`可以用来获取外部存储中的所有图片。 3. **...
获取android设备信息 /** * android android设备信息类 * * @author 0907 * */ public class AndroidDeviceInfo { private String sysDateTime;// 设备系统时间 private String deviceName;// 设备名称及...
这个项目最初是在ADT(Android Developer Tools)环境下构建的,ADT是早期Android开发者常用的集成开发环境。随着时间的推移,为了适应最新的开发标准和提高开发效率,该项目已迁移到Android Studio,并进行了二次...
当 APK 已经安装并运行在手机上时,可以通过以下命令获取当前的活动栈信息: ```shell adb shell dumpsys activity | grep package ``` 此命令适用于 Linux 或 macOS 系统,通过终端执行。对于 Windows 用户来说,...
总之,Android日志抓取是开发者和故障排查人员的常用技能,合理使用各种工具和方法能有效提升问题解决效率。提供的“Android日志获取工具”为这一过程提供了便利,只需按照说明操作,即可轻松完成日志的获取和保存。
在Android开发中,有时我们需要获取手机上已安装的APK应用信息,这可能涉及到应用的元数据、权限、版本信息等。本示例将详细解释如何实现这一功能,并通过异步加载来避免阻塞主线程,提升用户体验。下面我们将深入...
使用 BroadcastReceiver 获取电池电量信息是 Android 中最常用的方式,应用程序可以注册 BroadcastReceiver 组件来接收电池电量变化的广播。下面是一个简单的示例代码: 1. 首先,需要在 AndroidManifest.xml 文件...
文档《android手机卫士文档》详细介绍了开发过程中的一些关键环节和代码实现。以下是对该文档中提到知识点的详细解读: 1. 软件管家模块概述:软件管家模块是手机卫士应用中的重要组成部分,它负责管理和维护手机中...
网上收集和自己总结的一些android使用...Android获取手机音乐.docx android客户端和服务器端交互.docx Android之从网络上获取图片视频.docx webview属性大全.docx 菜谱aip.docx 反编译Apk得到Java源代码总结.docx
- `android.permission.ACCESS_COARSE_LOCATION`:这个权限允许应用获取粗略的位置信息,如通过蜂窝基站或Wi-Fi热点定位,但精度较低。 - `android.permission.ACCESS_FINE_LOCATION`:应用获得此权限后,可以访问...
【Android智能手机编程】形考任务2涉及的知识点涵盖了软件开发、市场营销、信息管理等多个领域,以下将对这些知识点进行详细解读: 1. **市场信息与消费者需求**:市场信息不仅包含消费者的需求信息,还包括市场...
Android 获取 iBeacon 列表的方法是一种常用的蓝牙低功耗(BLE)技术,通过手机或平板电脑等移动设备来扫描和检测周围的 iBeacon 设备。以下是 Android 获取 iBeacon 列表的方法的详细介绍: 一、使用 ...
连接获取服务器上软件的评分信息等功能。程序锁可以指定要保护的程序, 用户进入要保护的程序之前必须输入密码。 任务管理: 显示当前系统运行的进程信息 显示系统内存信息, 可以杀死某个进程,批量杀死进程,通过桌面...
在Android中,最常用的方法之一是通过`HttpURLConnection`来获取远程资源的信息。下面是一个具体的示例代码: ```java URL url = new URL("http://example.com/somefile.jpg"); HttpURLConnection conn = ...
在Android平台上实现手机号码归属地查询,涉及到的关键技术主要包括数据库操作、网络请求和数据解析。以下将详细阐述这些知识点。 1. **Android数据库操作**: Android系统支持SQLite数据库,这是轻量级的关系型...
在Android系统中,获取应用程序信息是一项常见的任务,无论是开发者调试应用、系统管理员监控设备状态,还是用户想要了解自己手机上安装的应用详情。本资源“Android获取Android系统程序信息.zip”可能包含了一些...
- `DeviceUtils`:获取设备信息,如手机型号、屏幕尺寸、操作系统版本等,这些信息在适配不同设备时非常有用。 9. **Log工具类**: - `LogUtils`:自定义的日志打印工具,可以设置日志等级,便于调试和记录应用...