首页> 中国专利> 一种web应用程序打包方法、启动方法及相应装置

一种web应用程序打包方法、启动方法及相应装置

摘要

本发明公开了一种web应用程序打包方法、启动方法及相应装置,该打包方法包括获取运行平台工程包及应用程序代码文件,运行平台工程包包括运行平台判断文件,加载运行平台工程包及应用程序代码文件,将加载完成后的运行平台工程包及应用程序代码文件进行打包。将web应用程序在各个运行平台所需的文件打包在一起,可以通过运行平台判断文件来判断web应用程序所需的运行平台,可以避免为每个运行平台进行打包时分别建立对应的应用工程,减少了应用程序打包的繁琐步骤,提高了不同运行平台打包的效率。

著录项

  • 公开/公告号CN105760176A

    专利类型发明专利

  • 公开/公告日2016-07-13

    原文格式PDF

  • 申请/专利号CN201610147467.8

  • 发明设计人 张百珂;

    申请日2016-03-15

  • 分类号G06F9/44;G06F9/445;

  • 代理机构北京同达信恒知识产权代理有限公司;

  • 代理人黄志华

  • 地址 266071 山东省青岛市市南区江西路11号

  • 入库时间 2023-06-19 00:05:15

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2019-06-07

    授权

    授权

  • 2016-08-10

    实质审查的生效 IPC(主分类):G06F9/44 申请日:20160315

    实质审查的生效

  • 2016-07-13

    公开

    公开

说明书

技术领域

本发明实施例涉及应用程序技术领域,尤其涉及一种web应用程序打包方 法、启动方法及相应装置。

背景技术

常规web应用程序打包方式中每个应用程序都需要在特定的平台上创建 一个工程,在常规的编译模式下每个应用程序除了使用了与应用层相关的代 码外还包括所有与运行平台架构相关的代码,这样就需要导入web运行平台库 工程包。首先由web运行平台提供常规模式的库文件包xEmbed_library工程包, 里面包含xEmbed_core_library.jar库,包含有与运行平台相关的库包。用户编 译该工程可以生成xEmbed_librar.jar库文件供生成应用程序使用。

由于生成不同平台的应用程序,需要在不同的平台环境分别创建工程,比 如Android,IoS等则需要分别在Android以及IoS平台上创建工程编译生成不 同平台的应用,这样生成的应用程序在每个平台都需要单独创建一个工程,造 成资源浪费,且步骤繁琐。

发明内容

本发明实施例提供一种web应用程序打包方法、启动方法及相应装置,用 以减少应用程序打包的繁琐步骤,提高不同平台打包的效率。

本发明实施例提供的一种web应用程序打包方法,包括:

获取运行平台工程包及应用程序代码文件,所述运行平台工程包包括运行 平台判断文件,所述运行平台判断文件用于确定应用程序的运行平台;

加载所述运行平台工程包及应用程序代码文件;

将加载完成后的所述运行平台工程包及应用程序代码文件进行打包。

可选地,所述运行平台工程包还包括各运行平台的web运行平台库文件、 各运行平台的运行环境文件、各运行平台的配置文件;

所述加载所述运行平台工程包及应用程序代码文件,包括:

加载所述各运行平台的web运行平台库文件、所述各运行平台的运行环境 文件、所述运行平台判断文件、所述各运行平台的配置文件以及所述应用程序 代码文件。

可选地,所述各运行平台的配置文件为一个或多个默认的配置文件;

若所述默认的配置文件为一个,则所述默认的配置文件中包括各运行平台 对应的应用程序的默认配置参数;

若所述默认的配置文件为多个,则每个默认的配置文件与至少一个运行平 台对应,所述默认的配置文件包括应用程序在对应的运行平台上的默认配置参 数。

可选地,所述各运行平台的配置文件通过如下方式生成括:

接收应用程序配置指令,所述应用程序配置指令包括应用程序的配置参 数;

根据所述应用程序的配置参数,修改默认的各运行平台的配置文件。

可选地,所述加载所述各运行平台的web运行平台库文件、所述各运行平 台的运行环境文件、所述运行平台判断文件、所述各运行平台的配置文件以及 所述应用程序代码文件,包括:

按照设定顺序加载所述各运行平台的web运行平台库文件、所述各运行平 台的运行环境文件、所述运行平台判断文件、所述各运行平台的配置文件以及 所述应用程序代码文件。

相应地,本发明实施例还提供了一种web应用程序启动方法,包括:

获取打包的应用程序,所述打包的应用程序包括各运行平台的web运行平 台库文件、各运行平台的运行环境文件、运行平台判断文件、各运行平台的配 置文件以及应用程序代码文件;

运行所述运行平台判断文件,并接收所述运行平台判断文件反馈的判断结 果;

根据所述运行平台判断文件反馈的判断结果,从所述打包的应用程序中加 载所述判断结果对应的运行平台环境文件,并根据所述判断结果对应的运行平 台的配置文件调用所述判断结果对应的运行平台的web运行平台库文件启动所 述待启动应用程序。

相应地,本发明实施例还提供了一种web应用程序打包装置,包括:

获取单元,用于获取运行平台工程包及应用程序代码文件,所述运行平台 工程包包括运行平台判断文件,所述运行平台判断文件用于确定应用程序的运 行平台;

加载单元,用于加载所述运行平台工程包及应用程序代码文件;

打包单元,用于将加载完成后的所述运行平台工程包及应用程序代码文件 进行打包。

可选地,所述运行平台工程包还包括各运行平台的web运行平台库文件、 各运行平台的运行环境文件、各运行平台的配置文件;

所述加载单元具体用于:

加载所述各运行平台的web运行平台库文件、所述各运行平台的运行环境 文件、所述运行平台判断文件、所述各运行平台的配置文件以及所述应用程序 代码文件。

可选地,所述各运行平台的配置文件为一个或多个默认的配置文件;

若所述默认的配置文件为一个,则所述默认的配置文件中包括各运行平台 对应的应用程序的默认配置参数;

若所述默认的配置文件为多个,则每个默认的配置文件与至少一个运行平 台对应,所述默认配置文件包括应用程序在对应的运行平台上的默认配置参 数。

可选地,所述获取单元具体用于:

接收应用程序配置指令,所述应用程序配置指令包括应用程序的配置参 数;

根据所述应用程序的配置参数,修改默认的各运行平台的配置文件。

可选地,所述加载单元具体用于:

按照设定顺序加载所述各运行平台的web运行平台库文件、所述各运行平 台的运行环境文件、所述运行平台判断文件、所述各运行平台的配置文件以及 所述应用程序代码文件。

相应地,本发明实施例还提供了一种web应用程序启动装置,包括:

获取单元,用于获取打包的应用程序,所述打包的应用程序包括各运行平 台的web运行平台库文件、各运行平台的运行环境文件、运行平台判断文件、 各运行平台的配置文件以及应用程序代码文件;

接收单元,用于运行所述运行平台判断文件,并接收所述运行平台判断文 件反馈的判断结果;

启动单元,用于根据所述运行平台判断文件反馈的判断结果,从所述打包 的应用程序中加载所述判断结果对应的运行平台环境文件,并根据所述判断结 果对应的运行平台的配置文件调用所述判断结果对应的运行平台的web运行平 台库文件启动所述待启动应用程序。

本发明实施例表明,获取运行平台工程包及应用程序代码文件,运行平台 工程包包括运行平台判断文件,加载运行平台工程包及应用程序代码文件,将 加载完成后的运行平台工程包及应用程序代码文件进行打包。将web应用程序 在各个运行平台所需的文件打包在一起,可以通过运行平台判断文件来判断 web应用程序所需的运行平台,可以避免为每个运行平台进行打包时分别建立 对应的应用工程,减少了应用程序打包的繁琐步骤,提高了不同运行平台打包 的效率。

附图说明

为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所 需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本发明的 一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下, 还可以根据这些附图获得其他的附图。

图1为本发明实施例提供的一种web应用程序打包方法的流程示意图;

图2为本发明实施例提供的一种web应用程序打包方法的流程示意图;

图3为本发明实施例提供的一种web应用程序打包方法的流程示意图;

图4为本发明实施例提供的一种web应用程序打包装置的结构示意图;

图5为本发明实施例提供的一种web应用程序打包装置的结构示意图。

具体实施方式

为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发 明作进一步地详细描述,显然,所描述的实施例仅仅是本发明一部分实施例, 而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做 出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。

由于当前智能操作系统上的web运行平台上的应用的编译方式实现较为复 杂,用户在不同的平台上打包生成应用时需要先在不同的运行平台上创建应用 工程(比如在Android平台上,需要创建一个Android工程),这样用户就会在 不同的平台上经过新建工程、运行、编译等整个过程。而本发明实施例提供的 web应用程序打包方法可以在不创建工程的前提下实现web应用在不同平台的 快速打包。

基于上述描述,图1示出了本发明实施例提供的一种web应用程序打包方 法的流程,该流程可以由web应用程序打包装置执行。

如图1所示,该流程具体包括:

步骤101,获取运行平台工程包及应用程序代码文件,所述运行平台工程 包包括运行平台判断文件。

步骤102,加载所述运行平台工程包及应用程序代码文件。

步骤103,将加载完成后的所述运行平台工程包及应用程序代码文件进行 打包。

上述方法流程中,该运行平台工程包还包括各运行平台的web运行平台库 文件、各运行平台的运行环境文件、各运行平台的配置文件。其中各运行平台 的配置文件包括了用于配置应用程序在启动时所需要的启动画面、启动主页、 启动的应用名称等启动参数。该各运行平台的配置文件可以是一个或多个默认 的配置文件,若该默认的配置文件为一个时,则所述默认的配置文件中包括各 运行平台对应的应用程序的默认配置参数。若该默认的配置文件为多个,则每 个默认的配置文件与至少一个运行平台对应,该默认的配置文件包括应用程序 在对应的运行平台上的默认配置参数。

为了更方便的管理应用程序的配置文件,还可以接收应用程序配置指令, 该应用程序配置指令包括应用程序的配置参数,然后根据该应用程序的配置参 数,修改默认的个运行平台的配置文件。

举例来说,用户希望修改应用程序在Andriod运行平台运行时的启动画面, 则接收该应用程序配置指令,此时,应用程序配置指令中包括了用户指定的应 用程序启动时的图片,然后在Andriod运行平台的运行环境文件中查找到该图 片,并在配置文件中修改启动画面所需图片的路径,完成配置文件的修改。

各运行平台的运行环境文件是与各运行平台交互的文件,应用程序通过加 载该运行环境文件与其对应的运行平台进行交互,以便该应用程序可以在该运 行平台上运行。比如:在Andriod运行平台上运行时,应用程序需要Andriod 运行平台的运行环境文件中包括了asset文件夹、libs文件夹、src文件夹。

运行平台判断文件用于确定应用程序的运行平台,是对应用程序所要运行 的平台进行判断,以便在启动应用时知道需要加载哪个运行平台的运行环境文 件。如在启动时,运行平台判断文件反馈的判断结果是IOS运行平台,则可以 加载IOS运行平台的运行环境文件,从而使得应用程序可以与IOS运行平台进 行交互。

上述各运行平台的web运行平台库文件是已经编译完成的文件,每个运行 平台对应一个web运行平台库文件,运行平台库文件是供应用程序启动时调用 的。

举例来说,该web运行平台库文件可以在xEmbed_core_library文件夹中。 xEmbed_core_library中含有所有与运行平台相关的库文件。其具体的内容包含: org.chromium.ui.resources,org.chromium.ui.gfx,org.chromium.ui.gl等与平台相 关的内容包,如下所示:

org.chromium.base

org.chromium.base.annotations

org.chromium.base.library_loader

org.chromium.base.metrics

org.chromium.blink_public.web

org.chromium.components.navigation_interception

org.chromium.components.web_contents_delegate_android

org.chromium.content

org.chromium.content_public.browser

org.chromium.content_public.browser.navigation_controller

org.chromium.content_public.browser.readback_types

org.chromium.content_public.common

org.chromium.content.app

org.chromium.content_public.browser

org.xwalk.core.internal

org.xwalk.core.internal.extension

org.xwalk.core.internal.extension.api

org.xwalk.core.internal.extension.api.contacts

org.xwalk.core.internal.extension.api.device_capabilities

org.xwalk.core.internal.extension.api.launchscreen

org.xwalk.core.internal.extension.api.messaging

org.xwalk.core.internal.extension.api.presentation

org.xwalk.core.internal.extensions

org.chromium.ui.gfx

org.chromium.ui.gl等文件。

具体的,上述加载运行平台工程包及应用程序代码可以通过下述实施方式 实现:

加载各运行平台的web运行平台库文件、各运行平台的运行环境文件、运 行平台判断文件、各运行平台的配置文件以及应用程序代码文件。优选地,为 了使得应用程序在打包后更好的运行,可以按照设定顺序加载各运行平台的 web运行平台库文件、各运行平台的运行环境文件、运行平台判断文件、各运 行平台的配置文件以及应用程序代码文件。

具体的,如图2所示,该流程的具体步骤包括:

步骤201,修改配置文件。可以修改一个运行平台的配置文件,也可以修 改多个运行平台的配置文件。

步骤202,加载运行环境文件。将各运行平台的运行环境文件进行加载。

步骤203,加载web运行平台库文件。将各运行平台的web运行平台库文 件进行加载。

步骤204,加载运行平台判断文件。

步骤205,应用程序代码文件。

步骤206,打包生成应用。在进行打包时,通过打包指令,如python make_apk.py--package=com.android.example--manifest=manifest.json。可以打包 生成应用。如打包生成androidTest.apk。

上述实施例表明,通过获取运行平台工程包及应用程序代码文件,运行平 台工程包包括运行平台判断文件,加载运行平台工程包及应用程序代码文件, 将加载完成后的运行平台工程包及应用程序代码文件进行打包。将web应用程 序在各个运行平台所需的文件打包在一起,可以通过运行平台判断文件来判断 web应用程序所需的运行平台,可以避免为每个运行平台进行打包时分别建立 对应的应用工程,减少了应用程序打包的繁琐步骤,提高了不同运行平台打包 的效率。

基于相同的技术构思,图2示出了本发明实施例提供的一种web应用程序 启动的流程,该流程可以由web应用程序启动装置执行。

如图3所示,该流程具体步骤包括:

步骤301,获取打包的应用程序,所述打包的应用程序包括各运行平台的 web运行平台库文件、各运行平台的运行环境文件、运行平台判断文件、各运 行平台的配置文件以及应用程序代码文件。

步骤302,运行所述运行平台判断文件,并接收所述运行平台判断文件反 馈的判断结果。

步骤303,根据所述运行平台判断文件反馈的判断结果,从所述打包的应 用程序中加载所述判断结果对应的运行平台环境文件,并根据所述判断结果对 应的运行平台的配置文件调用所述判断结果对应的运行平台的web运行平台库 文件启动所述待启动应用程序。

在上述方法流程中,该打包的应用程序是上述打包流程中提供的各运行平 台的web运行平台库文件、各运行平台的运行环境文件、运行平台判断文件、 各运行平台的配置文件以及应用程序代码文件。各文件已在上述实施例中描 述,在此不再赘述。

应用程序被安装在设备上时,首先启动打包的应用程序中的运行平台判断 文件,判断是运行在什么平台上。

举例来说,该运行平台判断文件的代码可以如下:

相应地,该运行平台判断文件返回的判断结果,具体实现方法如下:

if(Terminal.platform.android){

packageType=platform.android;

}elseif(Terminal.platform.iPhone){

packageType=platform.iPhone;

}。

在得到运行的是哪个运行平台之后,开始从打包的应用程序中加载判断结 果对应的运行平台环境文件,并根据判断结果对应的运行平台的配置文件调用 判断结果对应的运行平台的web运行平台库文件启动待启动应用程序,从而完 成应用程序的启动。

上述实施例表明,获取打包的应用程序,然后运行运行平台判断文件,并 接收运行平台判断文件反馈的判断结果,根据运行平台判断文件反馈的判断结 果,从打包的应用程序中加载判断结果对应的运行平台环境文件,并根据判断 结果对应的运行平台的配置文件调用判断结果对应的运行平台的web运行平台 库文件启动待启动应用程序。通过运行平台判断文件来判断web应用程序所需 的运行平台,可以使得打包的应用程序可以在各运行平台上运行,提高了打包 的应用程序的适用范围。

基于相同的技术构思,图4示出了本发明实施例提供的一种web应用程序 打包装置,该装置可以执行web应用程序打包的流程。

如图4所示,该装置具体包括:

获取单元401,用于获取运行平台工程包及应用程序代码文件,所述运行 平台工程包包括运行平台判断文件,所述运行平台判断文件用于确定应用程序 的运行平台;

加载单元402,用于加载所述运行平台工程包及应用程序代码文件;

打包单元403,用于将加载完成后的所述运行平台工程包及应用程序代码 文件进行打包。

优选地,所述运行平台工程包还包括各运行平台的web运行平台库文件、 各运行平台的运行环境文件、各运行平台的配置文件;

所述加载单元402具体用于:

加载所述各运行平台的web运行平台库文件、所述各运行平台的运行环境 文件、所述运行平台判断文件、所述各运行平台的配置文件以及所述应用程序 代码文件。

优选地,所述各运行平台的配置文件为一个或多个默认的配置文件;

若所述默认的配置文件为一个,则所述默认的配置文件中包括各运行平台 对应的应用程序的默认配置参数;

若所述默认的配置文件为多个,则每个默认的配置文件与至少一个运行平 台对应,所述默认配置文件包括应用程序在对应的运行平台上的默认配置参 数。

优选地,所述获取单元401具体用于:

接收应用程序配置指令,所述应用程序配置指令包括应用程序的配置参 数;

根据所述应用程序的配置参数,修改默认的各运行平台的配置文件。

优选地,所述加载单元402具体用于:

按照设定顺序加载所述各运行平台的web运行平台库文件、所述各运行平 台的运行环境文件、所述运行平台判断文件、所述各运行平台的配置文件以及 所述应用程序代码文件。

基于相同的技术构思,图5示出了本发明实施例提供的一种web应用程序 启动装置,该装置可以执行web应用程序启动的流程。

如图5所示,该装置具体包括:

获取单元501,用于获取打包的应用程序,所述打包的应用程序包括各运 行平台的web运行平台库文件、各运行平台的运行环境文件、运行平台判断文 件、各运行平台的配置文件以及应用程序代码文件;

接收单元502,用于运行所述运行平台判断文件,并接收所述运行平台判 断文件反馈的判断结果;

启动单元503,用于根据所述运行平台判断文件反馈的判断结果,从所述 打包的应用程序中加载所述判断结果对应的运行平台环境文件,并根据所述判 断结果对应的运行平台的配置文件调用所述判断结果对应的运行平台的web运 行平台库文件启动所述待启动应用程序。

本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产 品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和 /或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/ 或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入 式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算 机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一 个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设 备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中 的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个 流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使 得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处 理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个 流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基 本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要 求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。

显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发 明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及 其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号