一种基于安卓系统的应用管理方法及其装置制造方法

文档序号:6547423阅读:114来源:国知局
一种基于安卓系统的应用管理方法及其装置制造方法
【专利摘要】本发明提供一种基于安卓系统的应用管理方法及其装置,所述方法包括如下步骤:在子窗口内接收用户的应用启动指令;依据所述应用启动指令,为相应子窗口内待启动的应用实例分配独立的系统资源;利用所述独立的系统资源在所述子窗口对应的屏幕区域内启动并运行所述应用启动指令对应的应用实例。所述装置包括与所述方法对应的模块,可实现用户同时使用一个终端应用的多个实例的需求。
【专利说明】一种基于安卓系统的应用管理方法及其装置

【技术领域】
[0001] 本发明涉及通信领域,尤其涉及一种基于安卓系统的应用方法及其装置。

【背景技术】
[0002] 随着装载有安卓(Android)系统的智能终端的普及,以及移动互联网时代的到 来,手机终端和平板电脑越来越成为个人的信息中心和娱乐中心。就安卓智能终端的发展 趋势来看,大屏幕、高分辨率、强劲的处理能力和存储能力的PC化终端越来越成为更多人 群的喜爱,这方面以大屏手机和平板电脑为代表。
[0003] 就目前手机的硬件配置水平而言,处理能力和计算能力已经和个人PC不相上下, 但是安卓系统提供的应用程序管理方法,从本质上说还是单任务机制,无法做到多个应用 程序或者说多个任务窗口在手机屏幕上同时显示并同时运行。然而从安卓智能终端的应用 场景来看,用户越来越多地希望能够在安卓系统终端上运行一个应用的多个实例,例如:
[0004] 需要同时调用两个计算器应用,对比两次计算的结果差异;需要同时调用两个图 库应用,方便用户同时查看两张图片,进行比对;需要同时登录同一个应用的两个帐号,t匕 如QQ,微博,微信等应用,方便两个帐号同时在线进行信息查看和收发;需要同时调用两个 文件管理器应用,进行不同文件夹下的文件对比和使用;需要同时调用两个短信应用,方便 用户把一条短信中的信息提取到另外一条正在编辑的短信中。
[0005] 安卓系统现有的这种应用程序管理方法,不仅难以满足用户在大屏幕终端上的应 用程序操作需求,而且对于目前终端越来越高的处理能力来说也是一种浪费,因为目前安 卓的这种单任务机制无法充分利用手机终端的处理能力。


【发明内容】

[0006] 有鉴于此,本发明提出一种基于安卓系统的应用管理方法及其装置,能够允许安 卓终端屏幕上多个任务窗口同时显示并同时运行。
[0007] 基于上述目的,本发明所提供的基于安卓系统的应用管理方法,包括如下步骤:
[0008] 在子窗口内接收用户的应用启动指令;
[0009] 依据所述应用启动指令,为相应子窗口内待启动的应用实例分配独立的系统资 源;
[0010] 利用所述独立的系统资源在所述子窗口对应的屏幕区域内启动并运行所述应用 启动指令对应的应用实例。
[0011] 可选的,在子窗口内接收用户的应用启动指令之前,还包括:
[0012] 对应于子窗口,生成独立运行应用实例所需的管理机制;
[0013] 所述管理机制包括应用程序层和应用程序框架层的管理机制。
[0014] 可选的,利用所述独立的资源启动并运行所述应用启动指令对应的应用实例的步 骤具体包括:通过应用管理服务Activity Manager Service维护所述相应子窗口内所启动 的应用实例的生命周期,并通过窗口管理服务Window Managerr Service独立管控所述相应 子窗口内所启动的应用实例的窗口消息队列。
[0015] 可选的,所述系统资源包括系统内存和系统缓存。
[0016] 可选的,依据所述应用启动指令,为相应子窗口内所启动的应用实例分配对应的 系统资源之前,还包括:
[0017] 判断所述应用启动指令所对应的应用实例是否是独占硬件设备的应用实例;当且 仅当判断结果为否时,执行所述应用启动指令,为相应子窗口内所启动的应用实例分配对 应的系统资源的步骤。
[0018] 可选的,判断所述应用启动指令所对应的应用实例是否是独占硬件设备的应用实 例的步骤具体包括:
[0019] 查询所述应用启动指令所对应的应用包名;
[0020] 判断所述应用包名是否在预设的名单中,若是,则输出判断结果指示所述应用启 动指令所对应的应用实例是独占硬件设备的应用实例。
[0021] 可选的,判断所述应用启动指令所对应的应用实例是否是独占硬件设备的应用实 例的步骤具体包括:
[0022] 判断所述应用启动指令所对应的应用包名启动时底层库的状态是否满足设定的 独占状态;若是,则输出判断结果指示所述应用启动指令所对应的应用实例是独占硬件设 备的应用实例。
[0023] 可选的,接收用户的应用启动指令之前,还包括如下步骤:
[0024] 将至少一个子窗口映射到与其对应虚拟设备上;
[0025] 所述虚拟设备维护至少一个能够为在该虚拟设备上运行的前台任务提供执行环 境的虚拟设备环境。
[0026] 进一步,本发明提供一种基于安卓系统的应用管理装置,包括:
[0027] 启动指令接收t吴块:用于在子窗口内接收用户的应用启动指令;
[0028] 资源分配模块:用于依据所述应用启动指令,为相应子窗口内待启动的应用实例 分配独立的系统资源;
[0029] 应用实例启动模块:用于利用所述独立的系统资源在所述子窗口对应的屏幕区域 内启动并运行所述应用启动指令对应的应用实例。
[0030] 可选的,所述装置还包括:
[0031] 管理虚拟模块:用于对应于子窗口,生成独立运行应用实例所需的管理机制;
[0032] 所述管理机制包括应用程序层和应用程序框架层的管理机制。
[0033] 可选的,所述应用实例启动模块还包括:
[0034] 生命周期管理单元:通过应用管理服务Activity Manager Service维护所述相应 子窗口内所启动的应用实例的生命周期;
[0035] 消息队列管控单兀:用于通过窗口管理服务Window Managerr Service独立管控 所述相应子窗口内所启动的应用实例的窗口消息队列。
[0036] 可选的,所述系统资源包括系统内存和系统缓存。
[0037] 可选的,所述装置还包括:
[0038] 判断模块:用于判断所述应用启动指令所对应的应用实例是否是独占硬件设备的 应用实例;
[0039] 当且仅当判断模块输出的判断结果指示所述应用启动指令所对应的应用实例不 是独占硬件设备的应用实例时,所述应用启动模块启动所述应用启动指令所对应的应用实 例。
[0040] 可选的,所述判断模块具体包括:
[0041] 包名查询单元:用于查询所述应用启动指令所对应的应用包名;
[0042] 包名判断单元:用于判断所述应用包名是否在预设的名单中,若是,则输出判断结 果指示所述应用启动指令所对应的应用实例是独占硬件设备的应用实例。
[0043] 可选的,所述判断模块具体包括:
[0044] 底层库判断单元:用于判断所述应用启动指令所对应的应用包名启动时底层库的 状态是否满足设定的独占状态;若是,则输出判断结果指示所述应用启动指令所对应的应 用实例是独占硬件设备的应用实例。
[0045] 可选的,还包括:
[0046] 子窗口映射模块:用于将子窗口映射到与其对应的虚拟设备上;
[0047] 所述虚拟设备维护至少一个能够为在该虚拟设备上运行的前台任务提供执行环 境的虚拟设备环境。
[0048] 本发明提供的基于安卓系统的应用管理方法及其装置,在终端屏幕的子窗口中利 用独立分配的资源,在对应的屏幕区域中启动并运行用户的应用启动指令所对应的应用实 例,可实现一个安卓系统的应用在安卓终端上以个多实例同时运行,当用户需要进行同时 调用两个图库应用、同时登陆一个应用的两个账号、同时调用两个文件管理器应用、同时调 用两个短信应用等操作时,本发明提供的方法允许用户在同一个安卓系统终端上启动并调 用同一个应用的两个或两个以上的实例,满足了用户的需求,提高了安卓终端屏幕以及处 理器处理能力的利用率。

【专利附图】

【附图说明】
[0049] 图1为本发明实施例的基于安卓系统的应用管理方法流程示意图;
[0050] 图2为本发明一种实施例的安卓系统终端呈现多实例时的界面示意图;
[0051] 图3为本发明一种实施例的基于安卓系统的应用管理方法流程示意图;
[0052] 图4为本发明实施例的基于安卓系统的应用管理装置结构示意图。

【具体实施方式】
[0053] 为了给出有效的实现方案,本发明实施例提供了以下实施例,以下结合说明书附 图对本发明的实施例进行说明。
[0054] 首先,本发明提供一种基于安卓系统的应用管理方法,包括如下步骤:
[0055] 在子窗口内接收用户的应用启动指令;
[0056] 依据所述应用启动指令,为相应子窗口内启动的应用实例分配独立的系统资源;
[0057] 利用所述独立的系统资源,在所述子窗口对应的屏幕区域内启动并运行所述应用 启动指令对应的应用实例。
[0058] 本发明提供的基于安卓系统的应用管理方法,在终端屏幕的子窗口中利用独立分 配的资源,在对应的屏幕区域中启动并运行用户的应用启动指令所对应的应用实例,可实 现一个安卓系统的应用在安卓终端上以个多实例同时运行,当用户需要进行同时调用两个 图库应用、同时登陆一个应用的两个账号、同时调用两个文件管理器应用、同时调用两个短 信应用等操作时,本发明提供的方法允许用户在同一个安卓系统终端上启动并调用同一个 应用的两个或两个以上的实例,满足了用户的需求,提高了安卓终端屏幕以及处理器处理 能力的利用率。
[0059] 在一些实施例中,所述基于安卓系统的应用管理方法包括如图1所示的步骤:
[0060] 步骤101 :在子窗口内接收用户的应用启动指令。
[0061] 作为一个实施例,所述子窗口包括可以在安卓终端部分屏幕区域显示的窗口。它 可以是与其它窗口之间具有子父关系的子窗口,也可以是与其它任意窗口之间都不存在子 父关系的子窗口。
[0062] 作为一个实施例,安卓系统终端上至少存在两个子窗口,且每个子窗口所运行的 应用实例为同一个安卓应用的应用实例。
[0063] 步骤102 :依据所述应用启动指令,为相应子窗口内待启动的应用实例分配独立 的系统资源。
[0064] 所述独立系统资源的分配,可通过框架层的资源管理服务(Resource Managerr Service)为所述应用实例申请独立的系统资源,从而可以保证同一个应用的多个实例在进 行系统资源调度时不互相干涉。
[0065] 步骤103 :利用所述独立的系统资源,在所述子窗口对应的屏幕区域内启动并运 行所述应用启动指令对应的应用实例。
[0066] 在一些实施例中,利用所述独立资源,在子窗口对应的屏幕区域内启动相应的 应用实例,并对所述相应的应用实例进行维护,单独管控所述相应的应用实例的创建 (Create)、暂停(Pause)、Resume (恢复)、退出(Quit)、销毁(Destroy)等状态,使得某一子 窗口对应的屏幕区域内的应用实例生命周期变化时,不会对其它子窗口对应的屏幕区域内 的应用实例生命周期状态造成影响。
[0067] 在一些实施例中,当终端屏幕存在多个子窗口时,这些子窗口可以是安卓终端屏 幕划分所形成的子窗口,如图2A所示的安卓终端屏幕201,包括屏幕201横向分割所形成 的两个子窗口,即图中所示的第一子窗口和第二子窗口,在所述第一子窗口中,运行第一实 例;在所述第二子窗口中,运行第二实例;每个子窗口对应于安卓终端屏幕的部分区域。在 如图2B所示的安卓终端屏幕202上,第一子窗口和第二子窗口为屏幕202纵向分割所形成 的子窗口。所述第一实例和第二实例可以是同一个安卓应用的实例,也可以是不同安卓应 用的实例。
[0068] 在其他实施例中,安卓系统终端上还可设置两个以上的子窗口,所有子窗口之间 不相互重叠,每个子窗口对应于安卓屏幕上部分区域。
[0069] 在一些实施例中,依据所述应用启动指令,依据所述应用启动指令,为相应子窗口 内启动的应用实例分配独立的系统资源之前,还包括:
[0070] 对应于每个应用实例,生成其运行所需的管理机制;
[0071] 所述管理机制包括应用程序层和应用程序框架层的管理机制。
[0072] 在上述实施例中,对应于一个应用实例,虚拟生成其运行所需的管理机制,使得每 个实例均对应一套管理机制,从而可实现多个实例之间生命周期的相互独立。
[0073] 在一些实施例中,所述应用程序层的管理机制至少包括:
[0074] 在一些实施例中,具体的,所述应用程序框架层的管理机制至少包括应用程序框 架层的显不管理服务Display Managerr Service、窗口管理服务Window Managerr Service、 应用管理服务Activity Managerr Service、传感服务Sensor Service、输入管理服务Input Managerr Service、输入法服务 Input Method Service、音频策略 Audio Policy。
[0075] 在上述实施例中,安卓系统应用的每一个子窗口均具有独立的管理机制,各自维 护相应实例的生命周期、资源调度、输入输出、存储控制等,将一台安卓系统终端虚拟为多 台安卓系统终端,允许安卓系统应用在各自的窗口同时运行。
[0076] 在一些实施例中,利用所述独立的资源启动并运行所述应用启动指令对应的应用 实例的步骤具体包括:通过应用管理服务维护所述相应子窗口内所启动的应用实例的生命 周期,并通过窗口管理服务Window Managerr Service独立管控所述相应子窗口内所启动的 应用实例的窗口消息队列。
[0077] 具体的,可通过应用管理服务维护相应的子窗口内所启动的应用实例的生命周 期。使得所有实例的生命周期相互独立,在一个实例状态发生变化时,不会引起另外一个实 例的状态变化。
[0078] 具体的,可通过窗口管理服务将相应实例呈现的子窗口进行单独维护,对每一个 子窗口维护一个窗口消息队列,所有窗口消息队列之间保持独立,从而保证一个实例对应 的子窗口状态变化不会影响到其它实例对应的子窗口。
[0079] 在一些实施例中,依据所述应用启动指令,为相应子窗口内所启动的应用实例分 配对应的资源之前,还包括:判断所述应用启动指令所对应的应用实例是否是独占硬件设 备的应用实例;当且仅当判断结果为否时,执行所述应用启动指令,为相应子窗口内所启动 的应用实例分配对应的系统资源的步骤。
[0080] 具体的,当确定所述启动指令所对应的应用实例为上述独占硬件设备的应用的实 例时,可在安卓终端一个子窗口中启动所述应用的实例,并通过资源锁保护冻结其余子窗 口,保证所述独占硬件设备的应用仅在一个子窗口中呈现,维护系统运行的稳定性。
[0081] 具体的,在另一些实施例中,当确定所述启动指令所对应的应用实例为独占硬件 设备的应用的实例时,可在应用实例启动过程中初始化底层硬件设备库时进行打断,使得 该启动指令所对应的应用的实例无法在安卓系统终端呈现多实例。
[0082] 由于安卓系统终端的某些应用启动时需要独占硬件资源,若多个实例同时呈现则 会引起硬件资源的抢占,如照相机应用、摄像机应用、手电筒应用等,最好应避免这种应用 的多个实例同时启动运行。因此,在上述实施例中,首先判断待启动的实例是不是独占硬件 设备资源的应用实例。
[0083] 在一些实施例中,判断所述应用启动指令所对应的应用实例是否是独占硬件设备 的应用实例的步骤具体包括:
[0084] 查询所述应用启动指令所对应的应用包名;
[0085] 判断所述应用包名是否在预设的名单中,若是,则输出判断结果指示所述应用启 动指令所对应的应用实例是独占硬件设备的应用实例。
[0086] 上述实施例中,预设的名单,可以包含独占硬件设备的安卓系统终端内置应用的 启动包名。
[0087] 在一些实施例中,判断所述应用启动指令所对应的应用实例是否是独占硬件设备 的应用实例的步骤具体包括:
[0088] 判断所述应用启动指令所对应的应用包名启动时底层库的状态是否满足设定的 独占状态;若是,则输出判断结果指示所述应用启动指令所对应的应用实例是独占硬件设 备的应用实例。
[0089] 对于用户在安卓系统终端安装的第三方应用,由于不可预知应用包名,因此在上 述实施例中使用底层库过滤的方式,当用户试图启动所述第三方应用时,通过查询底层库 状态判断该第三方应用是否为独占硬件设备的应用。
[0090] 在一些实施例中,接收用户的应用启动指令之前,还包括如下步骤:
[0091] 将子窗口映射到与其对应虚拟设备上;
[0092] 所述虚拟设备维护至少一个能够为在该虚拟设备上运行的前台任务提供执行环 境的虚拟设备环境。
[0093] 在上述实施例中,将子窗口映射到与其对应的虚拟设备上,使得安卓系统终端上 能够多个任务同时运行,最大限度地发挥了硬件资源的作用,提高了硬件资源的使用效率。 [0094] 在一些实施例中,假设在安卓终端设置两个子窗口,在每个子窗口中分别运行安 卓系统应用的实例,则本发明提供的基于安卓系统的应用管理方法包括如图3所示的步 骤:
[0095] 步骤301 :将两个子窗口分别映射到与其对应虚拟设备上。
[0096] 步骤302 :对应于每个子窗口,生成独立运行应用实例所需的管理机制。
[0097] 步骤303 :在一个子窗口内接收用户的应用启动指令。
[0098] 步骤304 :判断上一步骤中接收的应用启动指令所对应的应用实例是否是独占硬 件设备的应用实例,若否,进入步骤305。
[0099] 步骤305 :依据所述应用启动指令,为所述一个子窗口内待启动的应用实例分配 独立的系统资源。
[0100] 步骤306 :利用所述独立的系统资源在所述子窗口对应的屏幕区域内启动并运行 所述应用启动指令对应的应用实例。
[0101] 步骤307 :在另一个子窗口内接收用户的应用启动指令。
[0102] 步骤308 :判断上一步骤中接收的应用启动指令所对应的应用实例是否是独占硬 件设备的应用实例,若否,进入步骤309。
[0103] 步骤309 :依据所述应用启动指令,为相应子窗口内待启动的应用实例分配独立 的系统资源。
[0104] 步骤310 :利用所述独立的系统资源在所述另一个子窗口对应的屏幕区域内启动 并运行所述应用启动指令对应的应用实例。
[0105] 在其它实施例中,安卓系统终端所设置的子窗口可以是三个或更多个。
[0106] 从上面所述可以看出,本发明提供的基于安卓系统的应用管理方法,为子窗口内 待启动的应用实例分配独立的系统资源,使得安卓终端多个子窗口内启动的应用实例可以 独立运行,从而能够实现一个安卓应用在安卓系统终端同时呈现多个实例,满足了用户在 安卓系统终端同时运行一个应用的多个实例的需求,同时提高了安卓系统终端的处理能力 利用率。
[0107] 进一步,本发明还提供一种基于安卓系统的应用管理装置,结构如图4所示,包 括:
[0108] 启动指令接收t旲块401 :用于在子窗口内接收用户的应用启动指令;
[0109] 资源分配模块402:用于依据所述应用启动指令,为相应子窗口内待启动的应用 实例分配独立的系统资源;
[0110] 应用实例启动模块403:用于利用所述独立的系统资源在所述子窗口对应的屏幕 区域内启动并运行所述应用启动指令对应的应用实例。
[0111] 本发明所提供的基于安卓系统的应用管理装置,设有资源分配模块,在终端屏幕 的子窗口中利用独立分配的资源,从而允许在对应的屏幕区域中启动并运行用户的应用 启动指令所对应的应用实例,可实现一个安卓系统的应用在安卓终端上以个多实例同时运 行,当用户需要进行同时调用两个图库应用、同时登陆一个应用的两个账号、同时调用两个 文件管理器应用、同时调用两个短信应用等操作时,本发明提供的方法允许用户在同一个 安卓系统终端上启动并调用同一个应用的两个或两个以上的实例,满足了用户的需求,提 高了安卓终端屏幕以及处理器处理能力的利用率。
[0112] 在一些实施例中,所述装置还包括:
[0113] 管理虚拟模块:用于对应于子窗口,生成独立运行应用实例所需的管理机制;
[0114] 所述管理机制包括应用程序层和应用程序框架层的管理机制。
[0115] 在一些实施例中,所述应用实例启动模块还包括:
[0116] 生命周期管理单元:通过应用管理服务Activity Manager Service维护所述相应 子窗口内所启动的应用实例的生命周期;
[0117] 消息队列管控单兀:用于通过窗口管理服务Window Managerr Service独立管控 所述相应子窗口内所启动的应用实例的窗口消息队列。
[0118] 在一些实施例中,所述系统资源包括系统内存和系统缓存。
[0119] 在一些实施例中,所述还包括:
[0120] 过滤判断模块:用于判断所述应用启动指令所对应的应用实例是否是独占硬件设 备的应用头例;
[0121] 当且仅当判断模块输出的判断结果指示所述应用启动指令所对应的应用实例不 是独占硬件设备的应用实例时,所述应用启动模块启动所述应用启动指令所对应的应用实 例。
[0122] 在一些实施例中,所述过滤判断模块具体包括:
[0123] 包名查询单元:用于查询所述应用启动指令所对应的应用包名;
[0124] 包名判断单元:用于判断所述应用包名是否在预设的名单中,若是,则输出判断结 果指示所述应用启动指令所对应的应用实例是独占硬件设备的应用实例。
[0125] 在一些实施例中,所述过滤判断模块具体包括:
[0126] 底层库判断单元:用于判断所述应用启动指令所对应的应用包名启动时底层库的 状态是否满足设定的独占状态;若是,则输出判断结果指示所述应用启动指令所对应的应 用实例是独占硬件设备的应用实例。
[0127] 在一些实施例中,所述装置还包括:
[0128] 子窗口映射模块:用于将子窗口映射到与其对应的虚拟设备上;
[0129] 所述虚拟设备维护至少一个能够为在该虚拟设备上运行的前台任务提供执行环 境的虚拟设备环境。
[0130] 在本发明的一种具体实施例中,假设在安卓终端设置两个子窗口,在每个子窗口 中分别运行安卓系统应用的实例,所述基于安卓系统的应用管理装置包括如下结构:
[0131] 子窗口映射模块:用于将两个子窗口映射到与其对应的虚拟设备上。
[0132] 管理虚拟模块:用于对应于每一个子窗口,生成独立运行应用实例所需的管理机 制。
[0133] 第一启动指令接收模块:用于在一个子窗口内接收用户的应用启动指令。
[0134] 第一过滤判断模块:用于判断所述第一启动指令接收模块接收到的应用启动指令 所对应的应用实例是否是独占硬件设备的应用实例。
[0135] 第一资源分配模块:用于当所述第一过滤判断模块确定所述应用启动指令所对应 的应用实例不是独占硬件设备的应用实例时,依据所述应用启动指令,为所述一个子窗口 内待启动的应用实例分配独立的系统资源。
[0136] 第一应用实例启动模块:用于利用所述第一资源分配模块分配的独立的系统资 源,在所述一个子窗口对应的屏幕区域内启动并运行相应的应用启动指令对应的应用实 例。
[0137] 第二启动指令接收模块:用于在另一个子窗口内接收用户的应用启动指令。
[0138] 第二过滤判断模块:用于判断所述第二启动指令接收模块接收到的应用启动指令 所对应的应用实例是否是独占硬件设备的应用实例。
[0139] 第二资源分配模块:用于当所述第二过滤判断模块确定所述应用启动指令所对应 的应用实例不是独占硬件设备的应用实例时,依据所述应用启动指令,为所述另一个子窗 口内待启动的应用实例分配独立的系统资源。
[0140] 第二应用实例启动模块:用于利用所述第二资源分配模块分配的独立的系统资 源,在所述另一个子窗口对应的屏幕区域内启动并运行相应的应用启动指令对应的应用实 例。
[0141] 从上面所述可以看出,本发明提供的基于安卓系统的应用管理装置,设有资源分 配模块,为子窗口内待启动的应用实例分配独立的系统资源,使得安卓终端多个子窗口内 启动的应用实例可以独立运行,从而能够实现一个安卓应用在安卓系统终端同时呈现多个 实例,满足了用户在安卓系统终端同时运行一个应用的多个实例的需求,同时提高了安卓 系统终端的处理能力利用率。
[0142] 应当理解,本说明书所描述的多个实施例仅用于说明和解释本发明,并不用于限 定本发明。并且在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
[0143] 显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精 神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围 之内,则本发明也意图包含这些改动和变型在内。
【权利要求】
1. 一种基于安卓系统的应用管理方法,其特征在于,包括如下步骤: 在子窗口内接收用户的应用启动指令; 依据所述应用启动指令,为相应子窗口内待启动的应用实例分配独立的系统资源; 利用所述独立的系统资源在所述子窗口对应的屏幕区域内启动并运行所述应用启动 指令对应的应用实例。
2. 根据权利要求1所述的方法,其特征在于,在子窗口内接收用户的应用启动指令之 前,还包括: 对应于子窗口,生成独立运行应用实例所需的管理机制; 所述管理机制包括应用程序层和应用程序框架层的管理机制。
3. 根据权利要求2所述的方法,其特征在于,利用所述独立的资源启动并运行所述 应用启动指令对应的应用实例的步骤具体包括:通过应用管理服务Activity Manager Service维护所述相应子窗口内所启动的应用实例的生命周期,并通过窗口管理服务 Window Managerr Service独立管控所述相应子窗口内所启动的应用实例的窗口消息队列。
4. 根据权利要求1所述的方法,其特征在于,所述系统资源包括系统内存和系统缓存。
5. 根据权利要求1所述的方法,其特征在于,依据所述应用启动指令,为相应子窗口内 所启动的应用实例分配对应的系统资源之前,还包括: 判断所述应用启动指令所对应的应用实例是否是独占硬件设备的应用实例;当且仅当 判断结果为否时,执行所述应用启动指令,为相应子窗口内所启动的应用实例分配对应的 系统资源的步骤。
6. 根据权利要求5所述的方法,其特征在于,判断所述应用启动指令所对应的应用实 例是否是独占硬件设备的应用实例的步骤具体包括: 查询所述应用启动指令所对应的应用包名; 判断所述应用包名是否在预设的名单中,若是,则输出判断结果指示所述应用启动指 令所对应的应用实例是独占硬件设备的应用实例。
7. 根据权利要求5所述的方法,其特征在于,判断所述应用启动指令所对应的应用实 例是否是独占硬件设备的应用实例的步骤具体包括: 判断所述应用启动指令所对应的应用包名启动时底层库的状态是否满足设定的独占 状态;若是,则输出判断结果指示所述应用启动指令所对应的应用实例是独占硬件设备的 应用实例。
8. 根据权利要求1-7中任意一项所述的方法,其特征在于,接收用户的应用启动指令 之前,还包括如下步骤: 将至少一个子窗口映射到与其对应虚拟设备上; 所述虚拟设备维护至少一个能够为在该虚拟设备上运行的前台任务提供执行环境的 虚拟设备环境。
9. 一种基于安卓系统的应用管理装置,其特征在于,包括: 启动指令接收模块:用于在子窗口内接收用户的应用启动指令; 资源分配模块:用于依据所述应用启动指令,为相应子窗口内待启动的应用实例分配 独立的系统资源; 应用实例启动模块:用于利用所述独立的系统资源在所述子窗口对应的屏幕区域内启 动并运行所述应用启动指令对应的应用实例。
10. 根据权利要求9所述的装置,其特征在于,所述装置还包括: 管理虚拟模块:用于对应于子窗口,生成独立运行应用实例所需的管理机制; 所述管理机制包括应用程序层和应用程序框架层的管理机制。
11. 根据权利要求10所述的装置,其特征在于,所述应用实例启动模块还包括: 生命周期管理单元:通过应用管理服务Activity Manager Service维护所述相应子窗 口内所启动的应用实例的生命周期; 消息队列管控单元:用于通过窗口管理服务Window Managerr Service独立管控所述 相应子窗口内所启动的应用实例的窗口消息队列。
12. 根据权利要求9所述的装置,其特征在于,所述系统资源包括系统内存和系统缓 存。
13. 根据权利要求9所述的装置,其特征在于,还包括: 判断模块:用于判断所述应用启动指令所对应的应用实例是否是独占硬件设备的应用 实例; 当且仅当判断模块输出的判断结果指示所述应用启动指令所对应的应用实例不是独 占硬件设备的应用实例时,所述应用启动模块启动所述应用启动指令所对应的应用实例。
14. 根据权利要求13所述的装置,其特征在于,所述判断模块具体包括: 包名查询单元:用于查询所述应用启动指令所对应的应用包名; 包名判断单元:用于判断所述应用包名是否在预设的名单中,若是,则输出判断结果指 示所述应用启动指令所对应的应用实例是独占硬件设备的应用实例。
15. 根据权利要求13所述的装置,其特征在于,所述判断模块具体包括: 底层库判断单元:用于判断所述应用启动指令所对应的应用包名启动时底层库的状态 是否满足设定的独占状态;若是,则输出判断结果指示所述应用启动指令所对应的应用实 例是独占硬件设备的应用实例。
16. 根据权利要求9-15中任意一项所述的装置,其特征在于,还包括: 子窗口映射模块:用于将子窗口映射到与其对应的虚拟设备上; 所述虚拟设备维护至少一个能够为在该虚拟设备上运行的前台任务提供执行环境的 虚拟设备环境。
【文档编号】G06F9/44GK104090746SQ201410220241
【公开日】2014年10月8日 申请日期:2014年5月22日 优先权日:2014年5月22日
【发明者】刘小锐, 徐明良 申请人:中兴通讯股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1