【Android架构Telephony篇】数据业务(1)总览 【转】

转自:https://blog.csdn.net/u013686019/article/details/49687825

Android设备中完整的移动通讯系统构成:

【Android架构Telephony篇】数据业务(1)总览 【转】_第1张图片

(1)Hardware

这里提到的无线通信模组是一种支持TD-LTE/FDD-LTE/TD-SCDMA/WCDMA/EVDO/CDMA1X/GSM等等网络制式的通信模块,能够为用户提供高速的无线数据、互联网接入等业务,具备语音、分组数据、短信功能,彩信等功能。提供这些功能使用服务的就是联通/移动/电信等运营商,通过SIM卡注册到各自的网络中,付费使用。

 

(2)Kernel

内核中实现访问无线通信模组的数据通道,比如对于串口类模组就可以为/dev/ttyS0(/dev/ttyS1...),USB接口的为/dev/ttyUSB0(/dev/ttyUSB1...)等。

而要使用模组的网络功能,还必须实现网络功能的通信协议,比如常见的PPP(Point-to-Point Protocol):

 

PPP  is  the  protocol used for establishing internet links over dial-up modems, DSL connections, and many other types of point-to-point links.  The

 

为直观故,我们看下通过PPP建立网络连接的log:

【Android架构Telephony篇】数据业务(1)总览 【转】_第2张图片

 

最后一行返回status为0,说明网络建立成功。

同时,它也显示了本地IP、远程IP、DNS等网络信息。在Android拨号过程中,用到的两个重要文件是/data/connect和/etc/ppp/ip-up。

这时可以adb shell进入系统,看下网络:

 

netcfg

或:

 

busybox ifconfig

【Android架构Telephony篇】数据业务(1)总览 【转】_第3张图片

 

(3)Framework

该层的Telephony子系统完成无线通信模块所有功能的具体实现,同时为应用开发人员提供使用接口。

(4)App

作为App开发人员,调用Telephony的API,实现具体功能的App工用户使用。

 

Android的Telephony子系统也是非常复杂的,涉及很多方面。我们以数据业务为分析入口,从上到下走一遍框图中的流程。

你可能感兴趣的:(Android)