一种利用Linux应用在Android系统中运行的方法及装置的制作方法

文档序号:6600179阅读:170来源:国知局
专利名称:一种利用Linux应用在Android系统中运行的方法及装置的制作方法
技术领域
本发明涉及一种计算机系统应用技术领域,尤其涉及一种基于Android系统的 Linux应用方法及装置。
背景技术
Android是Google开发的基于Linux平台的开源手机操作系统,它包括操作系 统、用户界面和应用程序等移动电话工作所需的全部软件,它采用了软件堆层(software stack,又名软件叠层)的架构,主要分为三部分底层以Linux核心为基础,由c语言开发, 只提供基本功能。中间层包括函数库Library和虚拟机Virtual Machine,由C+开发。最 上层是各种应用软件,包括通话程序,短信程序等,应用软件则由各公司自行开发,以java 编与。图3为Linux应用模块在Linux系统中能够正常运行示意图,如图3所示。而 Android系统只提供了 Java的UI框架,不能做到将Linux用户界面应用的用户界面纳入到 自己的界面体系中,致使Linux用户界面应用无法在其系统里正常运行。图4为现有Linux应用模块在Android系统中运行示意图,如图4所示,当Linux 用户界面应用在Android系统中运行时,由于Android系统接管了(尽管不是全部)系统 显示和事件传输,它控制的显示界面将覆盖Linux应用程序的显示界面,使得后者在大多 数情况下无法正常显示,事件信息也由Android系统接收而无法正确传递到Linux应用程 序。Linux应用在Android系统上运行时,其显示区域游离在Android系统控制之外, 屏幕显示混乱,且因用户事件被Android系统拦截因而不能正常工作。

发明内容
为了解决现有技术存在的不足,本发明的目的在于提供一种实现Linux应用在 Android系统中运行的方法及装置,利用Android应用代理处理模块创建共享显示区域作 为Linux用户事件处理结果的共享显示区,显示界面由该Android应用代理处理模块统一 管理,同时将接收的Linux用户事件转发给Linux应用处理模块进行处理,因此,Linux应 用将能够在Android系统中正常工作。为实现上述目的,本发明提供的一种Li mix应用在Androi d系统中运行的方法, 该方法包括以下步骤1) Android应用代理处理模块创建共享显示区;2) Linux应用处理模块进行显示配置;3)对用户事件进行处理,并将用户界面信息发送给显示模块进行显示。为实现上述目的,本发明还提供一种Linux应用在Android系统中运行的装置,该 装置包括Android应用代理处理模块,Linux应用处理模块,显示模块,Linux系统模块和 Android系统模块,其中所述Android应用代理处理模块,连接所述Android系统模块、Linux应用处 理模块;生成共享显示区,并将共享显示信息发送给所述Linux应用处理模块;接收所述Android系统模块发送的用户事件,并将所述用户事件发送给Linux应用处理模块;所述Linux应用处理模块,接收所述Android应用代理处理模块发送的共享显示 信息和用户事件,并进行显示配置,对所述用户事件进行处理,并将用户界面信息发送给显 示模块。显示模块,接收所述Linux应用处理模块或所述Android应用代理处理模块发送 的用户界面信息并进行显示;所述Linux系统模块,接收用户事件,并将其转发给所述Android系统模块;所述Android系统模块,将接收的用户事件转发给所述Android应用代理处理模 块。本发明具有显著的优点和技术效果,采用Android应用代理处理模块创建共享显 示区域作为Linux用户事件处理结果的共享显示区,Linux系统的用户事件和Android系 统的用户事件由Android应用代理处理模块统一管理,使得Linux应用能够在Android系 统中正常运行。本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变 得显而易见,或者通过实施本发明而了解。


附图用来提供对本发明的进一步理解,并且构成说明书的一部分,并与本发明的 实施例一起,用于解释本发明,并不构成对本发明的限制。在附图中图1为根据本发明的Linux应用在Android系统中运行的方法流程图;图2为根据本发明的Linux应用在Android系统中运行的装置架构示意图;图3为Linux应用模块在Linux系统中能够正常运行示意图;图4为现有Linux应用模块在Android系统中运行示意图。
具体实施例方式以下结合附图对本发明的优选实施例进行说明,应当理解,此处所描述的优选实 施例仅用于说明和解释本发明,并不用于限定本发明。图1为根据本发明的Linux应用在Android系统中运行的方法流程图,下面将参 考图1,对本发明的Linux应用在Android系统中运行的方法进行详细描述首先,在步骤101,Android应用代理处理模块创建一个能够显示Linux应用和 Android应用的共享显示区,并将形成的共享显示信息发送给Linux应用处理模块。共享 显示区的创立有两种方式,一种为Android应用代理处理模块开辟该区而后通知Linux应 用处理模块_后者将自己的显示指向这一区域,一种为双方共同使用Linux系统的默认显 示缓冲区framebuffer。这一共同显示区由Android应用代理处理模块以android, view. Surfaceview控件的形式予以控制;在步骤102,Linux应用处理模块接收Android应用代理处理模块发送的共享显示 信息,并根据该共享显示信息进行显示配置,如将显示指向该区域;在步骤103,Android应用代理处理模块接收来自Android系统模块的用户事件 通知信息,并将用户事件传送给Linux应用处理模块,相当于将用户事件转发,一般情况下Android应用代理处理模块不对这些用户事件进行处理;在步骤104,Linux应用处理模块对接收的用户事件进行处理,并将用户界面信息 发送给显示模块,上述用户界面信息包括可在显示模块进行显示的用户事件处理过程和结 果{曰息。在步骤105,显示模块接收Linux应用处理模块发送的用户界面信息并进行显示。以上流程使得Linux应用处理模块在Android系统运行时感觉不到一个的代理 (Android应用代理处理模块)存在。为实现上述Linux应用在Andro i d系统中运行的方法,本发明还提供了一种Linux 应用在Android系统中运行的装置。图2为根据本发明的Linux应用在Android系统中运行的装置架构示意图,如图 2所示,本发明的Linux应用在Android系统中运行的装置,包括Android应用代理处理模 块201,Linux应用处理模块202,显示模块203,Linux系统模块204和Android系统模块 205,其中,Android应用代理处理模块201,连接Android系统模块205、Linux应用处理模块 202 ;生成共享显示区,并将共享显示信息发送给Linux应用处理模块202 ;接收Android系 统模块205发送的用户事件,并将用户事件转发给Linux应用处理模块202,此外,Android 应用代理处理模块201还具有处理用户事件的功能,如果接收的用户事件是Android用户 事件,Android应用代理处理模块201就对其进行处理(如前后台切换等),并将用户界面 信息发送给显示模块显示。Linux应用处理模块202,接收Android应用代理处理模块201发送的共享显示信 息和用户事件,进行显示配置,对用户事件进行处理,并将包含对用户事件处理过程和结果 的用户界面信息发送给显示模块203。显示模块203,分别接收Linux应用处理模块202和Android应用代理处理模块 201发送的用户界面信息并进行显示。Linux系统模块204,接收用户事件,并将用户事件通知信息发送给Android系统 模块205。Android系统模块205,接收Linux系统模块204发送的用户事件通知信息并将该 用户事件通知信息发送给Android应用代理处理模块201,或接收用户事件并将形成的用 户事件通知信息发送给Android应用代理处理模块201。本发明的Linux应用在Android系统中运行的方法及装置,采用Android应用代 理处理模块创建共享显示区域作为Linux用户事件处理结果的共享显示区,Linux用户事 件和Andro id用户事件处理结果的显示由该Android应用代理处理模块统一管理,同时 将接收的Linux用户事件转发给Linux应用处理模块进行处理,因此,Linux应用将能够在 Android系统中正常工作,其在Linux系统中效果相同。本领域普通技术人员可以理解以上所述仅为本发明的优选实施例而已,并不用 于限制本发明,尽管参照前述实施例对本发明进行了详细的说明,对于本领域的技术人员 来说,其依然可以对前述各实施例记载的技术方案进行修改,或者对其中部分技术特征进 行等同替换。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含 在本发明的保护范围之内。
权利要求
一种实现Linux应用在Android系统中运行的方法,该方法包括以下步骤1)Android应用代理处理模块创建共享显示区;2)Linux应用处理模块进行显示配置;3)对用户事件进行处理,并将用户界面信息发送给显示模块进行显示。
2.根据权利要求1所述的Linux应用在Android系统中运行的方法,其特征在于,所述 步骤2)是Linux应用处理模块根据Android应用代理处理模块发送的共享显示信息进行显示配置。
3.根据权利要求1所述的Linux应用在Android系统中运行的方法,其特征在于,所述 步骤3)进一步还包括以下步骤1)Android应用代理处理模块接收Android系统模块发送的用户事件,并将其转发给 Linux应用处理模块;2)Linux应用处理模块对用户事件进行处理,并按照显示配置将用户界面信息发送给 显示模块;3)显示模块对用户界面信息进行显示。
4.一种实现Linux应用在Android系统中运行的装置,包括Android应用代理处理模 块,Linux应用处理模块,显示模块,Linux系统模块和Android系统模块,其中所述Android应用代理处理模块,连接所述Android系统模块、Linux应用处理模块; 生成共享显示区,并将共享显示信息发送给所述Linux应用处理模块;接收所述Android系 统模块发送的用户事件,并将所述用户事件发送给Linux应用处理模块;所述Linux应用处理模块,接收所述Android应用代理处理模块发送的共享显示信息 和用户事件,并进行显示配置,对所述用户事件进行处理,并将用户界面信息发送给显示模 块。显示模块,接收所述Linux应用处理模块或所述Android应用代理处理模块发送的用 户界面信息并进行显示;所述Linux系统模块,接收用户事件,并将其转发给所述Android系统模块;所述Android系统模块,将接收的用户事件转发给所述Android应用代理处理模块。
5.根据权利要求4所述的实现Linux应用在Android系统中运行的装置,其特征在于, 所述Android应用代理处理模块对接收的Android用户事件进行处理,并将用户界面信息 发送给所述显示模块。
全文摘要
一种实现Linux应用在Android系统中运行的方法及装置,首先,Android应用代理处理模块创建共享显示区,Linux应用处理模块(即Linux应用)根据创建的共享显示区进行显示配置,以做到共享显示区,然后,Android应用代理处理模块将接收的用户事件转发给Linux应用处理模块进行处理,Linux应用处理模块将处理后生成的用户界面信息发送给显示模块进行显示。本发明采用Android应用代理处理模块创建共享显示区域作为Linux用户事件处理结果的共享显示区,Linux系统的用户事件和Android系统的用户事件由Android应用代理处理模块统一管理,使得Linux应用能够在Android系统中正常运行。
文档编号G06F9/44GK101876906SQ20101013943
公开日2010年11月3日 申请日期2010年3月31日 优先权日2010年3月31日
发明者薛飞, 赵非 申请人:北京播思软件技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1