Android4.0通话流程总结+呼入+呼出+状态改变+UI发AT命令+远程挂断+本地挂断.rar
在Android系统中,通话流程是其核心功能之一,尤其在Android 4.0版本中,这一部分的设计和实现有了更完善的优化。以下是对这个压缩包文件中涉及的Android 4.0通话流程的详细解析: 1. **通话流程概述**: Android 4.0的通话流程包括呼入、呼出、通话状态改变、AT命令的发送以及远程和本地挂断等关键环节。这些流程通常由多个组件协同完成,如电话服务(PhoneService)、RIL(Radio Interface Layer)、电话状态监听器(PhoneStateListener)和UI层等。 2. **呼入流程**(CallInSequenceDiagram.bmp/jpg): 当有来电时,RIL接收到基带芯片的信号,随后通过 Binder 机制将事件传递给PhoneService。PhoneService处理这些事件,并更新通话状态,同时调用系统广播来通知其他应用。UI层根据接收到的广播消息显示来电界面,用户可以选择接听或忽略。 3. **呼出流程**(CallOutSequenceDiagram.bmp/jpg): 用户在拨号界面输入号码后,系统会发起一个拨号请求。这个请求通过PhoneService发送到RIL,RIL负责向基带芯片发送AT命令来发起呼叫。当连接建立成功,PhoneService会更新通话状态,通知UI更新显示。 4. **通话状态改变**(CallChangeSequenceDiagram.bmp/jpg): 在通话过程中,可能会发生通话质量变化、信号强度变化等,这些状态的变化会由RIL报告给PhoneService,然后通过系统广播通知UI和其他监听通话状态的应用。 5. **UI发AT命令**(CallUISequenceDiagram.bmp/jpg): 虽然通常AT命令是由底层RIL发送的,但在特定情况下,UI也可能需要发送AT命令,比如用户手动调整音量。这种情况下,UI会通过PhoneService向RIL发送命令,RIL再将其转化为相应的AT指令。 6. **远程挂断**(CalDisconnectByOtherSequenceDiagram.bmp/jpg): 对方挂断电话时,RIL会接收到挂断信号,通知PhoneService通话结束,PhoneService更新状态并通知UI显示挂断界面。 7. **本地挂断**(CalDisconnectByUserSequenceDiagram.bmp/jpg): 用户点击挂断按钮时,UI向PhoneService发送挂断请求,PhoneService执行相应的操作,通过RIL发送AT命令来终止通话。 8. **类图(ClassDiagram1.bmp)**: 这可能是一个描绘了Android通话模块中主要类及其关系的UML类图,包括PhoneService、RIL、PhoneStateListener等类,展示了它们如何协作完成通话功能。 以上就是对Android 4.0通话流程的详细解释,这些流程图和类图对于理解和调试Android通话系统非常有帮助,同时也为开发自定义通话应用或增强通话功能提供了参考。通过深入理解这些机制,开发者可以更好地定制通话体验,实现诸如通话录音、来电识别等高级功能。
- zhongsh_20112017-10-25流程描述还挺详细的,赞一下。
- 安卓小飞2017-09-28假的,大家别下了,浪费积分~瀚澈2017-10-11UML源文件打不开,需下载staruml,地址http://download.csdn.net/download/qq_23370223/9983979瀚澈2017-10-118张jpg,8张bmp,一个uml文件,uml文件中8个时序图,还有一个类图
- 粉丝: 7
- 资源: 18
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助