基于Android平台支持多语音通道的方法、系统和移动终端的制作方法

文档序号:7760752阅读:167来源:国知局
专利名称:基于Android平台支持多语音通道的方法、系统和移动终端的制作方法
技术领域
本发明涉及移动通信技术领域,尤其涉及一种基于Android平台支持多语音通道 的方法、系统和移动终端。
背景技术
Android平台是Google (谷歌)公司开发的基于Linux平台的开源移动终端操作 系统。它包括操作系统、用户界面和应用程序等移动终端工作所需的全部软件。Google公 司通过与运营商、设备制造商、开发商等各方结成深层次的合作伙伴关系,希望借助建立标 准化、开放式的移动终端软件平台,在移动产业内形成一个开放式的生态系统。在现有Android平台的Audio (音频)系统中,是通过在Audio框架层定义通信语 音模式,支持通信语音模式和其它模式的切换,同时保存和管理Audio框架层的模式状态。 但现有Audio框架层仅支持一路语音工作,在移动终端需要加入多个通信模块时,Audio框 架层无法支持多路语音通道的设置,以调用驱动层正常工作。综上可知,现有Android平台在支持多语音通道技术上,显然存在不便与缺陷,所 以有必要加以改进。

发明内容
针对上述的缺陷,本发明的目的在于提供一种基于Android平台支持多语音通道 的方法、系统和移动终端,其能够在Android平台上支持多语音通道功能,从而实现多模/ 双模移动终端的多路语音在Android平台上正常工作。为了实现上述目的,本发明提供一种基于Android平台支持多语音通道的方法, 应用于包括多个通信模块的移动终端,所述方法包括步骤如下应用层的语音管理模块定义多个语音通道,每个所述语音通道分别对应不同所述 通信模块所采用的语音模式;所述语音管理模块判断当前的音频系统状态,并调用框架层的音频框架管理模 块;所述音频框架管理模块根据所述当前的音频系统状态设置当前的语音模式,并调 用驱动层的音频驱动模块;所述音频驱动模块根据所述当前的语音模式,切换对应的语音通道以实现语音通根据本发明支持多语音通道的方法,所述语音管理模块判断当前的音频系统状态 的步骤之前还包括所述应用层的通信应用模块在语音通信之前调用所述语音管理模块,根据当前的 通信模式设置所述当前的音频系统状态。根据本发明支持多语音通道的方法,所述框架层对所述应用层提供Java本地接
3
根据本发明支持多语音通道的方法,所述语音模式包括CDMA语音模式、GSM语音 模式。本发明还提供一种基于Android平台支持多语音通道的系统,应用于包括多个通 信模块的移动终端,所述系统包括位于应用层的语音管理模块,用于定义多个语音通道,每个所述语音通道分别对 应不同通信模块所采用的语音模式;还用于判断当前的音频系统状态,并调用音频框架管 理模块;位于框架层的音频框架管理模块,用于根据所述当前的音频系统状态设置当前的 语音模式,并调用音频驱动模块;位于驱动层的音频驱动模块,用于根据该所述当前的语音模式,切换对应的语音 通道以实现语音通信。根据本发明支持多语音通道的系统,所述应用层还包括通信应用模块,用于在语 音通信之前调用所述语音管理模块,根据当前的通信模式设置所述当前的音频系统状态。根据本发明支持多语音通道的系统,所述框架层对所述应用层提供Java本地接根据本发明支持多语音通道的系统,所述语音模式包括CDMA语音模式、GSM语音 模式。本发明还提供一种包括上述基于Android平台支持多语音通道的系统的移动终端。本发明通过对Android平台中Audio系统的应用层、框架层和驱动层进行修改及 完善,即在应用层的语音管理模块定义多个语音通道以及判断Audio系统状态,由框架层 的Audio框架管理模块根据Audio系统状态设置当前的语音模式,调用驱动层的Audio驱 动模块切换对应的语音通道以实现语音通信。借此,本发明能够在Android平台上支持多 语音通道功能,从而实现多模/双模移动终端的多路语音在Android平台上正常工作。


图1是本发明提供的基于Android平台支持多语音通道的系统结构图;图2是本发明提供的基于Android平台支持多语音通道的方法流程图;图3是本发明优选的基于Android平台支持多语音通道的方法流程图。
具体实施例方式为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对 本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并 不用于限定本发明。本发明的基本思想是通过对Android平台中Audio (音频)系统的应用层、框架 层和驱动层进行修改及完善,以实现在Android平台上支持多语音通道功能。所谓多语音 通道,是指一台移动终端同时持两个或以上的通信模块,多个通信模块与声卡相连接,并支 持每一路的语音数据输入输出。
4
图1示出了本发明基于Android平台支持多语音通道的系统结构,所述系统100 应用于多模/双模手机等包括多个通信模块的移动终端,该系统100按照Android平台架 构主要分为应用(Java)层、框架层和驱动层,并主要包括模块有位于应用层的语音管理 模块10、位于框架层的Audio框架管理模块20和位于驱动层的Audio驱动模块30,其中语音管理模块10,用于在Android平台原有代码的基础上,定义多个语音通道,该 语音通道的定义可通过应用层的接口向通信应用提供扩充的应用功能。每个语音通道分别 对应不同通信模块所采用的语音模式,主要包括CDMA通信模块采用的CDMA语音模式和GSM 模块采用的GSM语音模式,当然还可以包括其他类型的通信模块所采用的语音模式。另外, 语音管理模块10还用于判断当前的Audio系统状态,并对下调用框架层的Audio框架管理 模块20。Audio框架管理模块20,用于管理Audio系统状态,根据当前的Audio系统状态设 置当前的语音模式,并对下调用驱动层的接口,以调用驱动层的Audio驱动模块30。Audio驱动模块30,用于根据该当前的语音模式,切换对应的语音通道以实现语 音通信,例如如果当前是CDMA语音模式,则调用CDMA语音通道工作;如果当前是GSM语音 模式,则调用GSM语音通道工作。更具体而言,Audio驱动模块30调用各种Audio硬件模 ±夬,例如声卡模块,GSM通信模块,CDMA网通信模块以及其它辅助模块(如功能,消噪),由 Audio硬件模块做语音采集和语音输出等工作。优选的是,本系统100的应用层还包括通信应用模块40,用于在每次语音通信之 前调用语音管理模块10,通信应用模块40根据当前实际的通信模式设置当前的Audio系统 状态。如图1所示,在Android平台的Audio系统中多出了一个Audio框架层,Audio系统 将接口功能提供到Java应用层,并且Audio框架层提供JNI接口(JavaNative Interface, Java本地接口)50给Java应用层。应用程序都运行在Java应用层,且Java应用层的各模 块可以通过JNI接口 50调用Audio框架层的各模块,例如语音管理模块10通过JNI接口 50调用Audio框架管理模块20。Audio框架层专门用于处理语音的各种模式切换管理,对 上面的Java应用层完全封闭,Java应用层不用管理语音处理逻辑,只要按不同需要调用即 可;同样对下面的驱动层,只要实际对多个模块的各自调用,也不用管逻辑处理。该Audio 系统不仅结构清析,更便于后续功能扩展。图2示出了本发明基于Android平台支持多语音通道的方法流程,其可通过图1 所示的系统100实现,所述方法包括步骤有步骤S201,应用层的语音管理模块10定义多个语音通道,每个语音通道分别对应 不同通信模块所采用的语音模式。例如双模移动终端中CDMA通信模块的CDMA语音模式和 GSM通信模块的GSM语音模式。步骤S202,语音管理模块10判断当前的Audio系统状态,并调用框架层的Audio 框架管理模块20。其中,框架层对应用层提供JNI接口 50,语音管理模块10通过Java本 地接口 50调用Audio框架管理模块20即可。步骤S203,Audio框架管理模块20管理Audio系统状态,并根据当前的Audio系 统状态设置当前的语音模式,并调用驱动层的Audio驱动模块30以实现各种语音模式的切换。
步骤S204,Audio驱动模块30根据当前的语音模式,切换对应的语音通道以实现 语音通信。Audio驱动模块30根据不同语音模式切换成相应通信模块的语音通道以实现接 收音频信号,发送语音信号。通过上述基于Android平台支持多语音通道的方法,本发明可以有效解决 Android平台下支持多路语音正常工作的问题。图3示出了发明优选的支持多语音通道的方法流程,本实施例应用于包括CDMA通 信模块和GSM通信模块的双模移动终端,其可通过如图1所示的系统100来实现,该方法具 体包括步骤如下步骤S301,应用层的语音管理模块10定义两个语音通道——CDMA语音通道和GSM 语音通道,CDMA语音通道对应CDMA通信模块采用的CDMA语音模式,GSM语音通道对应GSM 通信模块采用的GSM语音模式。步骤S302,应用层的通信应用模块40在每次语音通信之前调用本层的语音管理 模块10,根据当前的通信模式设置当前的Audio系统状态。也就是说,通信应用模块40决 定Audio系统状态,因为只有通信应用模块40才知道当前进行语音通信的通信模块是CDMA 通信模块还是GSM通信模块。步骤S303,语音管理模块10判断当前的Audio系统状态,并通过JNI接口 50调用 框架层的Audio框架管理模块20。步骤S304,Audio框架管理模块20接收并处理应用层调用的命令,根据当前的 Audio系统状态设置并保存当前的语音模式,并调用驱动层的Audio驱动模块30。这里, Audio框架管理模块20将相关类型转换为驱动层可识别的类别,以调用Audio驱动模块 30。步骤S305,Audio驱动模块30接收并处理框架层调用的命令,根据当前的语音模 式,切换对应的语音通道,以接通不同的硬件模块工作。步骤S306,如果当前为CDMA语音模式,则调用CDMA通信模块将语音输入、输出到
声卡处理。步骤S307,如果当前为GSM语音模式,则调用GSM通信模块将语音输入、输出到声 卡处理。综上所述,本发明通过对Android平台中Audio系统的应用层、框架层和驱动层进 行修改及完善,即在应用层的语音管理模块定义多个语音通道以及判断Audio系统状态, 由框架层的Audio框架管理模块根据Audio系统状态设置当前的语音模式,调用驱动层的 Audio驱动模块切换对应的语音通道以实现语音通信。借此,本发明能够在Android平台上 支持多语音通道功能,从而实现多模/双模移动终端的多路语音在Android平台上正常工 作。当然,本发明还可有其它多种实施例,在不背离本发明精神及其实质的情况下,熟 悉本领域的技术人员当可根据本发明作出各种相应的改变和变形,但这些相应的改变和变 形都应属于本发明所附的权利要求的保护范围。
权利要求
一种基于Android平台支持多语音通道的方法,应用于包括多个通信模块的移动终端,其特征在于,所述方法包括步骤如下应用层的语音管理模块定义多个语音通道,每个所述语音通道分别对应不同所述通信模块所采用的语音模式;所述语音管理模块判断当前的音频系统状态,并调用框架层的音频框架管理模块;所述音频框架管理模块根据所述当前的音频系统状态设置当前的语音模式,并调用驱动层的音频驱动模块;所述音频驱动模块根据所述当前的语音模式,切换对应的语音通道以实现语音通信。
2.根据权利要求1所述的方法,其特征在于,所述语音管理模块判断当前的音频系统 状态的步骤之前还包括所述应用层的通信应用模块在语音通信之前调用所述语音管理模块,根据当前的通信 模式设置所述当前的音频系统状态。
3.根据权利要求1所述的方法,其特征在于,所述框架层对所述应用层提供Java本地 接口。
4.根据权利要求1所述的方法,其特征在于,所述语音模式包括CDMA语音模式、GSM语音模式。
5.一种基于Android平台支持多语音通道的系统,应用于包括多个通信模块的移动终 端,其特征在于,所述系统包括位于应用层的语音管理模块,用于定义多个语音通道,每个所述语音通道分别对应不 同通信模块所采用的语音模式;还用于判断当前的音频系统状态,并调用音频框架管理模 块;位于框架层的音频框架管理模块,用于根据所述当前的音频系统状态设置当前的语音 模式,并调用音频驱动模块;位于驱动层的音频驱动模块,用于根据该所述当前的语音模式,切换对应的语音通道 以实现语音通信。
6.根据权利要求5所述的系统,其特征在于,所述应用层还包括通信应用模块,用于 在语音通信之前调用所述语音管理模块,根据当前的通信模式设置所述当前的音频系统状 态。
7.根据权利要求5所述的系统,其特征在于,所述框架层对所述应用层提供Java本地 接口。
8.根据权利要求5所述的系统,其特征在于,所述语音模式包括CDMA语音模式、GSM语音模式。
9.一种包括如权利要求5 8任意一项所述基于Android平台支持多语音通道的系统 的移动终端。全文摘要
本发明适用于通信技术领域,本发明提供了一种基于Android平台支持多语音通道的方法、系统和移动终端,所述方法应用于具有多个通信模块的移动终端,包括步骤有应用层的语音管理模块定义多个语音通道,每个语音通道分别对应不同通信模块所采用的语音模式;语音管理模块判断当前的音频系统状态,并调用框架层的音频框架管理模块;音频框架管理模块根据当前的音频系统状态设置当前的语音模式,并调用驱动层的音频驱动模块;音频驱动模块根据当前的语音模式,切换对应的语音通道以实现语音通信。借此,本发明能够在Android平台上支持多语音通道功能,从而实现多模/双模移动终端的多路语音在Android平台上正常工作。
文档编号H04L29/08GK101964817SQ201010292148
公开日2011年2月2日 申请日期2010年9月25日 优先权日2010年9月25日
发明者吴超, 高炜 申请人:宇龙计算机通信科技(深圳)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1