应用程序的生成方法、装置、系统、设备和介质与流程

文档序号:17473844发布日期:2019-04-20 05:59阅读:177来源:国知局
应用程序的生成方法、装置、系统、设备和介质与流程

本申请涉及计算机技术领域,尤其涉及一种应用程序的生成方法、装置、系统、设备和计算机可读存储介质。



背景技术:

应用程序,是指为完成某项或多项特定工作的计算机程序,它运行在用户终端,可以和用户进行交互,具有可视的用户界面。

应用程序可以在线使用,也可以离线使用,同时应用程序支持消息推送、本地资源访问、调取等功能,这使得应用程序具有较好的交互体验。但是,应用程序的开发对开发者具有较高的要求,一方面要求开发者能够编写应用程序的界面生成源代码,另一方面要求开发者具备一定的开发技巧,能够基于编写应用程序的界面生成的源代码打包生成应用程序。

综上所述,目前应用程序的开发对开发者具有较高的要求,开发难度大。

申请内容

本申请实施例提供了一种应用程序的生成方法、装置、系统、设备和计算机可读存储介质,以降低应用程序的开发难度。

根据本申请实施例的第一方面,提供一种应用程序的生成方法,方法包括:

接收应用程序的创建指令和应用程序的配置信息;

接收用户编写的应用程序界面的源代码;

对源代码进行业务构建,生成应用程序的业务代码;

基于应用程序的业务代码、应用程序的配置信息及封装代码,打包生成应用程序。

根据本申请实施例的第二方面,提供一种应用程序的生成方法,方法包括:

接收应用程序的创建指令和应用程序的配置信息;

提供应用程序的界面编写环境;

接收用户在界面编写环境中编写的程序代码,生成应用程序的源代码;

提交应用程序的源代码给服务器;

接收服务器返回的基于应用程序的配置信息和应用程序的源代码业务构建生成的业务代码及封装代码打包生成的应用程序。

根据本申请实施例的第三方面,提供一种应用程序的生成装置,包括:

第一接收模块,用于接收应用程序的创建指令和应用程序的配置信息;

第二接收模块,用于接收用户编写的应用程序界面的源代码;

构建模块,用于对源代码进行业务构建,生成应用程序的业务代码;

打包模块,用于基于应用程序的业务代码、应用程序的配置信息及封装代码,打包生成应用程序。

根据本申请实施例的第四方面,提供一种应用程序的生成装置,包括:

第一接收模块,用于接收应用程序的创建指令和应用程序的配置信息;

编译模块,用于提供应用程序的界面编写环境;

第二接收模块,用于接收用户在界面编写环境中编写的程序代码,生成应用程序的源代码;

提交模块,用于提交应用程序的源代码给服务器;

第三接收模块,用于接收服务器返回的基于应用程序的配置信息和应用程序的源代码业务构建生成的业务代码及封装代码打包生成的应用程序。

根据本申请实施例的第五方面,提供一种应用程序的生成设备,包括:存储器和处理器;该存储器用于储存有可执行程序代码;该处理器用于读取存储器中存储的可执行程序代码以执行上述应用程序的生成方法。

根据本申请实施例的第六方面,提供一种计算机可读存储介质,其上存储有计算机程序指令,当计算机程序指令被处理器执行时实现上述应用程序的生成方法。

根据本申请实施例的第七方面,提供一种应用程序的生成系统,包括:

应用管理模块,用于接收应用程序的创建指令和应用程序的配置信息;

集成开发模块,用于接收用户编写的应用程序界面的源代码;

业务构建模块,用于对源代码进行业务构建,生成应用程序的业务代码;

封装打包模块,用于基于应用程序的配置信息、应用程序的源代码业务构建生成的业务代码及封装代码打包生成的应用程序。

根据本申请实施例的第八方面,提供一种应用于云端平台的应用程序生成方法,包括:

云端平台接收应用程序的创建指令和应用程序的配置信息;

云端平台接收用户编写的应用程序界面的源代码;

云端平台对源代码进行业务构建,生成应用程序的业务代码;

云端平台基于应用程序的业务代码、应用程序的配置信息及封装代码,打包生成应用程序。

根据本申请实施例中的应用程序的生成方法、装置、系统、设备和计算机可读存储介质,接收应用程序的创建指令和应用程序的配置信息,接收用户编写的应用程序界面的源代码,对源代码进行业务构建,生成应用程序的业务代码,基于应用程序的业务代码、应用程序的配置信息及封装代码,打包生成应用程序。本申请实施例的应用程序生成方案,在生成应用程序时,只需开发者提交应用程序的配置信息和应用程序界面的源代码,即可生成应用程序,无需开发者具备较高的开发技巧,降低了开发难度。

另外,本申请实施例的应用程序生成方案,基于weex技术,利用封装代码将业务构建生成的应用程序的业务代码封装打包生成应用程序,不仅使得生成的应用程序拥有超文本标记语言(hypertextmarkuplanguage,html)实时更新的能力,而且使得生成的应用程序具有原生应用程序的使用体验。同时使得用户能够使用相同的应用程序编程接口(applicationprogramminginterface,api)开发基于不同操作系统的应用程序,实现跨平台开发应用程序。

附图说明

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

图1示出了根据本申请实施例的基于云端平台生成应用程序的原理示意图;

图2示出了根据本申请实施例的生成基于不同操作系统的应用程序的原理示意图;

图3示出了根据本申请实施例的一种应用程序的生成方法的流程示意图;

图4示出了根据本申请实施例的另一应用程序的生成方法的流程示意图;

图5示出了根据本申请实施例的又一应用程序的生成方法的流程示意图;

图6示出了根据本申请实施例的一种应用程序的生成装置的结构示意图;

图7示出了根据本申请实施例的另一应用程序的生成装置的结构示意图;

图8示出了能够实现根据本申请实施例的应用程序的生成方法和装置的计算设备的示例性硬件架构的结构图;

图9示出了根据本申请实施例的一种应用程序的生成系统的结构示意图。

具体实施方式

下面将详细描述本申请的各个方面的特征和示例性实施例,为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细描述。应理解,此处所描述的具体实施例仅被配置为解释本申请,并不被配置为限定本申请。对于本领域技术人员来说,本申请可以在不需要这些具体细节中的一些细节的情况下实施。下面对实施例的描述仅仅是为了通过示出本申请的示例来提供对本申请更好的理解。

需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

鉴于传统应用程序的开发对开发者具有较高的要求,开发难度大的问题,本申请实施例提供了一种应用程序的生成方案,包括:接收应用程序的创建指令和应用程序的配置信息,接收用户编写的应用程序界面的源代码,对源代码进行业务构建,生成应用程序的业务代码,基于应用程序的业务代码、应用程序的配置信息及封装代码,打包生成应用程序。本申请实施例的应用程序生成方案,在生成应用程序时,只需开发者提交应用程序的配置信息和应用程序界面的源代码,即可生成应用程序,无需开发者具备较高的开发技巧,降低了开发难度。

另外,本申请实施例的应用程序生成方案,基于weex技术,利用封装代码将业务构建生成的应用程序的业务代码封装打包生成应用程序,不仅使得生成的应用程序拥有html实时更新的能力,而且使得生成的应用程序具有原生应用程序的使用体验。同时使得用户能够使用相同的api开发基于不同操作系统的应用程序,实现跨平台开发应用程序。

本申请实施例的应用程序生成方案,主要包括应用程序信息配置、应用程序生成及应用程序源代码编写三部分,其中,应用程序信息配置和应用程序生成可以在云端平台或者服务器中执行,应用程序源代码编写部分可以在本地集成开发环境(integrateddevelopmentenvironment,ide)执行。

在一个示例中,如图1所示,以应用程序信息配置和应用程序生成在云端平台10中执行,应用程序源代码编写部分在本地ide11中执行为例,对本申请实施例的应用程序的生成方法进行说明。

在一个实施方式中,接收应用程序的创建指令和应用程序的配置信息,是指云端平台10接收用户(或者开发者)提交的应用程序的创建指令和用户提交的应用程序的配置信息。

在一个示例中,云端平台10可以在用户本地客户端(例如:电脑、一体机等)中向用户展示用于触发创建应用程序的按键或者按钮,在用户点击用于触发创建应用程序的按键或者按钮时,视为用户向云端平台10提交的应用程序的创建指令,则云端平台10创建应用程序,同时云端平台10可以请求用户提交应用程序的配置信息。其中,应用程序的配置信息可以包括但不限于:应用包名、图标等。

在一个实施方式中,云端平台10在接收用户发送的应用程序的创建指令时,可以验证用户身份的合法性。换句话说,用户在云端平台10中创建应用程序时,需要先登录云端平台10,取得云端平台10的验证和授权。

在一个示例中,用户可以注册登录云端平台10的账号,并使用其注册的账号登录云端平台10。当然,云端平台10也可以支持用户使用其在其它应用程序中已注册的账号进行登录。

在一个实施方式中,用户登录云端平台10创建应用程序时,为了便于管理和区分不同用户创建的应用程序,云端平台10可以为每一用户分配用户标识,该用户标识用于唯一标识一个用户。举例来说,用户标识可以是用户的客户端序列号、用户的登录用户名等。云端平台10为每一用户分配用户标识之后,即可在用户创建应用程序时,记录用户标识与用户创建的应用程序之间的关联关系,以方便每一用户在云端平台10中对其创建的应用程序进行管理。

在一个实施方式中,云端平台10接收应用程序的创建指令和应用程序的配置信息之后,云端平台10向用户本地客户端中的本地ide11发送应用程序的创建指令和应用程序的配置信息,以使本地ide11向用户提供已创建应用程序的界面编写环境。

当然,用户客户端中的本地ide11需要与云端平台10建立关联关系。在一个示例中,云端平台10可以向用户提供集成开发环境作为用户客户端中的本地ide11。

在一个示例中,本地ide11同样需要对用户进行身份合法性的验证,用户在本地ide11中授权登录之后,本地ide11获取用户在云端平台10中创建的应用程序列表,供用户选择其所要编写的应用程序,本地ide11确定用户选择的应用程序之后,向用户提供其选择应用程序的界面编写环境。当然,若用户在云端平台10中仅创建一个应用程序,则本地ide11可以直接提供该应用程序的界面编写环境。

在一个实施方式中,以用户已创建一个应用程序为例,本地ide11接收云端平台10发送的该应用程序的创建指令和应用程序的配置信息之后,本地ide11可以根据应用程序的配置信息,在提供的应用程序的界面编写环境中加入部分预先配置的框架程序代码,以进一步降低开发难度。

在一个实施方式中,用户在云端平台10中提交应用程序的创建指令和应用程序的配置信息之后,用户可以随时请求本地ide11提供该应用程序的界面编写环境,而且本地ide11可以保存用户以编写的程序代码。举例来说,本地ide11可以将用户已编写的程序代码保存在本地客户端中,也可以将用户已编写的程序代码保存在云端平台10中,当然,也可以同时保存在本地客户端和云端平台10中。

在一个实施方式中,本地ide11向用户提供应用程序的界面编写环境之后,即可接收用户在界面编写环境中编写的程序代码,并根据用户编写的接收到的程序代码,生成应用程序的源代码。

在一个实施方式中,由于本申请实施例基于weex技术,利用封装代码将业务构建生成的应用程序的业务代码封装打包生成应用程序,而weex技术遵循web标准,同时支持vue.js的语法。因此,用户在本地ide11提供的界面编写环境中编写程序代码时,可以采用rax或者vue作为模版语言编写,也可以采用其它语言编写,例如,使用java语言编写,本申请对此不做限定。

在一个实施方式中,云端平台10还可以向本地ide11提供编译软件或者预览调试软件,以方便用户对其编写的程序代码进行编译或者调试。

在一个实施方式中,本地ide11可以向用户展示用于触发提交应用程序源代码的按键或者按钮,在用户点击用于触发提交应用程序源代码的按键或者按钮时,本地ide11将生成的应用程序的源代码提交至云端平台10。

在一个实施方式中,云端平台10接收本地ide11提交的应用程序的源代码之后,即可对本地ide11提交的源代码进行业务构建,生成应用程序的业务代码。举例来说,对本地ide11提交的源代码进行业务构建,生成bundle.js文件。

在一个示例中,在对源代码进行业务构建时,在weex代码中,可以使用<template>、<style>和<script>标签编写页面或组件,然后将它们转换为jsbundle以部署在生成的应用程序中。在用户安装生成的应用程序使用时,当服务器返回给用户本地客户端jsbundle时,jsbundle会被客户端的javascript引擎处理,并管理渲染原生(native)视图,调用原生api和用户交互,从而使得生成的应用程序具有原生应用程序的使用体验。

在一个实施方式中,云端平台10在对应用程序的源代码业务构建生成应用程序的业务代码之后,可以基于应用程序的业务代码、应用程序的配置信息及封装代码,打包生成应用程序。其中,封装代码包括针对不同操作系统预设的标准封装代码,封装代码是一个应用程序界面及行为的标准化执行环境,支持按一定规则加载应用程序的业务代码,同时提供一定的接口开放方式帮助开发者实现基于原生能力的扩展。

在一个实施方式中,由于封装代码中包括针对不同操作系统预设的标准封装代码,因此,在基于应用程序的业务代码、应用程序的配置信息及封装代码,打包生成应用程序时,可以基于应用程序的业务代码、应用程序的配置信息及不同操作系统预设的标准封装代码,打包生成基于不同操作系统的应用程序。

在一个示例中,不同操作系统可以包括但不限于:ios操作系统、android操作系统、全球广域网(worldwideweb,web)操作系统。在封装代码中可以包括但不限于:针对ios操作系统预设的标准封装代码、针对android操作系统预设的标准封装代码、针对web操作系统预设的标准封装代码。

在一个实施方式中,基于应用程序的业务代码、应用程序的配置信息及不同操作系统预设的标准封装代码,打包生成基于不同操作系统的应用程序时,以android操作系统为例,可以首先根据操作系统的类型,获取操作系统对应的应用平台证书和打包脚本,也即获取android操作系统对应的应用平台证书和打包脚本。然后从标准封装代码中取出android操作系统的封装代码,并基于android操作系统的封装代码、应用程序的业务代码、应用程序的配置信息及android操作系统对应的应用平台证书,按照预置的规则生成android操作系统的工程目录。最后对android操作系统的工程目录执行android操作系统对应的打包脚本,生成基于android操作系统的应用程序。

在一个示例中,不同操作系统对应的应用平台证书和打包脚本可以预先存储在云端平台10中,在打包生成针对每个操作系统的应用程序时,直接获取使用。当然,不同操作系统对应的应用平台证书和打包脚本,也可以存储在与云端平台10通信连接的存储器中。举例来说,不同操作系统对应的应用平台证书和打包脚本存储在与云端平台10连接的数据库中,在打包生成针对每个操作系统的应用程序时,直接从数据库中获取使用。

在一个示例中,按照预置的规则生成android操作系统的工程目录时,预置的规则可以包括但不限于:生成工程目录时的一些操作规则。举例来说,预置的规则可以为文件替换操作、信息变更替换操作等。当然,不同操作系统预置的规则可以是不同的。

在一个示例中,如图2所示,以打包生成基于ios操作系统的应用程序和打包生成基于android操作系统的应用程序为例,对打包生成基于不同操作系统的应用程序进行详细说明。

如图2所示,在接收应用程序的配置信息,业务构建生成应用程序的业务代码之后,在生成基于ios操作系统的应用程序时,首先从预先存储应用平台证书和打包脚本的存储位置(例如:数据库)处获取ios操作系统对应的应用平台证书和打包脚本,并从标准封装代码中取出ios操作系统的封装代码,然后基于ios操作系统的封装代码、应用程序的业务代码、应用程序的配置信息及ios操作系统对应的应用平台证书,按照针对ios操作系统预置的规则生成ios操作系统的工程目录,并通过打包服务对ios操作系统的工程目录执行ios操作系统对应的打包脚本,生成基于ios操作系统的应用程序,也即生成文件后缀名为.ipa的应用程序。

同样地,在接收应用程序的配置信息,业务构建生成应用程序的业务代码之后,在生成基于android操作系统的应用程序时,首先从预先存储应用平台证书和打包脚本的存储位置(例如:数据库)处获取android操作系统对应的应用平台证书和打包脚本,并从标准封装代码中取出android操作系统的封装代码,然后基于android操作系统的封装代码、应用程序的业务代码、应用程序的配置信息及android操作系统对应的应用平台证书,按照针对android操作系统预置的规则生成android操作系统的工程目录,并通过打包服务对android操作系统的工程目录执行android操作系统对应的打包脚本,生成基于android操作系统的应用程序,也即生成文件后缀名为.apk的应用程序。

在一个实施方式中,若用户提交的应用程序的配置信息中包括应用程序的类型,则基于应用程序的业务代码、应用程序的配置信息及不同操作系统预设的标准封装代码,打包生成应用程序时,基于应用程序的业务代码、应用程序的配置信息及不同操作系统预设的标准封装代码,打包生成与应用程序配置信息中包括的应用程序类型相同的应用程序。

在一个实施方式中,基于应用程序的业务代码、应用程序的配置信息及封装代码,打包生成应用程序时,可以基于weex技术的能力扩展机制,允许用户在应用程序中添加预先配置的插件,以扩展应用程序的能力。

在一个实施方式中,用户可以在应用程序的配置信息中配置需要添加插件添加请求,插件添加请求中包含插件标识,云端平台10基于应用程序的业务代码、应用程序的配置信息及封装代码,打包生成应用程序时,可以查看应用程序的配置信息中是否包含插件添加请求,若应用程序的配置信息中包含插件添加请求,则确定插件添加请求中包含的插件标识对应的插件,并基于应用程序的业务代码、应用程序的配置信息、封装代码及确定出的插件,打包生成应用程序。

在打包生成应用程序时,在应用程序中添加预先配置的插件,不仅能够扩展应用程序的功能,而且通过预先配置插件,使得用户在开发应用程序的过程中可以直接请求使用预先配置的插件,无需用户再编写插件的实现代码,进一步降低了开发难度。

举例来说,若云端平台10中预先配置有三个插件,分别为插件a、插件b和插件c,用户在提交的应用程序配置信息中包括插件添加请求,插件添加请求中包括插件a和插件b,则云端平台10基于应用程序的业务代码、应用程序的配置信息及封装代码,打包生成应用程序时,基于应用程序的业务代码、应用程序的配置信息、封装代码、插件a及插件b,打包生成应用程序。

当然,需要说明的是,应用程序的配置信息中插件添加请求时,用户在本地ide11中编写应用程序的程序代码时,需要加入调用插件的程序代码,若用户编写的程序代码中不包含调用插件的程序代码,则应用程序中添加的插件也无法生效。

在一个实施方式中,若用户需要在应用程序中添加自定义的插件,则用户可以先将自定义的插件上传至云端平台10,然后在应用程序的配置信息中配置插件添加请求,插件添加请求中包括云端平台10为自定义插件分配的插件标识。

举例来说,若用户需要在应用程序中添加自定义的插件1,则用户可以将插件1上传至云端平台10,云端平台10可以对插件进行重命名,例如,云端平台10将用户上传的插件1重命名为插件d,则若用户需要在应用程序中添加自定义的插件1,可以在应用程序的配置信息中配置插件添加请求,并在插件添加请求中添加插件1在云端平台10中的插件标识,也即在插件添加请求中添加插件d。

在一个实施方式中,仍沿用上例,用户将插件1上传至云端平台10之后,用户还可以将插件1分享给其它用户使用。

在一个示例中,云端平台10中可以提供一个或多个预先配置的插件。预先配置的插件包括基于客户端技术构建的插件,和/或基于客户端技术与云服务技术构建的插件。举例来说,基于客户端技术构建的插件,可以包括调用应用程序所在终端硬件资源的插件;基于客户端技术与云服务技术构建的插件,可以包括与用户进行互动的分享插件。具体地,预先配置的插件,包括以下任意一种或多种:实现预设功能的功能插件、界面插件、设备插件、互动插件。

在一个示例中,实现预设功能的功能插件,可以包括但不限于:实现存储功能的存储插件、实现支付功能的支付插件、实现登录功能的登录插件。

界面插件,可以包括但不限于:选择器插件、地图插件、图表插件。

设备插件,可以包括但不限于:访问网络插件、调用陀螺仪插件、调用摄像头插件。

互动插件,可以包括但不限于:分享插件、转载插件、点赞插件、消息通知插件。

在一个实施方式中,云端平台10在打包生成应用程序之后,即可向本地ide11或者向用户返回打包生成的应用程序。举例来说,可以直接向本地ide11或者向用户返回应用程序的文件,也可以向本地ide11或者向用户返回用于访问应用程序文件存储位置的链接,本申请对此不做限定。

下面结合具体的系统处理流程对上述应用程序的生成方法的执行过程进行说明,然而,值得注意的是,该具体实施例仅是为了更好地说明本申请,并不构成对本申请的不当限定。

在云端平台侧或者服务器侧,从整体流程而言,如图3所示,应用程序的生成方法300,可以包括以下步骤:

步骤s301,接收应用程序的创建指令和应用程序的配置信息。

步骤s302,接收用户编写的应用程序界面的源代码。

步骤s303,对源代码进行业务构建,生成应用程序的业务代码。

步骤s304,基于应用程序的业务代码、应用程序的配置信息及封装代码,打包生成应用程序。

在本申请实施例中,接收应用程序的创建指令和应用程序的配置信息,接收用户编写应用程序的界面所生成的源代码,对源代码进行业务构建,生成应用程序的业务代码,基于应用程序的业务代码、应用程序的配置信息及封装代码,打包生成应用程序。本申请实施例的应用程序生成方案,在生成应用程序时,只需开发者提交应用程序的配置信息和应用程序的源代码,即可生成应用程序,无需开发者具备较高的开发技巧,降低了开发难度。

本申请实施例的应用程序生成方案,基于weex技术,利用封装代码将业务构建生成的应用程序的业务代码封装打包生成应用程序,不仅使得生成的应用程序拥有html实时更新的能力,而且使得生成的应用程序具有原生应用程序的使用体验。同时使得用户能够使用相同的api开发基于不同操作系统的应用程序,实现跨平台开发应用程序。

具体若由云端平台执行,从整体流程而言,如图4所示,应用程序的生成方法400,可以包括以下步骤:

步骤s401,云端平台接收应用程序的创建指令和应用程序的配置信息。

步骤s402,云端平台接收用户编写的应用程序界面的源代码。

步骤s403,云端平台对源代码进行业务构建,生成应用程序的业务代码。

步骤s404,云端平台基于应用程序的业务代码、应用程序的配置信息及封装代码,打包生成应用程序。

在本地ide侧,从整体流程而言,如图5所示,应用程序的生成方法500,可以包括以下步骤:

步骤s501,接收应用程序的创建指令和应用程序的配置信息。

步骤s502,提供应用程序的界面编写环境。

步骤s503,接收用户在界面编写环境中编写的程序代码,生成应用程序的源代码。

步骤s504,提交应用程序的源代码给服务器。

步骤s505,接收服务器返回的基于应用程序的配置信息和应用程序的源代码业务构建生成的业务代码及封装代码打包生成的应用程序。

需要说明的是,若在云端平台中执行本申请实施例提供的应用程序的生成方案,则步骤s504可以为提交应用程序的源代码给云端平台,步骤s505可以为接收云端平台返回的基于应用程序的配置信息和应用程序的源代码业务构建生成的业务代码及封装代码打包生成的应用程序。

在云端平台侧或者服务器侧,在实现的时候,上述实施例中的应用程序的生成方法可以通过应用程序的生成装置来实现。如图6所示,应用程序的生成装置600,可以包括:

第一接收模块601,用于接收应用程序的创建指令和应用程序的配置信息。

第二接收模块602,用于接收用户编写的应用程序界面的源代码。

构建模块603,用于对源代码进行业务构建,生成应用程序的业务代码。

打包模块604,用于基于应用程序的业务代码、应用程序的配置信息及封装代码,打包生成应用程序。

在一个实施方式中,封装代码包括针对不同操作系统预设的标准封装代码;打包模块604,具体用于:基于应用程序的业务代码、应用程序的配置信息及不同操作系统预设的标准封装代码,打包生成基于不同操作系统的应用程序。

在一个实施方式中,打包模块604,具体用于:根据操作系统的类型,获取操作系统对应的应用平台证书和打包脚本;从标准封装代码中取出操作系统的封装代码,并基于操作系统的封装代码、业务代码、配置信息及操作系统对应的应用平台证书,按照预置的规则生成每个操作系统的工程目录;对操作系统的工程目录执行操作系统对应的打包脚本,生成基于不同操作系统的应用程序。

在一个实施方式中,配置信息中包括应用程序的类型;打包模块604,具体用于:基于应用程序的业务代码、应用程序的配置信息及封装代码,打包生成与应用程序的类型相同的应用程序。

在一个实施方式中,打包模块604,具体用于:基于应用程序的业务代码、应用程序的配置信息、封装代码及响应于用户请求添加的预先配置的插件,打包生成应用程序。

在一个实施方式中,打包模块604,具体用于:接收用户提交的用于添加在应用程序中的插件;基于应用程序业务代码、应用程序的配置信息、封装代码及用户提交的插件,打包生成应用程序。

在一个实施方式中,插件包括基于客户端技术构建的插件,和/或基于客户端技术与云服务技术构建的插件。

在一个实施方式中,插件包括以下任意一种或多种:实现预设功能的功能插件、界面插件、设备插件、互动插件。

在一个实施方式中,第二接收模块602,具体用于:接收用户在本地集成开发环境ide中,采用rax或者vue作为模版语言编写应用程序的界面所生成的源代码。

在一个实施方式中,源代码是用户在本地ide中授权登录之后所编写生成的。

在一个实施方式中,装置还包括:标识分配模块605,用于为每一用户分配用户标识;关联关系建立模块606,用于针对每一创建应用程序的用户,记录用户的用户标识与用户创建应用程序之间的关联关系。

在本地ide侧,在实现的时候,上述实施例中的应用程序的生成方法可以通过应用程序的生成装置来实现。如图7所示,应用程序的生成装置700,可以包括:

第一接收模块701,用于接收应用程序的创建指令和应用程序的配置信息。

编译模块702,用于提供应用程序的界面编写环境。

第二接收模块703,用于接收用户在界面编写环境中编写的程序代码,生成应用程序的源代码。

提交模块704,用于提交源代码给服务器。

第三接收模块705,用于接收服务器返回的基于应用程序的配置信息和应用程序的源代码业务构建生成的业务代码及封装代码打包生成的应用程序。

在一个实施方式中,第三接收模块705,具体用于:接收服务器返回的基于应用程序的配置信息和应用程序的源代码业务构建生成的业务代码、封装代码及响应于用户请求添加的插件,打包生成的应用程序。

在一个实施方式中,响应于用户请求添加的插件,包括:服务器中预先配置的插件,和/或用户提交到服务器中的插件。

在一个实施方式中,插件包括基于客户端技术构建的插件,和/或基于客户端技术与云服务技术构建的插件。

在一个实施方式中,插件包括以下任意一种或多种:实现预设功能的功能插件、界面插件、设备插件、互动插件。

在一个实施方式中,第二接收模块703,具体用于:接收用户采用rax或者vue作为模版语言编写的程序代码。

在一个实施方式中,第二接收模块703,具体用于:接收用户在授权登录之后在界面编写环境中编写的程序代码。

图8示出了能够实现根据本申请实施例的应用程序的生成方法和装置的计算设备的示例性硬件架构的结构图。如图8所示,计算设备800包括输入设备801、输入接口802、中央处理器803、存储器804、输出接口805、以及输出设备806。其中,输入接口802、中央处理器803、存储器804、以及输出接口805通过总线810相互连接,输入设备801和输出设备806分别通过输入接口802和输出接口805与总线810连接,进而与计算设备800的其他组件连接。

具体地,输入设备801接收来自外部的输入信息,并通过输入接口802将输入信息传送到中央处理器803;中央处理器803基于存储器804中存储的计算机可执行指令对输入信息进行处理以生成输出信息,将输出信息临时或者永久地存储在存储器804中,然后通过输出接口805将输出信息传送到输出设备806;输出设备806将输出信息输出到计算设备800的外部供用户使用。

也就是说,图8所示的计算设备也可以被实现为应用程序的生成设备,该应用程序的生成设备可以包括:存储有计算机可执行指令的存储器;以及处理器,该处理器在执行计算机可执行指令时可以实现结合图1-图7描述的应用程序的生成方法和装置。

在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品或计算机可读存储介质的形式实现。所述计算机程序产品或计算机可读存储介质包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(dsl))或无线(例如,红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,dvd)、或者半导体介质(例如,固态硬盘solidstatedisk(ssd))等。

另外,结合上述实施例中的应用程序的生成方法,本申请实施例可提供一种计算机可读存储介质来实现。该计算机可读存储介质上存储有计算机程序指令;该计算机程序指令被处理器执行时实现上述实施例中的任意一种应用程序的生成方法。

基于与本申请实施例提供的应用程序的生成方法相同的构思,如图9所示,本申请实施例还提供了一种应用程序的生成系统900,包括:

应用管理模块901,用于接收应用程序的创建指令和应用程序的配置信息。

集成开发模块902,用于接收用户编写的应用程序界面的源代码。

业务构建模块903,用于对源代码进行业务构建,生成应用程序的业务代码。

封装打包模块904,用于基于应用程序的配置信息、应用程序的源代码业务构建生成的业务代码及封装代码打包生成的应用程序。

在一个实施方式中,应用程序的生成系统900还可以包括:测试适配模块905,用于测试生成的应用程序的性能,并确定生成的应用程序适配的终端类型。

在一个示例中,测试适配模块905可以模拟生成的应用程序在任一终端中的运行情况,以测试生成的应用程序的性能,同时也可以通过模拟运行确定生成的应用程序适配的终端类型。

在一个实施方式中,应用程序的生成系统900还可以包括:功能扩展模块906,用于在生成的应用程序中添加用户提交的插件,或者响应于用户请求在应用程序中添加预先配置的插件。

在一个实施方式中,插件包括基于客户端技术构建的插件,和/或基于客户端技术与云服务技术构建的插件。

在一个实施方式中,插件包括以下任意一种或多种:实现预设功能的功能插件、界面插件、设备插件、互动插件。

在一个实施方式中,应用程序的生成系统900还可以包括:运维分析模块907,用于统计应用程序多个预设指标的指标值,并基于统计得到的多个指标值维护应用程序。

在一个示例中,多个预设指标可以包括但不限于:安装应用程序的终端数量、安装应用程序的途径、应用程序在终端中的留存时间。

通过统计应用程序多个预设指标的指标值,能够帮助用户基于统计得到的多个指标值维护应用程序。

在一个实施方式中,应用管理模块901,还用于:为每一用户分配用户标识,并针对每一创建应用程序的用户,记录用户的用户标识与用户创建应用程序之间的关联关系。

需要明确的是,本申请并不局限于上文所描述并在图中示出的特定配置和处理。为了简明起见,这里省略了对已知方法的详细描述。在上述实施例中,描述和示出了若干具体的步骤作为示例。但是,本申请的方法过程并不限于所描述和示出的具体步骤,本领域的技术人员可以在领会本申请的精神后,作出各种改变、修改和添加,或者改变步骤之间的顺序。

还需要说明的是,本申请中提及的示例性实施例,基于一系列的步骤或者装置描述一些方法或系统。但是,本申请不局限于上述步骤的顺序,也就是说,可以按照实施例中提及的顺序执行步骤,也可以不同于实施例中的顺序,或者若干步骤同时执行。

以上所述,仅为本申请的具体实施方式,所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的系统、模块和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。应理解,本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本申请的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1