上一篇文章中学习了android.provider中Telephony类。

这一篇文章学习android.telephony包中的类,这些类是android提供给上层调用的API。

为监測基本电话信息提供的一系列的API。比如网络类型,连接状态。操作电话号码的工具类。

一共25个类。以下逐一介绍:

TelephonyManager

处理设备上的电话服务信息,应用能够使用这些方法检測电话的状态,处理用户的信息类型。也能够注冊一个监听器接受电话状态改变的通知。该类不能直接实例化,能够通过

Context.getSystemService(Context.TELEPHONY_SERVICE)

来获得该实例。假设想訪问受保护的信息,须要在配置文件中配置对应的权限才干訪问。

Constants

  • ACTION_PHONE_STATE_CHANGE:当call状态改变时发送一个广播意图。

  • ACTION_RESPOND_VIA_MESSAGE:当用户使用短信拒接时,发送一个意图电泳sms app去发送短信
  • CALL_STATE_IDLE:设备状态:no activity
  • CALL_STATE_OFFHOOK:设备状态:挂断
  • CALL_STATE_RINGING:设备状态:有电话呼叫
  • DATA_ACTIVITY_DORMANT:数据连接处于活动状态,可是物理连接时关闭的
  • DATA_ACTIVITY_IN:数据连接处于活动状态,当前接受IP PPP流量
  • DATA_ACTIVITY_INOUT:接受和发送IP PPP流量
  • DATA_ACTIVITY_NONE:数据连接处于活动状态,可是无流量
  • DATE_ACTIVITY_OUT:数据连接属于连接状态,发送IP PPP流量
  • DATA_CONNECTED:数据连接状态:已连接
  • DATA_CONNECTING:正在建立数据连接
  • DATA_DISCONNECTED:数据连接断开
  • DATA_SUSPENDED:数据连接中断
  • EXTRA_INCOMING_NUMBER:当call状态改变时发送意图里面包括的来电电话号码
  • EXTRA_STATE:来电状态
  • NETWORK_TYPE_1xRTT:2G网络
  • NETWORK_TYPE_CDMA:码分多址协议
  • NETWORK_TYPE_EDGE:即增强型数据速率GSM演进技术,GSM过渡到3G的协议
  • NETWORK_TYPE_EHRPD:CDMA过渡到LTE的协议
  • NETWORK_TYPE_EVDO_0:EVDO_0网络类型
  • NETWORK_TYPE_EVDO_A:EVDO_A网络类型
  • NETWORK_TYPE_EVDO_B:EVDO_B网络类型
  • NETWORK_TYPE_GPRS:GRPS(通用分组无线服务技术)网络类型
  • NETWORK_TYPE_HSDPA:HSDPA网络类型
  • NETWORK_TYPE_HSPAP:HSPAP(快速下行分组接入,3.5G)网络类型
  • NETWORK_TYPE_HSUPA:HSUPA(快速上行链路分组接入)网络类型
  • NETWORK_TYPE_IDEN:IDEN(集群通信系统)网络类型
  • NETWORK_TYPE_LTE:LTE(长期演进技术。UMTS的进步版)网络类型
  • NETWORK_TYPE_UMTS:UMTS(通用移动通信系统)网络类型
  • NETWORK_TYPE_UNKNOWN:未知网络类型
  • PHONE_TYPE_CDMA:CDMA格式的手机
  • PHONE_TYPE_GSM:GSM格式的手机
  • PHONE_TYPE_NONE:没有手机射频
  • PHONE_TYPE_SIP:基于SIP协议的手机
  • SIM_STATE_ABSENT:SIM卡状态:查找不到
  • SIM_STATE_NETWORK_LOCKED:SIM状态:锁定,须要网络PIN码解锁
  • SIM_STATE_PIN_REQUIRED:SIM状态:锁定。须要用户PIN码解锁
  • SIM_STATE_PUK_REQUIRED:SIM卡状态:锁定。须要解锁卡解锁
  • SIM_STATE_READY:SIM卡状态:准备(Ready)
  • SIM_STATE_UNKNOWN:SIM卡状态:未知(Unknown)

Methods

List<CellInfo>   getAllCellInfo()

得到全部电元信息

int getCallState()

当前通话状态

CellLocation getCellLocation()

获取当前设备的位置

int getDataActivity()

数据连接中的activity的类型

int getDataState()

数据连接的状态

String getDeviceId()

设备的ID号

String getDeviceSoftwareVersion()

设备的软件版本号

String getGroupIdLevel1()

GSM手机的groupId level1

String getLine1Number()

获取1号线的电话号码,比如GSM手机的MSISDN。须要权限:READ_PHONE_STATE.

String getMmsUAProfUrl()

短信代理商的URL

String getMmsUserAgent()

短信代理商

List<NeighboringCellInfo> getNeighboringCellInfo()

获取全部邻电元信息

String getNetworkCountryIso()

网络运营商的国家码MCC

String getNetworkOperator()

网络注冊运营商的MCC+MNC码

String getNetworkOperatorName()

网络运营商的名称

String getNetworkType()

网络类型

String getPhoneType()

手机类型

String getSimCountryIso()

ISO提供的国家代码

String getSimOperator()

获取SIM卡5位或6位移动国家码MCC+移动网络码MNC

String getSimOperatorName()

得到服务提供商的名称

String getSimSerialNumber()

得到sim串口号

String getSimState()

得到sim卡的状态

String getSubscriberId()

唯一用户标识ID。

代表用户的身份,比如GSM手机的IMSI号

String getVoiceMailAlphaTag()

得到与语音信箱号码有关的字母标识符,须要权限READ_PHONE_STATE;

String getVoiceMailNumber()

得到语音信箱的号码

boolean hasIccCard()

是否含有ICC卡

boolean isNetworkRoaming()

是否漫游

void listen(PhoneStateListenter,int)

注冊一个监听器,当指定的手机状态改变时,接收该手机发出的通知

Android中的Telephony学习笔记(2)的更多相关文章

  1. 我的Android进阶之旅------>Android中编解码学习笔记

    编解码学习笔记(一):基本概念 媒体业务是网络的主要业务之间.尤其移动互联网业务的兴起,在运营商和应用开发商中,媒体业务份量极重,其中媒体的编解码服务涉及需求分析.应用开发.释放license收费等等 ...

  2. android中的AIDL学习笔记

    一.定义 AIDL是用来解决进程间通信的(一般有四种方式:Activity.Service.ContentProvider.Broadcast Receiver),两个进程间无法直接通信,所以要用AI ...

  3. android中读取通讯录学习笔记

    1.读取通讯录时一次读取时,尽量少读取全部属性.特别是列表展示的时候.会让你的列表载入速度变得难以忍受,建议先载入少量属性.然后在详情的时候载入全部属性. 2.在读取一类属性的时候,建议用一个游标,且 ...

  4. Android(java)学习笔记167:Java中操作文件的类介绍(File + IO流)

    1.File类:对硬盘上的文件和目录进行操作的类.    File类是文件和目录路径名抽象表现形式  构造函数:        1) File(String pathname)       Creat ...

  5. Android(java)学习笔记110:Java中操作文件的类介绍(File + IO流)

    1.File类:对硬盘上的文件和目录进行操作的类.    File类是文件和目录路径名抽象表现形式  构造函数:        1) File(String pathname)       Creat ...

  6. Android自动化测试之Monkeyrunner学习笔记(一)

    Android自动化测试之Monkeyrunner学习笔记(一) 因项目需要,开始研究Android自动化测试方法,对其中的一些工具.方法和框架做了一些简单的整理,其中包括Monkey.Monkeyr ...

  7. Android(java)学习笔记267:Android线程池形态

    1. 线程池简介  多线程技术主要解决处理器单元内多个线程执行的问题,它可以显著减少处理器单元的闲置时间,增加处理器单元的吞吐能力.     假设一个服务器完成一项任务所需时间为:T1 创建线程时间, ...

  8. Android(java)学习笔记207:开源项目使用之gif view

    1. 由于android没有自带的gif动画,我在Android(java)学习笔记198:Android下的帧动画(Drawable Animation) 播客中提到可以使用AnimationVie ...

  9. Android(java)学习笔记71:生产者和消费者之等待唤醒机制

    1. 首先我们根据梳理我们之前Android(java)学习笔记70中关于生产者和消费者程序思路: 2. 下面我们就要重点介绍这个等待唤醒机制: (1)第一步:还是先通过代码体现出等待唤醒机制 pac ...

随机推荐

  1. 在线人数统计session管理

    下午比较闲(其实今天都很闲),想了一下在线人数统计方面的实现,上网找了下这方面的知识,最初我的想法是,管理session,如果session销毁了就减少,如果登陆用户了就新增一个,但是如果是用户非法退 ...

  2. 【bzoj1097】[POI2007]旅游景点atr 状压dp+堆优化Dijkstra

    题目描述 FGD想从成都去上海旅游.在旅途中他希望经过一些城市并在那里欣赏风景,品尝风味小吃或者做其他的有趣的事情.经过这些城市的顺序不是完全随意的,比如说FGD不希望在刚吃过一顿大餐之后立刻去下一个 ...

  3. Pointcut is not well-formed: expecting 'name pattern' at character position 53

    报错内容: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'dataso ...

  4. HDU 5322 Hope ——NTT 分治 递推

    发现可以推出递推式.(并不会) 然后化简一下,稍有常识的人都能看出这是一个NTT+分治的情况. 然而还有更巧妙的方法,直接化简一下递推就可以了. 太过巧妙,此处不表,建议大家找到那篇博客. 自行抄写 ...

  5. 洛谷 [P3623] 免费道路

    有 k 条特殊边的生成树 我们发现有一些边是必须的,如果把所有的水泥路都加入并查集,再枚举鹅卵石路,如果这条路能再次加入并查集,说明这条路是必须的 水泥路同样 这样就把必需边求出来了,剩下就可以随意加 ...

  6. 洛谷 [P3388] 割点模版

    tarjan 求无向图的割点 割点,即割去此点后原图可变为两个或多个独立的联通块 一个点 x 是割点,当且仅当存在一个x 的子节点 y ,使得 low[y] >= dfn[x] 对于根节点来说, ...

  7. ckeditor自己用的配置文件config.js

    原文发布时间为:2011-01-17 -- 来源于本人的百度文章 [由搬家工具导入] CKEDITOR.editorConfig = function(config) {    // Define c ...

  8. C# WebHTTPUtil工具类

    using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; usin ...

  9. [LeetCode] Search a 2D Matrix 二分搜索

    Write an efficient algorithm that searches for a value in an m x n matrix. This matrix has the follo ...

  10. Educational Codeforces Round 37 A B C D E F

    A. water the garden Code #include <bits/stdc++.h> #define maxn 210 using namespace std; typede ...