Android Telephony是Android系统中的一个重要组件,它负责与手机网络运营商进行通信,处理电话、短信、数据连接、SIM卡功能以及智能卡技术(STK)等。本文将通过概述结构、关键模块和实例来深入理解这一核心模块。 首先,让我们来看一下整体架构图(见Figure1:Telephony Overview Structure)。这个架构包括以下几个主要部分: 1. **Telephony Interface**: 这个接口定义了Android系统与Radio Interface Library (RIL)之间的交互,是Android Telephony的核心。它涵盖了电话功能的核心操作,如拨打电话、接收电话、短信发送和接收等。 2. **GSMPhone**(见2.1 GSMPhone[pic]): GSMPhone是PhoneBase类的子类,实现了Phone接口。它集成了电话相关的所有功能,包括电话呼叫、SIM卡管理、数据连接、服务器状态、STK服务以及短信处理。GSMPhone还包含了对RIL的命令接口,通过这些接口,应用可以控制底层硬件的通信。 - **PhoneBase** 和 **PhoneNotifier**: PhoneBase是所有电话功能的基类,提供了基本的电话状态通知功能。DefaultPhoneNotifier则实现PhoneNotifier接口,当电话状态(如信号强度、服务状态)或位置发生变化时,会通过这些接口通知应用。 3. **TelephonyManager**(2.2 TelephonyManager4): 是一个系统服务,提供了与电话相关的全局方法,如获取当前电话状态、查询网络信息、获取信号强度等。开发者通常通过Context.getSystemService()获取该服务实例。 4. **CallTracer**(2.3 CallTracer5): 可能是指用于跟踪和记录电话通话的工具,可能用于调试或者性能分析。 5. **ServerState**(2.4 ServerState7): 反映了网络服务的状态,例如GSM网络、CDMA网络等。 6. **DataConnection**(2.5 DataConnection9): 管理手机的数据连接,如GPRS/EDGE/3G/4G/LTE网络的建立和维护。 7. **RIL (Radio Interface Layer)**(3.1 RIL10): 是硬件级别的接口,提供给操作系统访问底层无线通信硬件的抽象层。它处理与网络的物理连接,如拨号、挂断、数据传输等。 - **BaseCommand**(3.2 BaseCommand11): 基本的RIL命令集合,包括启动/关闭手机、设置/获取信号强度等。 - **Workflows**(3.3 Workflows12): 描述了RIL工作流程,即一系列命令如何协同完成特定任务。 - **RILMessages**(3.4 RILMessages14): 代表RIL发送给应用程序的消息,这些消息包含了重要的网络状态和操作结果。 8. **SIM(Subscriber Identity Module)**(4.1 GsmSimCard15): 存储用户的身份信息,包括IMSI、PIN码、PUK码等,是连接到移动网络的关键。 - **SIMFileHandler**(4.2 SIMFileHandler16): 处理SIM卡文件的操作,如读取、写入或删除SIM卡上的数据。 - **SIMRecords**(4.3 SIMRecords17): 包含SIM卡的用户记录,如联系人、短信等。 9. **STK (Smartcard Technology)**(5. STK18): 一种通过SIM卡实现的扩展功能,支持安全交易和远程操作,如手机银行、移动支付等。 10. **SMS(Short Message Service)**(6. SMS20): 提供发送和接收短信的功能。 11. **TelephonyApp**(7. TelephonyApp21): 应用程序开发者通常会利用Telephony框架开发电话和短信相关的功能,这些应用可以通过上述接口与Telephony系统进行交互。 Android Telephony模块是一个复杂且关键的部分,它负责了设备与外部网络的通信,以及与各种应用的集成。理解并掌握这一组件对于构建高效、稳定的移动通信应用至关重要。
![](https://csdnimg.cn/release/download_crawler_static/5038859/bg5.jpg)
剩余21页未读,继续阅读
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/release/wenkucmsfe/public/img/green-success.6a4acb44.png)