CN115202673A - 基于云服务器的应用构建方法、装置和计算机设备 - Google Patents
基于云服务器的应用构建方法、装置和计算机设备 Download PDFInfo
- Publication number
- CN115202673A CN115202673A CN202110396788.2A CN202110396788A CN115202673A CN 115202673 A CN115202673 A CN 115202673A CN 202110396788 A CN202110396788 A CN 202110396788A CN 115202673 A CN115202673 A CN 115202673A
- Authority
- CN
- China
- Prior art keywords
- application
- source code
- code file
- target application
- configuration
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/61—Installation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/955—Retrieval from the web using information identifiers, e.g. uniform resource locators [URL]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/37—Compiler construction; Parser generation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/71—Version control; Configuration management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Computer Security & Cryptography (AREA)
- Data Mining & Analysis (AREA)
- Stored Programmes (AREA)
Abstract
本申请涉及一种基于云服务器的应用构建方法、装置和计算机设备。所述方法包括:获取待构建的目标应用的配置信息。对配置信息进行解析,获取目标应用的配置参数。根据配置参数,对应用容器的源代码文件中的基础配置进行资源替换,得到目标应用的源代码文件,应用容器中内置有已开发好的应用程序的源代码文件。对目标应用的源代码文件进行编译,生成目标应用的安装包。采用本方法能够实现在云服务器,根据资源替换后得到的目标应用的源代码文件进行目标应用的构建,无需如同传统的繁琐开发方式进行基础能建设和兼容性测试,节省了开发时间和开发成本,提升了开发过程自动化程度以及应用程序的开发效率。
Description
技术领域
本申请涉及计算机技术领域,特别是涉及一种基于云服务器的应用构建方法、装置和计算机设备。
背景技术
随着计算机技术的发展,以及各类应用程序的在不同终端设备的广泛应用,对于不同应用程序的要求也日益提升,通常需要针对用户提出的需求或反馈意见进行应用程序升级或开发新的应用程序。
传统的应用程序开发方式,包括基于原生App的开发方式、或基于WebApp的开发方式、或基于混合模式移动应用的开发方式。然而,基于原生App的开发方式涉及应用开发的多个阶段,开发周期较长,即时性较差,而基于混合模式移动应用的开发方式,由于无法调用操作系统的底层核心功能,则相比基于原生App的开发方式而言,其兼容性较差,用户体验有所降低。由于基于WebApp的开发方式开发得到的应用程序,可由浏览器渲染加载运行,本质上属于触屏版的网站,对于终端设备性能要求较高,开发成本较高。
因此,根据传统的应用程序开发方式,对需要根据用户需求,开发高性能或定制化应用程序时,由于应用程序开发过程的复杂性,以及开发时间、用户体验以及开发成本之间无法达到平衡,比如根据用户体验进行多次修改和调整时,则势必造成开发时间延长以及开发成本提升,进而导致应用程序的开发效率较为低下的问题。
发明内容
基于此,有必要针对上述技术问题,提供一种能够提升应用程序的开发效率的应用构建方法、装置、计算机设备和存储介质。
一种基于云服务器的应用构建方法,所述方法包括:
获取待构建的目标应用的配置信息;
对所述配置信息进行解析,获取所述目标应用的配置参数;
根据所述配置参数,对应用容器的源代码文件中的基础配置进行资源替换,得到所述目标应用的源代码文件;所述应用容器中内置有已开发好的应用程序的源代码文件;
对所述目标应用的源代码文件进行编译,生成目标应用的安装包。
一种基于云服务器的应用构建装置,所述装置包括:
配置信息获取模块,用于获取待构建的目标应用的配置信息;
配置参数获取模块,用于对所述配置信息进行解析,获取所述目标应用的配置参数;
源代码文件生成模块,用于根据所述配置参数,对应用容器的源代码文件中的基础配置进行资源替换,得到所述目标应用的源代码文件;所述应用容器中内置有已开发好的应用程序的源代码文件;
安装包生成模块,用于对所述目标应用的源代码文件进行编译,生成目标应用的安装包。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
获取待构建的目标应用的配置信息;
对所述配置信息进行解析,获取所述目标应用的配置参数;
根据所述配置参数,对应用容器的源代码文件中的基础配置进行资源替换,得到所述目标应用的源代码文件;所述应用容器中内置有已开发好的应用程序的源代码文件;
对所述目标应用的源代码文件进行编译,生成目标应用的安装包。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
获取待构建的目标应用的配置信息;
对所述配置信息进行解析,获取所述目标应用的配置参数;
根据所述配置参数,对应用容器的源代码文件中的基础配置进行资源替换,得到所述目标应用的源代码文件;所述应用容器中内置有已开发好的应用程序的源代码文件;
对所述目标应用的源代码文件进行编译,生成目标应用的安装包。
上述基于云服务器的应用构建方法、装置和计算机设备中,通过获取待构建的目标应用的配置信息,并对配置信息进行解析,获取目标应用的配置参数。进而根据配置参数,对应用容器的源代码文件中的基础配置进行资源替换,得到目标应用的源代码文件。通过进一步对目标应用的源代码文件编译,生成目标应用的安装包。其中,应用容器中内置有已开发好的应用程序的源代码文件。该方法根据所提供与目标应用对应的配置参数,实现对已内置有开发好的应用程序的源代码文件进行资源替换,进而可在云服务器根据资源替换后得到的目标应用的源代码文件实现目标应用的构建,而无需遵循传统的繁琐开发方式,缩短了应用开发过程,无需进行原有的基础能建设和兼容性测试,实现较高的开发过程自动化程度,节省开发时间和开发成本,进一步提升了应用程序的开发效率。
附图说明
图1为一个实施例中基于云服务器的应用构建方法的应用环境图;
图2为一个实施例中基于云服务器的应用构建方法的流程示意图;
图3为一个实施例中应用构建请求携带的数据页面示意图;
图4为另一个实施例中基于云服务器的应用构建方法的流程示意图;
图5为一个实施例中基于云服务器的应用构建装置的结构框图;
图6为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请提供的基于云服务器的应用构建方法,涉及了云技术,其中,云技术(Cloudtechnology)是指在广域网或局域网内将硬件、软件、网络等系列资源统一起来,实现数据的计算、储存、处理和共享的一种托管技术。云技术(Cloud technology)基于云计算商业模式应用的网络技术、信息技术、整合技术、管理平台技术、应用技术等的总称,可以组成资源池,按需所用,灵活便利,云计算技术将变成重要支撑。技术网络系统的后台服务需要大量的计算、存储资源,如视频网站、图片类网站和更多的门户网站。伴随着互联网行业的高度发展和应用,将来每个物品都有可能存在自己的识别标志,都需要传输到后台系统进行逻辑处理,不同程度级别的数据将会分开处理,各类行业数据皆需要强大的系统后盾支撑,只能通过云计算来实现。
其中,云计算(cloud computing)是一种计算模式,它将计算任务分布在大量计算机构成的资源池上,使各种应用系统能够根据需要获取计算力、存储空间和信息服务。提供资源的网络被称为“云”。“云”中的资源在使用者看来是可以无限扩展的,并且可以随时获取,按需使用,随时扩展,按使用付费。
作为云计算的基础能力提供商,会建立云计算资源池(简称云平台,一般称为IaaS(Infrastructure as a Service,基础设施即服务)平台,在资源池中部署多种类型的虚拟资源,供外部客户选择使用。云计算资源池中主要包括:计算设备(为虚拟化机器,包含操作系统)、存储设备、网络设备。其中,按照逻辑功能划分,在IaaS(Infrastructure as aService,基础设施即服务)层上可以部署PaaS(Platform as a Service,平台即服务)层,PaaS层之上再部署SaaS(Software as a Service,软件即服务)层,也可以直接将SaaS部署在IaaS上。PaaS为软件运行的平台,如数据库、web容器等。SaaS为各式各样的业务软件,如web门户网站、短信群发器等。一般来说,SaaS和PaaS相对于IaaS是上层。
本申请提供的基于云服务器的应用构建方法,可以应用于如图1所示的应用环境中。其中,终端102通过网络与云服务器104进行通信。云服务器104通过获取用户基于终端102发送的待构建的目标应用的配置信息,并对配置信息进行解析,获取目标应用的配置参数。进而根据配置参数,对应用容器的源代码文件中的基础配置进行资源替换,得到目标应用的源代码文件,并进一步对目标应用的源代码文件进行编译,生成目标应用的安装包。其中,上传至云服务器104的应用容器中内置有已开发好的应用程序的源代码文件。其中,云服务器104表示在云端部署的用于构建应用程序的服务器,可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN、以及大数据和人工智能平台等基础云计算服务的云服务器。终端102可以是智能手机、平板电脑、笔记本电脑、台式计算机、智能音箱以及智能手表等,但并不局限于此。终端102以及云服务器104可以通过有线或无线通信方式进行直接或间接地连接,本申请在此不做限制。
在一个实施例中,如图2所示,提供了一种基于云服务器的应用构建方法,以该方法应用于图1中的云服务器为例进行说明,包括以下步骤:
步骤S202,获取待构建的目标应用的配置信息。
具体地,云服务器通过接收用户基于所在终端设备发起的应用构建请求,并获取应用构建请求携带的数据页面,进而提取数据页面的页面信息,根据所提取的页面信息生成与待构建的目标应用的配置信息。
其中,用户可在数据页面,写入待构建的目标应用的基础配置参数的具体配置数据,其中,基础配置参数可以包括应用编号或者应用ID、应用名称、应用图标、启动页或启动页URL等,进而数据页面的页面信息包括有不同基础配置参数以及各配置参数对应的具体配置数据。云服务器通过对所获取的页面信息进行分析处理,提取出各个配置参数以及相应配置参数的具体配置数据,可得到与待构建的目标应用的配置信息。
进一步,如图3所示,图3提供了一种应用构建请求携带的数据页面,参照图3可知,数据页面包括的与目标应用对应的配置参数,可以包括应用编号、应用名称、应用图标、启动页、启动页URL、启动页跳转的URL以及启动倒计时等,其中,应用编号即表示应用ID,表示目标应用的唯一标识,可生成应用的ID号码,应用名称是应用程序的具体名称,比如微信、QQ等,应用图标表示在终端安装后的应用程序的桌面图标,点击图标可以打开对应应用程序。
其中,启动页表示应用启动的时候展示的页面、或动画、或视频、或广告、或企业logo等,启动页URL用于表示应用启动的时候展示的页面、或动画、或视频、或广告、或企业logo等对应的页面地址,而启动页跳转的URL则用于表示点击启动时候展示的页面、或广告等需要跳转的新的页面地址,启动倒计时则表示启动应用时广告、或动画、或视频、或企业logo等的显示时长。
在一个实施例中,还可通过在云服务器和终端设备之间设置接口的方式,直接将终端设备所存储的配置参数以及配置参数的配置数据等,通过接口发送至云服务器,即无需用户进行二次填写,可通过对直接获取的配置参数、资源文件统一分析得到配置信息的方式,实现配置信息的获取。
步骤S204,对配置信息进行解析,获取目标应用的配置参数。
具体地,云服务器通过对接收到的与待构建的目标应用的配置信息,进行解析,获取目标应用的配置参数,其中,配置参数可以包括应用编码、应用名称、应用图标和启动页等。获取各配置参数后,进一步获取与各配置参数对应的数据提取方式,根据各数据提取方式,分别提取相应配置参数的配置数据。其中,配置数据表示不同配置参数对应的详细取值或者资源文件等。
其中,应用编码以及应用名称等配置参数,对应可直接获取的第一数据提取方式,即通过对配置信息进行解析,获取应用编码以及应用名称等配置参数的同时,直接获取相应配置参数的具体配置数据,即目标应用的应用编号取值和具体应用名称。而应用图标、启动页等配置参数,对应需要进行图片下载的第二数据提取方式,即通过对配置信息进行解析时,获取应用图标和启动页等配置参数的同时,并下载用户上传的与图标对应的图片,以及与启动页对应的图片。
进一步地,配置参数还可以包括启动页URL、启动页跳转的网页URL和启动倒计时,其中,启动页URL、启动页跳转的网页URL等配置参数,对应根据页面地址进行跳转后,再进行资源文件下载的第三数据提取方式,而启动倒计时对应可直接获取的第一数据提取方式。其中,启动页URL用于表示应用启动的时候展示的页面、或动画、或视频、或广告、或企业logo等对应的页面地址,启动页跳转的URL则用于表示点击启动时候展示的页面、或广告等需要跳转的新的页面地址,启动倒计时则表示启动应用时广告、或动画、或视频、或企业logo等的显示时长。
进一步地,在对配置信息进行解析时,获取到启动页URL、启动页跳转的网页URL等配置参数的同时,根据用户填写的启动页URL或启动页跳转的网页URL的具体页面地址,通过访问对应的页面地址,下载对应的资源文件,包括图片、动画或视频等具体内容。
在一个实施例中,当用户同时填写启动页内容和启动页URL的内容时,优先获取启动页URL的内容。而当用户未在启动页上传图片时,则直接通过获取启动页URL的具体内容,比如页面地址,并进一步访问启动页URL对应的页面地址,从相应页面下载对应的图片、动画以及视频等具体内容。
步骤S206,根据配置参数,对应用容器的源代码文件中的基础配置进行资源替换,得到目标应用的源代码文件。
具体地,获取从应用容器提供的各候选应用功能中选定的目标应用功能,并根据配置参数,对应用容器的源代码文件中的基础配置进行资源替换,进而获取资源替换后的目标应用功能的源代码文件,得到目标应用的源代码文件。
其中,应用容器中内置有已开发好的应用程序的源代码文件,即应用容器提供了多种候选应用功能,用户可对应用容器提供的多种候选应用功能进行选择,根据用户的选择操作,可确定出用户选定的目标应用功能。
进一步地,根据配置参数,对应用容器的源代码文件中的基础配置进行资源替换,即通过将配置参数对应的配置数据,分别写入对应基础配置在源代码文件中的存储位置,实现资源替换过程。通过获取资源替换后的目标应用功能的源代码文件,并将进行资源替换后的目标应用功能的源代码文件确定为目标应用的源代码文件。
在一个实施例中,应用容器内置的已开发好的应用程序具备原生App的UI层面、数据层面、硬件层面、网络层面和渲染层面等能力,相应提供的候选应用功能可以包括硬件功能、组件功能、媒体相关功能以及其他附加功能等,其中,硬件功能包括设备、系统信息、定时任务、数据存储、蓝牙、日历、相机、扫码、振动以及WIFI等,人组件功能包括弹窗、导航栏、组件tab、下拉刷新、地图显示、定位、查看相册、插入图片以及图库预览等,媒体相关功能包括:视频播放、录音、视频编解码、音视频/图片文件压缩处理、实时语音聊天以及视频聊天等。其他附加功能可以包括:消息推送、版本更新、手机支付以及广告插入等。其中,前端页面可以根据需求以及说明文档调用客户端的响应能力,将前端页面通过配置信息打包到应用程序中,生成一个Hybrid App。
进一步地,在应用构建请求携带的数据页面中,还可设置有针对应用容器所包括的各候选应用功能的选择项,即通过在数据页面设置不同候选应用功能,以供用户进行选择,比如需要构建的目标应用仅需要具备地图显示以及定位功能,则用户可在数据页面展示的各候选应用功能中,选定地图显示功能以及定位功能,确定为目标应用功能。其中,如用户不对候选应用功能进行选定操作,则默认需要构建的目标应用具备应用容器设置有的所有候选应用功能。
步骤S208,对目标应用的源代码文件进行编译,生成目标应用的安装包。
具体地,通过对得到的目标应用的源代码文件进行编译、打包,得到目标应用的安装包。
其中,可采用打包工具或编译工具,对源代码文件进行编译和打包,生成得到目标应用的安装包,比如采用inno setup、InstallShield以及gradle等软件打包工具实现对源代码文件的编译和打包操作。
在一个实施例中,在对目标应用的源代码文件进行编译,生成目标应用的安装包之后,还包括:
获取目标应用的安装包的存储位置;
根据存储位置,生成与目标应用对应的下载链接;
将下载链接,发送至用户所在终端设备。
具体地,生成的目标应用的安装包可存储至云服务器中、或云服务对应的本地存储中,还可存储至预设的第三方存储平台等,根据目标应用的安装包的存储位置,可生成与目标应用对应的下载链接,并将下载链接发送至用户所在终端设备。
其中,用户通过在终端设备上访问所接收到的下载链接,下载目标应用的安装包至终端设备,进行基于安装包实现目标应用的安装、运行操作。
上述基于云服务器的应用构建方法、装置和计算机设备中,通过获取待构建的目标应用的配置信息,并对配置信息进行解析,获取目标应用的配置参数。进而根据配置参数,对应用容器的源代码文件中的基础配置进行资源替换,得到目标应用的源代码文件。通过进一步对目标应用的源代码文件编译,生成目标应用的安装包。其中,应用容器中内置有已开发好的应用程序的源代码文件。该方法根据所提供与目标应用对应的配置参数,实现对已内置有开发好的应用程序的源代码文件进行资源替换,进而可在云服务器根据资源替换后得到的目标应用的源代码文件实现目标应用的构建,而无需遵循传统的繁琐开发方式,缩短了应用开发过程,无需进行原有的基础能建设和兼容性测试,实现较高的开发过程自动化程度,节省开发时间和开发成本,进一步提升了应用程序的开发效率。
在一个实施例中,配置参数包括应用编码、应用名称、应用图标和启动页,根据配置参数,对应用容器的源代码文件中的基础配置进行资源替换,包括:
根据应用编码、应用名称、应用图标和启动页,确定与应用容器对应的待替换基础配置;
获取各待替换基础配置,在应用容器的源代码文件的存储位置;
将与应用编码、应用名称、应用图标和启动页对应的配置数据,分别写入所确定出的各存储位置。
具体地,在对配置信息进行解析,获取目标应用的配置参数后,获取与各配置参数对应的数据提取方式,并根据各数据提取方式,分别提取得到各配置参数对应的配置数据。举例来说,配置参数包括应用编码、应用名称、应用图标和启动页,还可包括与启动页对应的启动页URL、启动页跳转的网页URL和启动倒计时,可根据与应用编码、应用名称、启动倒计时对应的第一数据提取方式,提取目标应用的应用编号取值、具体应用名称以及启动倒计时具体取值。
同样地,可根据与应用图标、启动页对应的第二数据提取方式,下载用户上传的与图标对应的图片,以及与启动页对应的图片,还可根据与启动页URL、启动页跳转的网页URL对应的第三数据提取方式,根据用户填写的启动页URL或启动页跳转的网页URL的具体页面地址,通过访问对应的页面地址,下载对应的资源文件,包括图片、动画或视频等具体内容。
其中,在应用容器中,同样设置有对应的基础配置,各基础配置以及对应的基础配置数据,在应用容器的源代码文件中分别设置有相应的存储位置。进而根据与目标应用对应的配置参数,包括应用编码、应用名称、应用图标和启动页等,确定与应用容器对应的待替换基础配置,并获取各待替换基础配置在应用容器的源代码文件的存储位置,进而将与应用编码、应用名称、应用图标和启动页对应的配置数据,包括应用编号取值、具体应用名称、与图标对应的图片、与启动页对应的图片等,分别写入所确定出的应用容器的基础配置在源代码文件中的各存储位置,达到资源替换的目的。
在一个实施例中,在根据配置参数,对应用容器的源代码文件中的基础配置进行资源替换,得到目标应用的源代码文件之前,还包括:
获取预先上传的应用容器;对应用容器进行初始化处理,清理应用容器的原始缓存数据,并且设置相应的默认数据。
具体地,由于预先上传至云服务器的应用容器中,可能存在残留历史数据的问题,因此需要对上传至云服务器的应用容器进行初始化处理,删除应用容器的原始缓存数据或历史残留数据等,以得到可用的应用容器,另外可能用户填写的配置信息不全,防止构建失败,设置了构建中必须的默认配置数据。
其中,在云服务器预先上传应用容器,还需在云服务器配置构建程序所需要的资源和环境,比如gradle,jdk,google资源、maven仓库资源、JCenter仓库资源等,该些所需资源数据加载时,可从云服务器的内容分发网络对应的加速服务加载,提升数据加载效率。
本实施例中,通过根据应用编码、应用名称、应用图标和启动页,确定与应用容器对应的待替换基础配置,并获取各待替换基础配置,在应用容器的源代码文件的存储位置,进而将与应用编码、应用名称、应用图标和启动页对应的配置数据,分别写入所确定出的各存储位置,以实现对应用容器的源代码文件中的基础配置的资源替换,得到可直接生成目标应用安装包的源代码文件,而无需遵循传统的繁琐开发方式,缩短了应用开发过程,无需进行原有的基础能建设和兼容性测试,提升了应用程序的开发效率。
在一个实施例中,如图4所示,提供了一种基于云服务器的应用构建方法,具体包括以下步骤:
1)接收应用构建请求,并获取应用构建请求携带的数据页面。
具体地,云服务器接收用户基于所在终端设备发送的应用构建请求,并获取应用构建请求携带的数据页面。
2)提取数据页面的页面信息,并根据页面信息生成与待构建的目标应用的配置信息。
具体地,用户可在数据页面,写入待构建的目标应用的基础配置参数的具体配置数据,其中,基础配置参数可以包括应用编号或者应用ID、应用名称、应用图标、启动页或启动页URL等,进而数据页面的页面信息包括有不同基础配置参数以及各配置参数对应的具体配置数据。云服务器通过对所获取的页面信息进行分析处理,提取出各个配置参数以及相应配置参数的具体配置数据,可得到与待构建的目标应用的配置信息。
3)对配置信息进行解析,获取目标应用的配置参数。
具体地,云服务器通过对接收到的与待构建的目标应用的配置信息,进行解析,解析得到目标应用的配置参数,包括解析得到应用编码、应用名称、应用图标以及启动页等。获取各配置参数后,进一步获取与各配置参数对应的数据提取方式,根据各数据提取方式,分别提取相应配置参数的配置数据。其中,配置数据表示不同配置参数对应的详细取值或者资源文件等。
4)获取与各配置参数对应的数据提取方式,并根据各数据提取方式,提取相应配置参数的配置数据。
具体地,配置参数包括应用编码、应用名称、应用图标和启动页,还可包括与启动页对应的启动页URL、启动页跳转的网页URL和启动倒计时,配置数据表示不同配置参数对应的详细取值或者资源文件等。
其中,可根据与应用编码、应用名称、启动倒计时对应的第一数据提取方式,提取目标应用的应用编号取值、具体应用名称以及启动倒计时具体取值。
同样地,可根据与应用图标、启动页对应的第二数据提取方式,下载用户上传的与图标对应的图片,以及与启动页对应的图片,还可根据与启动页URL、启动页跳转的网页URL对应的第三数据提取方式,根据用户填写的启动页URL或启动页跳转的网页URL的具体页面地址,通过访问对应的页面地址,下载对应的资源文件,包括图片、动画或视频等具体内容。
5)获取预先上传的应用容器,并对应用容器进行初始化处理,清理应用容器的原始缓存数据,并且设置相应的默认数据。
具体地,由于预先上传至云服务器的应用容器中,可能存在残留历史数据的问题,因此需要对上传至云服务器的应用容器进行初始化处理,删除应用容器的原始缓存数据或历史残留数据等,设置必须的构建默认数据,以得到可用的应用容器。
6)获取从应用容器提供的各候选应用功能中选定的目标应用功能。
具体地,应用容器中内置有已开发好的应用程序的源代码文件,即应用容器提供了多种候选应用功能,用户可对应用容器提供的多种候选应用功能进行选择,根据用户的选择操作,可确定出用户选定的目标应用功能。
7)根据配置参数,对应用容器的源代码文件中的基础配置进行资源替换。
具体地,根据应用编码、应用名称、应用图标和启动页,确定与应用容器对应的待替换基础配置,并获取各待替换基础配置,在应用容器的源代码文件的存储位置,进而将与应用编码、应用名称、应用图标和启动页对应的配置数据,分别写入所确定出的各存储位置,完成对应用容器的源代码文件中的基础配置的资源替换操作。
8)获取资源替换后的目标应用功能的源代码文件,得到目标应用的源代码文件。
9)对目标应用的源代码文件进行编译,生成目标应用的安装包。
具体地,可采用打包工具或编译工具,对源代码文件进行编译和打包,生成得到目标应用的安装包,比如采用inno setup或InstallShield等软件打包工具实现对源代码文件的编译和打包操作。
10)获取目标应用的安装包的存储位置,并根据存储位置,生成与目标应用对应的下载链接。
具体地,生成的目标应用的安装包可存储至云服务器中、或云服务对应的本地存储中,还可存储至预设的第三方存储平台等,根据目标应用的安装包的存储位置,可生成与目标应用对应的下载链接。
11)将下载链接,发送至用户所在终端设备。
具体地,云服务器通过将下载链接发送至用户所在终端设备,用户通过在终端设备上访问所接收到的下载链接,下载目标应用的安装包至终端设备,进行基于安装包实现目标应用的安装、运行操作。
上述基于云服务器的应用构建方法中,通过获取待构建的目标应用的配置信息,并对配置信息进行解析,获取目标应用的配置参数。进而根据配置参数,对应用容器的源代码文件中的基础配置进行资源替换,得到目标应用的源代码文件。通过进一步对目标应用的源代码文件编译,生成目标应用的安装包。其中,应用容器中内置有已开发好的应用程序的源代码文件。该方法根据所提供与目标应用对应的配置参数,实现对已内置有开发好的应用程序的源代码文件进行资源替换,进而可在云服务器根据资源替换后得到的目标应用的源代码文件实现目标应用的构建,而无需遵循传统的繁琐开发方式,缩短了应用开发过程,无需进行原有的基础能建设和兼容性测试,实现较高的开发过程自动化程度,节省开发时间和开发成本,进一步提升了应用程序的开发效率。
如本申请所公开的基于云服务器的应用构建方法,其中涉及的目标应用的配置信息、目标应用的配置参数、应用容器的源代码文件、目标应用的源代码文件以及目标应用的安装包等数据,可保存于区块链上。
应该理解的是,虽然上述实施例涉及的各流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,上述实施例涉及的各流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图5所示,提供了一种基于云服务器的应用构建装置,该装置可以采用软件模块或硬件模块,或者是二者的结合成为计算机设备的一部分,该装置具体包括:配置信息获取模块502、配置参数获取模块504、源代码文件生成模块506以及安装包生成模块508,其中:
配置信息获取模块502,用于获取待构建的目标应用的配置信息。
配置参数获取模块504,用于对配置信息进行解析,获取目标应用的配置参数。
源代码文件生成模块506,用于根据配置参数,对应用容器的源代码文件中的基础配置进行资源替换,得到目标应用的源代码文件,应用容器中内置有已开发好的应用程序的源代码文件。
安装包生成模块508,用于对目标应用的源代码文件进行编译,生成目标应用的安装包。
上述基于云服务器的应用构建装置中,根据所提供与目标应用对应的配置参数,实现对已内置有开发好的应用程序的源代码文件进行资源替换,进而可在云服务器根据资源替换后得到的目标应用的源代码文件实现目标应用的构建,而无需遵循传统的繁琐开发方式,缩短了应用开发过程,无需进行原有的基础能建设和兼容性测试,实现较高的开发过程自动化程度,节省开发时间和开发成本,进一步提升了应用程序的开发效率。
在一个实施例中,源代码文件生成模块还用于:
获取从应用容器提供的各候选应用功能中选定的目标应用功能;根据配置参数,对应用容器的源代码文件中的基础配置进行资源替换;获取资源替换后的目标应用功能的源代码文件,得到目标应用的源代码文件。
在一个实施例中,源代码文件生成模块还用于:
根据应用编码、应用名称、应用图标和启动页,确定与应用容器对应的待替换基础配置;获取各待替换基础配置,在应用容器的源代码文件的存储位置;将与应用编码、应用名称、应用图标和启动页对应的配置数据,分别写入所确定出的各存储位置。
上述源代码文件生成模块,实现了对应用容器的源代码文件中的基础配置的资源替换,得到可直接生成目标应用安装包的源代码文件,而无需遵循传统的繁琐开发方式,缩短了应用开发过程,无需进行原有的基础能建设和兼容性测试,提升了应用程序的开发效率。
在一个实施例中,提供了一种基于云服务器的应用构建装置,该装置还包括配置信息生成模块,用于:
接收应用构建请求;获取应用构建请求携带的数据页面;提取数据页面的页面信息;根据页面信息生成与待构建的目标应用的配置信息。
在一个实施例中,提供了一种基于云服务器的应用构建装置,该装置还包括下载链接发送模块,用于:
获取目标应用的安装包的存储位置;根据存储位置,生成与目标应用对应的下载链接;将下载链接,发送至用户所在终端设备。
在一个实施例中,提供了一种基于云服务器的应用构建装置,该装置还包括配置数据提取模块,用于:
获取与各配置参数对应的数据提取方式;根据各数据提取方式,提取相应配置参数的配置数据。
在一个实施例中,提供了一种基于云服务器的应用构建装置,该装置还包括应用容器初始化模块,用于:
获取预先上传的应用容器;对应用容器进行初始化处理,清理应用容器的原始缓存数据,并且设置相应的默认数据。
关于基于云服务器的应用构建装置的具体限定可以参见上文中对于基于云服务器的应用构建方法的限定,在此不再赘述。上述基于云服务器的应用构建装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是云服务器,其内部结构图可以如图6所示。该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储配置信息、配置参数以及目标应用的源代码文件等数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种基于云服务器的应用构建方法。
本领域技术人员可以理解,图6中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,还提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机可读存储介质,存储有计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述各方法实施例中的步骤。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-Only Memory,ROM)、磁带、软盘、闪存或光存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic Random Access Memory,DRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
Claims (10)
1.一种基于云服务器的应用构建方法,其特征在于,所述方法包括:
获取待构建的目标应用的配置信息;
对所述配置信息进行解析,获取所述目标应用的配置参数;
根据所述配置参数,对应用容器的源代码文件中的基础配置进行资源替换,得到所述目标应用的源代码文件;所述应用容器中内置有已开发好的应用程序的源代码文件;
对所述目标应用的源代码文件进行编译,生成目标应用的安装包。
2.根据权利要求1所述的方法,其特征在于,根据所述配置参数,对应用容器的源代码文件中的基础配置进行资源替换,得到所述目标应用的源代码文件,包括:
获取从所述应用容器提供的各候选应用功能中选定的目标应用功能;
根据所述配置参数,对应用容器的源代码文件中的基础配置进行资源替换;
获取资源替换后的所述目标应用功能的源代码文件,得到所述目标应用的源代码文件。
3.根据权利要求1所述的方法,其特征在于,所述获取待构建的目标应用的配置参数信息,包括:
接收应用构建请求;
获取所述应用构建请求携带的数据页面;
提取所述数据页面的页面信息;
根据所述页面信息生成与所述待构建的目标应用的配置信息。
4.根据权利要求3所述的方法,其特征在于,所述配置参数包括:应用编码、应用名称、应用图标和启动页;所述根据所述配置参数,对应用容器的源代码文件中的基础配置进行资源替换,包括:
根据所述应用编码、应用名称、应用图标和启动页,确定与所述应用容器对应的待替换基础配置;
获取各所述待替换基础配置,在所述应用容器的源代码文件的存储位置;
将与所述应用编码、应用名称、应用图标和启动页对应的配置数据,分别写入所确定出的各存储位置。
5.根据权利要求1至3任意一项所述的方法,其特征在于,所述方法还包括:
获取所述目标应用的安装包的存储位置;
根据所述存储位置,生成与所述目标应用对应的下载链接;
将所述下载链接,发送至用户所在终端设备。
6.根据权利要求4所述的方法,其特征在于,在所述对所述配置信息进行解析,获取所述目标应用的配置参数之后,包括:
获取与各所述配置参数对应的数据提取方式;
根据各所述数据提取方式,提取相应配置参数的配置数据。
7.根据权利要求1至3任意一项所述的方法,其特征在于,在所述根据所述配置参数,对应用容器的源代码文件中的基础配置进行资源替换,得到所述目标应用的源代码文件之前,还包括:
获取预先上传的应用容器;
对所述应用容器进行初始化处理,清理所述应用容器的原始缓存数据,并且设置相应的默认数据。
8.一种基于云服务器的应用构建装置,其特征在于,所述装置包括:
配置信息获取模块,用于获取待构建的目标应用的配置信息;
配置参数获取模块,用于对所述配置信息进行解析,获取所述目标应用的配置参数;
源代码文件生成模块,用于根据所述配置参数,对应用容器的源代码文件中的基础配置进行资源替换,得到所述目标应用的源代码文件;所述应用容器中内置有已开发好的应用程序的源代码文件;
安装包生成模块,用于对所述目标应用的源代码文件进行编译,生成目标应用的安装包。
9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7中任一项所述的方法的步骤。
10.一种计算机可读存储介质,存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110396788.2A CN115202673A (zh) | 2021-04-13 | 2021-04-13 | 基于云服务器的应用构建方法、装置和计算机设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110396788.2A CN115202673A (zh) | 2021-04-13 | 2021-04-13 | 基于云服务器的应用构建方法、装置和计算机设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115202673A true CN115202673A (zh) | 2022-10-18 |
Family
ID=83570443
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110396788.2A Pending CN115202673A (zh) | 2021-04-13 | 2021-04-13 | 基于云服务器的应用构建方法、装置和计算机设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115202673A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116991471A (zh) * | 2023-09-26 | 2023-11-03 | 腾讯科技(深圳)有限公司 | 安装包文件处理方法、装置、设备及存储介质 |
-
2021
- 2021-04-13 CN CN202110396788.2A patent/CN115202673A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116991471A (zh) * | 2023-09-26 | 2023-11-03 | 腾讯科技(深圳)有限公司 | 安装包文件处理方法、装置、设备及存储介质 |
CN116991471B (zh) * | 2023-09-26 | 2024-01-05 | 腾讯科技(深圳)有限公司 | 安装包文件处理方法、装置、设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103001963B (zh) | 用于最小下载和模拟的页面导航特征的方法和系统 | |
US20130132422A1 (en) | System and method for creating and controlling an application operating on a plurality of computer platform types | |
CN106997298A (zh) | 一种应用资源获取方法及装置 | |
CN107276842B (zh) | 接口测试方法、装置及电子设备 | |
US11023558B1 (en) | Executing functions on-demand on a server utilizing web browsers | |
Colombo-Mendoza et al. | MobiCloUP!: a PaaS for cloud services-based mobile applications | |
CN106533713A (zh) | 一种应用部署方法及设备 | |
CN104423961A (zh) | 一种生成测试脚本的方法及系统 | |
CN105335132A (zh) | 一种自定义应用程序功能的方法、装置以及系统 | |
CN110249324B (zh) | 在多个网页上维护会话标识符以进行内容选择 | |
CN110213105A (zh) | 一种跨平台微应用创建方法 | |
US11729248B2 (en) | Web application component migration to a cloud computing system | |
CN111723314B (zh) | 网页展示方法、装置、电子设备及计算机可读存储介质 | |
CN110020370B (zh) | 在客户端应用中实现动画的方法、装置及动画脚本的框架 | |
CN112235132B (zh) | 动态配置服务的方法、装置、介质以及服务器 | |
CN115202673A (zh) | 基于云服务器的应用构建方法、装置和计算机设备 | |
US9471299B1 (en) | Updating code within an application | |
US9934019B1 (en) | Application function conversion to a service | |
CN110362305B (zh) | 一种表单组件状态切换方法及装置 | |
Aderhold et al. | The common implementation framework as service–towards novel applications for streamlined presentation of 3D content on the web | |
CN107092601B (zh) | 资源文件构建方法、资源文件应用方法及装置 | |
CN114254232A (zh) | 云产品页面生成方法、装置、计算机设备和存储介质 | |
CN110851746B (zh) | 爬虫种子生成方法及装置 | |
WO2024032087A1 (zh) | 局部动态化页面生成方法、装置、电子设备、计算机可读存储介质及计算机程序产品 | |
CN111870937B (zh) | 一种数据处理方法、模拟服务器及时效性应用 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |