CN114168112A - 应用开发方法、系统、设备及计算机可读存储介质 - Google Patents
应用开发方法、系统、设备及计算机可读存储介质 Download PDFInfo
- Publication number
- CN114168112A CN114168112A CN202111504133.9A CN202111504133A CN114168112A CN 114168112 A CN114168112 A CN 114168112A CN 202111504133 A CN202111504133 A CN 202111504133A CN 114168112 A CN114168112 A CN 114168112A
- Authority
- CN
- China
- Prior art keywords
- application
- development
- preset
- instruction
- native
- 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/20—Software design
-
- 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/31—Programming languages or programming paradigms
-
- 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
Abstract
本发明公开了一种应用开发方法,所述应用开发方法包括以下步骤:搭建原生开发环境;在所述原生开发环境下,获取第一开发指令,并根据所述第一开发指令和预设依赖库,生成原生应用;搭建预设跨端开发环境;在所述预设跨端开发环境下,获取第二开发指令,根据所述第二开发指令和预设组件库,生成应用资源包;将所述应用资源包集成至所述原生应用,获得混合应用。本发明还公开了一种系统、设备及计算机可读存储介质。本发明降低了应用的开发难度和维护成本。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及一种应用开发方法、系统、设备及计算机可读存储介质。
背景技术
随着在万物互联的时代,移动终端设备成了人们必备的工具之一,通过安装各种移动应用可以实现诸多功能。目前移动端主要分为Android和iOS两大系统,而针对目前的移动端平台的差异,目前有三种开发方式:原生开发Native App(原生型应用)、混合开发Hybrid App(混合型应用)、网页应用类型开发Web App(网页型应用)。其中,混合开发Hybrid App,一部分功能使用原生的,在两套代码上开发,一部分使用一套代码开发能在两个端运行的功能;目前流行的混合开发Hybrid App技术方案有:react native、ionic、flutter。其中,react native编译较麻烦,ionic偏向的是UI框架,flutter甚至需要学习dart语言,因此,react native、ionic、flutter这三种技术方案在一定程度上都需要维护两套代码,应用的开发难度和维护成本较高。
上述内容仅用于辅助理解本发明的技术方案,并不代表承认上述内容是现有技术。
发明内容
本发明的主要目的在于提供一种应用开发方法,旨在解决应用的开发难度和维护成本较高的技术问题。
为实现上述目的,本发明提供一种应用开发方法,所述应用开发方法包括以下步骤:
搭建原生开发环境;
在所述原生开发环境下,获取第一开发指令,并根据所述第一开发指令和预设依赖库,生成原生应用;
搭建预设跨端开发环境;
在所述预设跨端开发环境下,获取第二开发指令,根据所述第二开发指令和预设组件库,生成应用资源包;
将所述应用资源包集成至所述原生应用,获得混合应用。
优选地,所述将所述应用资源包集成至所述原生应用,获得混合应用的步骤之前包括:
获取所述应用资源包的应用标识信息和审核信息;
在所述应用标识信息和所述审核信息符合预设集成条件时,执行步骤:将所述应用资源包集成至所述原生应用,获得混合应用。
优选地,所述预设依赖库包含预设基础依赖包,所述第一开发指令包括第一选取指令和第一编辑指令,所述在所述原生开发环境下,获取第一开发指令,并根据所述第一开发指令和预设依赖库,生成原生应用的步骤包括:
在所述原生开发环境下,封装所述预设依赖库中的预设基础依赖包,获得功能组件;
获取第一选取指令,并根据第一选取指令,从所述功能组件中选取第一应用业务功能组件;
获取第一编辑指令,并根据第一编辑指令对所述第一应用业务组件进行编辑,生成原生应用。
优选地,所述第二开发指令包括第二选取指令和第二编辑指令,所述在所述预设跨端开发环境下,获取第二开发指令,根据所述第二开发指令和预设组件库,生成应用资源包的步骤包括:
在所述预设跨端开发环境下,获取第二选取指令,并根据所述第二选取指令,从预设组件库选取第二应用业务功能组件;
获取第二编辑指令,并根据所述第二编辑指令对所述第二应用业务组件进行编辑,获得目标应用文件;
将所述目标应用文件进行打包,生成应用资源包。
优选地,所述搭建原生开发环境的步骤包括:
获取预设原生应用开发环境的搭建脚本并执行所述搭建脚本;
下载预设原生应用开发环境的安装配置文件,并进行安装或配置,以搭建所述原生开发环境。
优选地,所述搭建预设跨端开发环境的步骤包括:
下载预设跨端开发环境的跨端开发工具,并安装所述跨端开发工具,其中所述跨端开发工具中内置所述预设跨端开发环境。
优选地,所述将所述应用资源包集成至所述原生应用,获得混合应用的步骤包括:
将所述应用资源包部署至所述原生应用的预设内置运行路径或预设独立运行路径中,获得混合应用。
此外,为实现上述目的,本发明还提供一种应用开发系统,所述应用开发系统包括:
第一构建模块,用于搭建原生开发环境;
第一开发模块,用于在所述原生开发环境下,获取第一开发指令,并根据所述第一开发指令和预设依赖库,生成原生应用;
第二构建模块,用于搭建预设跨端开发环境;
第二开发模块,用于在所述预设跨端开发环境下,获取第二开发指令,根据所述第二开发指令和预设组件库,生成应用资源包;
集成模块,用于将所述应用资源包集成至所述原生应用,获得混合应用。
此外,为实现上述目的,本发明还提供一种应用开发设备,所述应用开发设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的应用开发程序,所述应用开发程序被所述处理器执行时实现如上所述任一项所述的应用开发方法的步骤。
此外,为实现上述目的,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有应用开发程序,所述应用开发程序被处理器执行时实现如上所述任一项所述的应用开发方法的步骤。
本发明提出的一种应用开发方法,首先可以通过搭建原生开发环境,进而在所述原生开发环境下,可以获取开发人员基于核心业务功能需求下达的第一开发指令,并根据所述第一开发指令,选择预设依赖库中的对应的依赖包,并对所述依赖包进行编辑,从而获得相应的核心业务功能模块,生成原生应用。其次,可以通过搭建与预设跨端开发框架(如uniApp)对应的跨端开发环境。可以获取开发人员基于非核心的子业务功能需求下达的第二开发指令,根据所述第二开发指令,获取预设组件库中的相应的基础功能组件,并对所述功能组件进行编辑,从而获得相应的包含非核心的子业务的应用文件,并对所述应用文件进行打包,获得相应的应用资源包。当然可以理解的是,所述应用资源包也可以是由合作方的开发者进行开发的。最后,将所述应用资源包集成至所述原生应用,获得混合应用。本发明中,通过核心业务功能采用原生开发的方式,而非核心的子业务功能和/或合作方接入的功能则采用预设跨端开发方式(如uniApp开发),则非核心的子业务功能可以实现一套代码运行到多端的效果且易于扩展更多的功能,从而大幅降低了应用的开发难度和维护成本。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。为了更清楚地说明本申请实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明应用开发方法第一实施例的流程示意图;
图2为本发明应用开发方法所述混合应用的一结构示意图;
图3为本发明应用开发方法第二实施例的流程示意图;
图4是本发明实施例方案涉及的应用开发系统的示意图;
图5是本发明实施例方案涉及的硬件运行环境的设备结构示意图。
本申请目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。通过上述附图,已示出本申请明确的实施例,后文中将有更详细的描述。这些附图和文字描述并不是为了通过任何方式限制本申请构思的范围,而是通过参考特定实施例为本领域技术人员说明本申请的概念。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素,此外,本申请不同实施例中具有同样命名的部件、特征、要素可能具有相同含义,也可能具有不同含义,其具体含义需以其在该具体实施例中的解释或者进一步结合该具体实施例中上下文进行确定。
应当理解,尽管在本文可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本文范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语"如果"可以被解释成为"在……时"或"当……时"或"响应于确定"。再者,如同在本文中所使用的,单数形式“一”、“一个”和“该”旨在也包括复数形式,除非上下文中有相反的指示。应当进一步理解,术语“包含”、“包括”表明存在所述的特征、步骤、操作、元件、组件、项目、种类、和/或组,但不排除一个或多个其他特征、步骤、操作、元件、组件、项目、种类、和/或组的存在、出现或添加。本申请使用的术语“或”、“和/或”、“包括以下至少一个”等可被解释为包括性的,或意味着任一个或任何组合。例如,“包括以下至少一个:A、B、C”意味着“以下任一个:A;B;C;A和B;A和C;B和C;A和B和C”,再如,“A、B或C”或者“A、B和/或C”意味着“以下任一个:A;B;C;A和B;A和C;B和C;A和B和C”。仅当元件、功能、步骤或操作的组合在某些方式下内在地互相排斥时,才会出现该定义的例外。
应该理解的是,虽然本申请实施例中的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,其可以以其他的顺序执行。而且,图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,其执行顺序也不必然是依次进行,而是可以与其他步骤或者其他步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
取决于语境,如在此所使用的词语“如果”、“若”可以被解释成为“在……时”或“当……时”或“响应于确定”或“响应于检测”。类似地,取决于语境,短语“如果确定”或“如果检测(陈述的条件或事件)”可以被解释成为“当确定时”或“响应于确定”或“当检测(陈述的条件或事件)时”或“响应于检测(陈述的条件或事件)”。
需要说明的是,在本文中,采用了诸如S100、S200等步骤代号,其目的是为了更清楚简要地表述相应内容,不构成顺序上的实质性限制,本领域技术人员在具体实施时,可能会先执行S200后执行S100等,但这些均应在本申请的保护范围之内。
应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
在后续的描述中,使用用于表示元件的诸如“模块”、“部件”或者“单元”的后缀仅为了有利于本申请的说明,其本身没有特定的意义。因此,“模块”、“部件”或者“单元”可以混合地使用。
参照图1,本发明第一实施例提供一种应用开发方法,所述应用开发方法包括:
步骤S100,搭建原生开发环境;
具体地,所述原生开发环境可以包括Android和/或iOS系统的原生应用开发环境,当然,还可以包括其他操作系统,如windows phone、Symbian、BlackBerry OS、web os、windows mobile、Harmony(鸿蒙)等。所述原生开发环境由软件工具和环境集成机制构成,前者用以支持软件开发的相关过程、活动和任务,后者为工具集成和软件的开发、维护及管理提供统一的支持。可以通过IDE(Integrated Development Environment,集成开发环境)实现所述原生开发环境的搭建。可以理解的是,本实施例中对于具体搭建所述原生开发环境的方式并不作限制。
更进一步地,在另一实施例中,步骤S100包括:
步骤S110,获取预设原生应用开发环境的搭建脚本并执行所述搭建脚本;
步骤S120,下载预设原生应用开发环境的安装配置文件,并进行安装或配置,以搭建所述原生开发环境。
具体地,获取预设原生应用开发环境的搭建脚本并执行所述搭建脚本,构建了所述原生开发环境的环境集成机制,并下载预设原生应用开发环境的安装配置文件,并进行安装或配置,获得相应的软件工具,以搭建所述原生开发环境。以搭建Android系统的原生应用开发环境为例,通过获取并安装Eclipse(集成开发环境工具),然后在Eclipse平台上安装JDK(Java Development Kit,Java开发工具包)、Android SDK(Android SoftwareDevelopment Kit,安卓软件开发工具包)和ADT(Android Development Tools,安卓开发工具),以实现Android系统的原生应用开发环境的搭建。
步骤S200,在所述原生开发环境下,获取第一开发指令,并根据所述第一开发指令和预设依赖库,生成原生应用;
具体地,一个操作系统项目中会包含多个依赖库,每个依赖库都包含相应的依赖包(即项目代码),开发人员基于该操作系统项目开发应用程序时,可以直接引用这些依赖库,而无需重新编写项目代码,从而提高开发效率和降低整体项目维护成本。在所述原生开发环境下,开发人员可以根据待开发应用的核心业务功能需求,下发相应的指令(即第一开发指令)。进而应用开发系统可以根据接收到的所述第一开发指令,获取预设依赖库中的对应的依赖包,并对所述依赖包进行编辑,从而获得相应的核心业务功能模块,生成原生应用。本实施例中,通过原生开发的方式开发核心业务功能,则核心业务功能具备良好的稳定性和健壮性,以保证核心业务功能稳定高效。
在另一实施例中,所述预设依赖库包含预设基础依赖包,所述第一开发指令包括第一选取指令和第一编辑指令,步骤S200包括:
步骤S210,在所述原生开发环境下,封装所述预设依赖库中的预设基础依赖包,获得功能组件;
步骤S220,获取第一选取指令,并根据第一选取指令,从所述功能组件中选取第一应用业务功能组件;
步骤S230,获取第一编辑指令,并根据第一编辑指令对所述第一应用业务组件进行编辑,生成原生应用。
具体地,所述预设依赖库包含预设基础依赖包,所述第一开发指令包括第一选取指令和第一编辑指令。在所述原生开发环境下,封装所述预设依赖库中的预设基础依赖包,获得功能组件;开发者可以根据待开发应用的基础功能需求选择合适的依赖包作为所述预设基础依赖包。通过对所述基础依赖包进行封装,并进行初始化和基础配置等操作,以便于调用所述基础依赖包的功能。然后开发者可以根据具体的业务需要下达第一选取指令。应用开发系统在获得所述第一选取指令,可以根据第一选取指令,从所述功能组件中选取第一应用业务功能组件。进一步获取开发者下达的第一编辑指令,并根据第一编辑指令对所述第一应用业务组件进行编辑,生成原生应用。其中,所述第一应用业务组件可以是待开发应用的核心业务组件。
步骤S300,搭建预设跨端开发环境;
具体地,搭建与预设跨端开发框架对应的跨端开发环境。其中所述预设跨端开发框架可以为uni-app当然也可以是其他可以实现本实施例中实施方法的其他跨端框架。
更进一步地,在另一实施例中,步骤S300包括:
步骤S310,下载预设跨端开发环境的跨端开发工具,并安装所述跨端开发工具,其中所述跨端开发工具中内置所述预设跨端开发环境。
具体地,下载预设跨端开发环境的跨端开发工具,并安装所述跨端开发工具,其中所述跨端开发工具中内置所述预设跨端开发环境,以搭建所述预设跨端开发环境。以uni-App为例,下载并安装HBuilderX(另一集成开发环境工具,即所述跨端开发工具),由于所述HBuilderX内置相关开发环境因此,安装后无需进行其他配置即可完成实现所述预设跨端开发环境的搭建,进而进行后续的开发操作。
步骤S400,在所述预设跨端开发环境下,获取第二开发指令,根据所述第二开发指令和预设组件库,生成应用资源包;
具体地,组件是一个单独且可复用的功能模块的封装。所述预设组件库包含预设数量的基础功能组件。开发人员可以根据待开发应用的非核心的子业务功能需求,下发相应的指令(即第二开发指令)。进而应用开发系统可以根据接收到的所述第二开发指令,获取预设组件库中的相应的基础功能组件,并对所述功能组件进行编辑,从而获得相应的包含非核心的子业务应用文件,并对所述应用文件进行打包,获得相应的应用资源包。可以理解的是,所述应用资源包的开发过程也可以由合作方进行完成。本实施例中,非核心的子业务功能和合作方接入的功能可以采用预设跨端开发(如uniApp开发)的方式,从而即保证了子业务的灵活性和丰富性。
在另一实施例中,所述第二开发指令包括第二选取指令和第二编辑指令,步骤S400包括:
步骤S410,在所述预设跨端开发环境下,获取第二选取指令,并根据所述第二选取指令,从预设组件库选取第二应用业务功能组件;
步骤S420,获取第二编辑指令,并根据所述第二编辑指令对所述第二应用业务组件进行编辑,获得目标应用文件;
步骤S430,将所述目标应用文件进行打包,生成应用资源包。
具体地,所述第二开发指令包括第二选取指令和第二编辑指令。在所述预设跨端开发环境下,开发者可以根据待开发应用非核心的子业务功能需求,下发第二选取指令和第二编辑指令。应用开发系统获得所述第二选取指令后,根据所述第二选取指令,从预设组件库选取第二应用业务功能组件。获取第二编辑指令,并根据所述第二编辑指令对所述第二应用业务组件进行编辑,获得目标应用文件,最后将所述目标应用文件进行打包,生成应用资源包(即应用wgt包)。
步骤S500,将所述应用资源包集成至所述原生应用,获得混合应用。
具体地,参照图2,图2为本发明应用开发方法所述混合应用的一结构示意图。其中,所述跨端开发以uniApp为例,通过对基础依赖中的依赖包进行封装,则获得基础功能,对所述基础功能进行选取和编辑,则获得相应的业务功能组件,对所述业务功能组件进行选取和编辑,则生成对应的原生应用,再将uniApp开发的应用资源包集成在所述原生应用中,则获得了最终的混合应用。更进一步地,所述应用资源包可以是由所述原生应用的内部团队开发的内部应用资源包,进而将所述内部应用资源包集成在所述原生应用中,作为各子业务应用;也可以是由合作方开发的外部应用资源包,若由合作方开发,则需要合作方先获取相应的应用标识信息(即AppId,应用标识符),以便获得合作方开发的外部应用资源包后集成在所述原生应用对应的运行路径中,作为各合作方模块。本实施例中对于所述应用资源包的具体开发者并不做要求,所述原生应用中包含所述预设跨端开发框架的跨端软件开发工具包(如uniMPsdk),获得所述应用资源包后,可通过所述跨端软件开发工具包将所述应用资源包解压至所述原生应用的预设运行路径中,以使所述原生应用调用所述应用资源包中的功能,从而获得混合应用。
在另一实施例中,步骤S500包括:
步骤S510,将所述应用资源包部署至所述原生应用的预设内置运行路径或预设独立运行路径中,获得混合应用。
具体地,部署在所述预设内置运行路径中的应用资源包可以作为内置模块不被删除,而部署在所述预设独立运行路径中的应用资源包可以作为独立模块,可以根据需求进行删改。从而保证了所述混合应用在功能上的丰富性和灵活性。
在本发明第一实施例中,首先可以通过搭建原生开发环境,进而在所述原生开发环境下,可以获取开发人员基于核心业务功能需求下达的第一开发指令,并根据所述第一开发指令,选择预设依赖库中的对应的依赖包,并对所述依赖包进行编辑,从而获得相应的核心业务功能模块,生成原生应用。其次,可以通过搭建与预设跨端开发框架(如uniApp)对应的跨端开发环境。可以获取开发人员基于非核心的子业务功能需求下达的第二开发指令,根据所述第二开发指令,获取预设组件库中的相应的基础功能组件,并对所述功能组件进行编辑,从而获得相应的包含非核心的子业务的应用文件,并对所述应用文件进行打包,获得相应的应用资源包。当然可以理解的是,所述应用资源包也可以是由合作方的开发者进行开发的。最后,将所述应用资源包集成至所述原生应用,获得混合应用。本实施例中,通过核心业务功能采用原生开发的方式,而非核心的子业务功能和/或合作方接入的功能则采用预设跨端开发方式(如uniApp开发),则非核心的子业务功能可以实现一套代码运行到多端的效果且易于扩展更多的功能,从而大幅降低了应用的开发难度和维护成本。
进一步地,参照图3,本发明第二实施例提供一种应用开发方法,基于上述图1所示的实施例,步骤S500之前包括以下步骤:
步骤S520,获取所述应用资源包的应用标识信息和审核信息;
步骤S521,在所述应用标识信息和所述审核信息符合预设集成条件时,执行步骤:将所述应用资源包集成至所述原生应用,获得混合应用。
具体地,由合作方开发所述应用资源包,则需要合作方先获取相应的应用标识信息(即AppId,应用标识符),以区分不同的应用资源包。此外,为避免合作方开发的应用资源包不符合预设开发标准,则需要将所述应用资源包输出至预设审核人员处进行审核。应用开发系统在获取所述应用资源包的应用标识信息和所述开发者的审核信息后,若所述应用标识信息无误且通过审核(即符合预设集成条件),则再执行步骤S500,将所述应用资源包集成到所述原生应用上,获得混合应用。本实施例通过对合作方的应用资源包进行审核,在丰富所述混合应用功能的前提下,也保证安全性与稳定性。
如图4所示,图4是本发明实施例方案涉及的应用开发系统的示意图。
本发明一实施例提供了一种应用开发系统,所述应用开发系统包括:
第一构建模块10,用于搭建原生开发环境;
第一开发模块20,用于在所述原生开发环境下,获取第一开发指令,并根据所述第一开发指令和预设依赖库,生成原生应用;
第二构建模块30,用于搭建预设跨端开发环境;
第二开发模块40,用于在所述预设跨端开发环境下,获取第二开发指令,根据所述第二开发指令和预设组件库,生成应用资源包;
集成模块50,用于将所述应用资源包集成至所述原生应用,获得混合应用。
更进一步地,所述应用开发系统还包括:审核模块;
审核模块,用于获取所述应用资源包的应用标识信息和审核信息;
审核模块,用于在所述应用标识信息和所述审核信息符合预设集成条件时,执行步骤:将所述应用资源包集成至所述原生应用,获得混合应用。
更进一步地,所述预设依赖库包含预设基础依赖包,所述第一开发指令包括第一选取指令和第一编辑指令所述应用开发系统还包括:
第一开发模块20,还用于在所述原生开发环境下,封装所述预设依赖库中的预设基础依赖包,获得功能组件;
第一开发模块20,还用于获取第一选取指令,并根据第一选取指令,从所述功能组件中选取第一应用业务功能组件;
第一开发模块20,还用于获取第一编辑指令,并根据第一编辑指令对所述第一应用业务组件进行编辑,生成原生应用。
更进一步地,所述第二开发指令包括第二选取指令和第二编辑指令,所述应用开发系统还包括:
第二开发模块40,还用于在所述预设跨端开发环境下,获取第二选取指令,并根据所述第二选取指令,从预设组件库选取第二应用业务功能组件;
第二开发模块40,还用于获取第二编辑指令,并根据所述第二编辑指令对所述第二应用业务组件进行编辑,获得目标应用文件;
第二开发模块40,还用于将所述目标应用文件进行打包,生成应用资源包。
更进一步地,所述应用开发系统还包括:
第一构建模块10,还用于获取预设原生应用开发环境的搭建脚本并执行所述搭建脚本;
第一构建模块10,还用于下载预设原生应用开发环境的安装配置文件,并进行安装或配置,以搭建所述原生开发环境。
更进一步地,所述应用开发系统还包括:
第二构建模块30,还用于下载预设跨端开发环境的跨端开发工具,并安装所述跨端开发工具,其中所述跨端开发工具中内置所述预设跨端开发环境。
更进一步地,所述应用开发系统还包括:
集成模块50,还用于将所述应用资源包部署至所述原生应用的预设内置运行路径或预设独立运行路径中,获得混合应用。
如图5所示,图5是本发明实施例方案涉及的硬件运行环境的设备结构示意图。
所述应用开发设备可以是手机、平板电脑、笔记本电脑、掌上电脑、个人数字助理(Personal Digital Assistant,PDA)、数字电视、台式计算机等可移动或固定的终端设备。
如图5所示,该设备可以包括:处理器1001,例如CPU,网络接口1004,用户接口1003,存储器1005,通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(Display)、输入单元比如键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器1005可以是高速RAM存储器,也可以是稳定的存储器(non-volatile memory),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。
可选地,该设备还可以包括摄像头、RF(Radio Frequency,射频)电路,传感器、音频电路、WiFi模块等等。其中,传感器比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示屏的亮度,关闭显示屏和/或背光。作为运动传感器的一种,重力加速度传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别移动终端姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;当然,移动终端还可配置陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。
本领域技术人员可以理解,图5中示出的设备结构并不构成对所述应用开发设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
如图5所示,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及应用开发应用程序。
在图5所示的装置中,处理器1001可以用于调用存储器1005中存储的应用开发程序,并执行以下操作:
搭建原生开发环境;
在所述原生开发环境下,获取第一开发指令,并根据所述第一开发指令和预设依赖库,生成原生应用;
搭建预设跨端开发环境;
在所述预设跨端开发环境下,获取第二开发指令,根据所述第二开发指令和预设组件库,生成应用资源包;
将所述应用资源包集成至所述原生应用,获得混合应用。
更进一步地,处理器1001还可以用于调用存储器1005中存储的应用开发程序,并执行以下操作:
获取所述应用资源包的应用标识信息和审核信息;
在所述应用标识信息和所述审核信息符合预设集成条件时,执行步骤:将所述应用资源包集成至所述原生应用,获得混合应用。
更进一步地,所述预设依赖库包含预设基础依赖包,所述第一开发指令包括第一选取指令和第一编辑指令,处理器1001还可以用于调用存储器1005中存储的应用开发程序,并执行以下操作:
在所述原生开发环境下,封装所述预设依赖库中的预设基础依赖包,获得功能组件;
获取第一选取指令,并根据第一选取指令,从所述功能组件中选取第一应用业务功能组件;
获取第一编辑指令,并根据第一编辑指令对所述第一应用业务组件进行编辑,生成原生应用。
更进一步地,所述第二开发指令包括第二选取指令和第二编辑指令,处理器1001还可以用于调用存储器1005中存储的应用开发程序,并执行以下操作:
在所述预设跨端开发环境下,获取第二选取指令,并根据所述第二选取指令,从预设组件库选取第二应用业务功能组件;
获取第二编辑指令,并根据所述第二编辑指令对所述第二应用业务组件进行编辑,获得目标应用文件;
将所述目标应用文件进行打包,生成应用资源包。
更进一步地,处理器1001还可以用于调用存储器1005中存储的应用开发程序,并执行以下操作:
获取预设原生应用开发环境的搭建脚本并执行所述搭建脚本;
下载预设原生应用开发环境的安装配置文件,并进行安装或配置,以搭建所述原生开发环境。
更进一步地,处理器1001还可以用于调用存储器1005中存储的应用开发程序,并执行以下操作:
下载预设跨端开发环境的跨端开发工具,并安装所述跨端开发工具,其中所述跨端开发工具中内置所述预设跨端开发环境。
更进一步地,处理器1001还可以用于调用存储器1005中存储的应用开发程序,并执行以下操作:
将所述应用资源包部署至所述原生应用的预设内置运行路径或预设独立运行路径中,获得混合应用。
此外,本发明实施例还提出一种计算机可读存储介质。
所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述实施例提供的应用开发方法中的操作,具体实现方式可以参照上述实施例,在此不多赘述。
可以理解,上述场景仅是作为示例,并不构成对于本申请实施例提供的技术方案的应用场景的限定,本申请的技术方案还可应用于其他场景。例如,本领域普通技术人员可知,随着系统架构的演变和新业务场景的出现,本申请实施例提供的技术方案对于类似的技术问题,同样适用。
上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。
本申请实施例方法中的步骤可以根据实际需要进行顺序调整、合并和删减。
本申请实施例设备中的单元可以根据实际需要进行合并、划分和删减。
在本申请中,对于相同或相似的术语概念、技术方案和/或应用场景描述,一般只在第一次出现时进行详细描述,后面再重复出现时,为了简洁,一般未再重复阐述,在理解本申请技术方案等内容时,对于在后未详细描述的相同或相似的术语概念、技术方案和/或应用场景描述等,可以参考其之前的相关详细描述。
在本申请中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
本申请技术方案的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本申请记载的范围。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上的一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,被控终端,或者网络设备等)执行本申请每个实施例的方法。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行计算机程序指令时,全部或部分地产生按照本申请实施例的流程或功能。计算机可以是通用计算机、专用计算机、计算机网络,或者其他可编程装置。计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线)或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。可用介质可以是磁性介质,(例如,软盘、存储盘、磁带)、光介质(例如,DVD),或者半导体介质(例如固态存储盘Solid State Disk(SSD))等。
以上仅为本申请的优选实施例,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本申请的专利保护范围内。
Claims (10)
1.一种混合应用开发方法,其特征在于,所述应用开发方法包括以下步骤:
搭建原生开发环境;
在所述原生开发环境下,获取第一开发指令,并根据所述第一开发指令和预设依赖库,生成原生应用;
搭建预设跨端开发环境;
在所述预设跨端开发环境下,获取第二开发指令,根据所述第二开发指令和预设组件库,生成应用资源包;
将所述应用资源包集成至所述原生应用,获得混合应用。
2.如权利要求1所述的应用开发方法,其特征在于,所述将所述应用资源包集成至所述原生应用,获得混合应用的步骤之前包括:
获取所述应用资源包的应用标识信息和审核信息;
在所述应用标识信息和所述审核信息符合预设集成条件时,执行步骤:将所述应用资源包集成至所述原生应用,获得混合应用。
3.如权利要求1所述的应用开发方法,其特征在于,所述预设依赖库包含预设基础依赖包,所述第一开发指令包括第一选取指令和第一编辑指令,所述在所述原生开发环境下,获取第一开发指令,并根据所述第一开发指令和预设依赖库,生成原生应用的步骤包括:
在所述原生开发环境下,封装所述预设依赖库中的预设基础依赖包,获得功能组件;
获取第一选取指令,并根据第一选取指令,从所述功能组件中选取第一应用业务功能组件;
获取第一编辑指令,并根据第一编辑指令对所述第一应用业务组件进行编辑,生成原生应用。
4.如权利要求1所述的应用开发方法,其特征在于,所述第二开发指令包括第二选取指令和第二编辑指令,所述在所述预设跨端开发环境下,获取第二开发指令,根据所述第二开发指令和预设组件库,生成应用资源包的步骤包括:
在所述预设跨端开发环境下,获取第二选取指令,并根据所述第二选取指令,从预设组件库选取第二应用业务功能组件;
获取第二编辑指令,并根据所述第二编辑指令对所述第二应用业务组件进行编辑,获得目标应用文件;
将所述目标应用文件进行打包,生成应用资源包。
5.如权利要求1所述的应用开发方法,其特征在于,所述搭建原生开发环境的步骤包括:
获取预设原生应用开发环境的搭建脚本并执行所述搭建脚本;
下载预设原生应用开发环境的安装配置文件,并进行安装或配置,以搭建所述原生开发环境。
6.如权利要求1所述的应用开发方法,其特征在于,所述搭建预设跨端开发环境的步骤包括:
下载预设跨端开发环境的跨端开发工具,并安装所述跨端开发工具,其中所述跨端开发工具中内置所述预设跨端开发环境。
7.如权利要求1至6任一项所述的应用开发方法,其特征在于,所述将所述应用资源包集成至所述原生应用,获得混合应用的步骤包括:
将所述应用资源包部署至所述原生应用的预设内置运行路径或预设独立运行路径中,获得混合应用。
8.一种应用开发系统,其特征在于,所述应用开发系统包括:
第一构建模块,用于搭建原生开发环境;
第一开发模块,用于在所述原生开发环境下,获取第一开发指令,并根据所述第一开发指令和预设依赖库,生成原生应用;
第二构建模块,用于搭建预设跨端开发环境;
第二开发模块,用于在所述预设跨端开发环境下,获取第二开发指令,根据所述第二开发指令和预设组件库,生成应用资源包;
集成模块,用于将所述应用资源包集成至所述原生应用,获得混合应用。
9.一种应用开发设备,其特征在于,所述应用开发设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的应用开发程序,所述应用开发程序被所述处理器执行时实现如权利要求1至7中任一项所述的应用开发方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有应用开发程序,所述应用开发程序被处理器执行时实现如权利要求1至7中任一项所述的应用开发方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111504133.9A CN114168112A (zh) | 2021-12-09 | 2021-12-09 | 应用开发方法、系统、设备及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111504133.9A CN114168112A (zh) | 2021-12-09 | 2021-12-09 | 应用开发方法、系统、设备及计算机可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114168112A true CN114168112A (zh) | 2022-03-11 |
Family
ID=80485241
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111504133.9A Pending CN114168112A (zh) | 2021-12-09 | 2021-12-09 | 应用开发方法、系统、设备及计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114168112A (zh) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106951265A (zh) * | 2017-03-29 | 2017-07-14 | 武汉斗鱼网络科技有限公司 | 开发环境搭建方法及装置 |
CN112685035A (zh) * | 2020-12-25 | 2021-04-20 | 京东数字科技控股股份有限公司 | 项目开发方法及装置、计算机可读存储介质、电子设备 |
-
2021
- 2021-12-09 CN CN202111504133.9A patent/CN114168112A/zh active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106951265A (zh) * | 2017-03-29 | 2017-07-14 | 武汉斗鱼网络科技有限公司 | 开发环境搭建方法及装置 |
CN112685035A (zh) * | 2020-12-25 | 2021-04-20 | 京东数字科技控股股份有限公司 | 项目开发方法及装置、计算机可读存储介质、电子设备 |
Non-Patent Citations (2)
Title |
---|
DCLOUD: "Android 集成教程", 《HTTPS://WWW.BOOKSTACK.CN/READ/UNI-SDK-202005/A69E84EF446D9388MD》 * |
IT_XIAO小巫: "如何开发一个App(Android)", 《HTTPS://BLOG.CSDN.NET/WWJ_748/ARTICLE/DETAILS/50088959》 * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102160037B (zh) | 只需设计一次就能在任何平台应用的移动应用开发框架 | |
CN105718289B (zh) | 一种组件关系建立方法及其设备 | |
US8661407B2 (en) | Framework for programming embedded system applications | |
CN103353845A (zh) | 脚本加载、推送方法及装置 | |
US9021427B2 (en) | Conversion methods of applications of mobile devices and mobile devices and systems using the same | |
CN103914450A (zh) | 移动终端平台中网页图片呈现方法和装置 | |
CN112416415A (zh) | 一种前端微服务实现方法及相关组件 | |
CN109933381A (zh) | 一种内核的加载方法及装置 | |
CN113127361A (zh) | 应用程序的开发方法、装置、电子设备和存储介质 | |
EP2540066A2 (en) | System and method for providing end to end interactive mobile applications using sms | |
US10671366B2 (en) | App program running method and apparatus | |
CN111683005B (zh) | 一种物联网智能网关设备及其构建方法 | |
CN114168112A (zh) | 应用开发方法、系统、设备及计算机可读存储介质 | |
CN115729604A (zh) | 微应用集成方法、系统、电子设备和存储介质 | |
CN112965713B (zh) | 可视化编辑器的开发方法、装置、设备及存储介质 | |
CN110727423A (zh) | 跨平台开发行动应用程序的方法及其系统 | |
CN113448585B (zh) | 一种线程池的编译方法、装置、电子设备和存储介质 | |
CN114968225A (zh) | 微服务统一构建方法、环境生成方法及相关设备 | |
KR101376322B1 (ko) | 휴대 단말의 어플리케이션 설치 제어 방법, 이를 이용하는 휴대 단말 및 어플리케이션 제공 서버 | |
CN115905272B (zh) | 索引自动更新方法、索引自动更新装置、设备及介质 | |
CN113835846B (zh) | k8s集群的创建方法、装置及计算机可读存储介质 | |
CN112286529B (zh) | 前端页面的开发方法、装置、设备及存储介质 | |
CN111796802B (zh) | 功能包生成方法、装置和电子设备 | |
CN110704036B (zh) | 构建脚本的方法、装置和存储介质 | |
EP4191407A1 (en) | Method and device for generating and registering ui service package and loading ui service |
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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20220311 |