微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > 基于Android平台的双网双待设计

基于Android平台的双网双待设计

时间:05-27 来源:3721RD 点击:

0 引言

随着移动通信技术的快速发展以及人们对手机功能需求的不断提高,智能手机逐渐成为人们的日常消费品,智能手机的用户也与日俱增。为了方便人们的生活,追求双网双待已成为手机研发的一种普遍现象。双网双待解决了一部手机可以同时接入两个网络的难题,最大的优点是保证了GSM 与CDMA 两种网络在同一手机中同时工作,真正实现了两网自由连通。双网的连通还具有差异化优势,可以将CDMA 较高的接入速度和通信保密等强大功能体现在终端方面,使双网双待手机用户能够尽享CDMA 网络支持的丰富多彩的数据增值业务。同时GSM 与CDMA 两网的和谐整合将为手机厂商带来巨大的市场价值。

Android 作为当前众多智能手机系统平台的后起之秀,以其优势正逐渐获得广大手机开发人员和手机消费者的青睐。实现双网双待也必将成为Android 不断创新和发展的重要因素。

Android 系统由嵌入式Linux 和Java 构成,因此基于Android 系统平台的双网双待设计区别于其他手机对双网双待的实现,它充分地利用了Android 平台清晰的系统架构、简易的工作原理和已经实现的部分Phone 核心应用程序进行双网双待的功能扩展,提高了Android 平台双网双待设计的效率。

1 Android 操作系统介绍

Android 是Google 于2007 年11 月份宣布的基于Linux 2. 6. 23平台的开源手机操作系统,号称是首个为移动终端打造的真正开放和完整的移动软件。Google 重新设计了Android Java 虚拟机和系统,使得Android 的Java 应用更接近于底层系统,效率更高; 另外使用虚拟机技术使得Android 的应用在被监控的情况下运行,安全性更高。Android 包括移动电话工作所需的全部软件,而且不存在任何以往阻碍移动产业创新的专有权障碍,具有平台标准化、用户可定制以及服务免费等特色,是一个对第三方软件完全开放的平台,突破了iPhone 等只能添加为数不多的固定软件的枷锁; 同时与Windows Mobile、Symbian、iPhone OS 等厂商不同,Android 操作系统免费向开发人员提供,大大节省了开发成本。

Android 平台由操作系统、中间件、用户界面和应用软件组成。Linux 内核层用来提供系统的底层服务,位于硬件和其他软件之间。Android 运行库包含一组核心库和Dalvik 虚拟机,Android 提供丰富的类库支持且大部分为开源代码,如采用嵌入式数据库SQLite.应用框架层为Android 开发人员提供了访问框架应用程序接口的全部权限,采用结构化设计简化了组件间的重用。在应用程序层,Android 本身附带了一些核心的应用程序,大大简化了Android 应用程序的开发。

因此,利用Android 平台更易于开发具有双网双待功能的智能手机系统,同时也便于在原有系统的基础上进行不断的完善和功能扩展。

2 Android 平台双网双待框架设计

Android 平台上实现的双网双待手机是将GSM 网络和CDMA网络相结合,使得一部手机可同时插入两张不同网络的号卡,并同时处于开机状态,用户无需切换网络,即可任意拨打、接听和收发短信,且这些手机均可支持中国电信自有的增值业务,使商务人士尽享移动办公的自由以及休息娱乐的乐趣。此外,用户还可预设接听和拨打电话的顺序,使用起来非常方便。

基于Android 系统平台的双网双待的设计,充分结合了Android2. 1 版本之后在framework 层上已经实现的双卡处理机制,设计方案主要侧重于RIL 及ARM(modem)侧的实现机制。通过在RIL 上依样建立一套新的处理机制,将双卡分别进行处理。

比如,打电话的时候,发送哪套请求就先选择向哪套机制发送请求,然后还在这套机制中等待消息的返回。Android 平台双网双待框架如图1 所示。

图1 Android 平台双网双待框架

图1 中GSM 网络和CDMA 网络分别拥有一套独立的RIL处理机制,从而可以根据上层不同的Phone 服务执行framework层以及RIL 层的相应处理,真正实现双网的协同工作,达到同一手机中双网双卡之间互不干扰的效果。

3 Android 平台双网双待软件设计

Android 平台双网双待功能设计主要涉及到Android 软件平台的四大功能模块,分别是Linux 内核层、本机库/运行时、应用程序框架层以及应用程序层。其中在应用程序层利用Android的各种组件API 实现PhoneApp 并在Linux 内核层提供相应的底层驱动。Android 系统架构如图2 所示。

图2 Android 系统架构

(1)Linux 内核。

Android 系统平台是基于优化的Linux 内核来开发的,主要添加了一个名为Goldfish 的虚拟CPU 以及Android 运行所需的特定驱动代码。该层用来提供系统的底层服务,提供诸如内存管理、进程管理、设备驱动、安全管理、电源管理等驱动

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top