CN115145582A - 一种应用程序的打包方法、服务器、电子设备及存储介质 - Google Patents
一种应用程序的打包方法、服务器、电子设备及存储介质 Download PDFInfo
- Publication number
- CN115145582A CN115145582A CN202210805021.5A CN202210805021A CN115145582A CN 115145582 A CN115145582 A CN 115145582A CN 202210805021 A CN202210805021 A CN 202210805021A CN 115145582 A CN115145582 A CN 115145582A
- Authority
- CN
- China
- Prior art keywords
- code
- file
- packaging
- unity
- flutter
- 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/40—Transformation of program code
- G06F8/41—Compilation
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本申请实施例提供了一种应用程序的打包方法、服务器、电子设备及存储介质,该方法包括:响应于打包人员在打包构建界面输入目标程序的主程序文件标识、Flutter文件标识;获取主程序文件标识对应存储路径下存储的安卓代码或iOS代码,以及获取与Flutter文件标识对应存储路径下存储的Flutter代码;对安卓代码或iOS代码进行打包得到中间文件;对Flutter代码进行打包,生成Flutter产物;将中间文件和Flutter产物复制到目标程序所在项目中进行打包,得到程序文件;并将程序文件传输到公共服务器。本申请能够避免各方人员进行协调沟通,节约时间。
Description
技术领域
本发明涉及应用程序打包技术领域,具体而言,涉及一种应用程序的打包方法、服务器、电子设备及存储介质。
背景技术
随着手机的普及,手机应用程序也越来越多,但是应用程序被开发后,需要将应用程序进行打包才可以上架到软件商店,以供手机用户下载使用。
现有的打包方式是Unity人员、Flutter人员、安卓工程人员或ios工程人员分别将各自负责的代码进行打包,然后各方人员沟通协调打包进度,最后进行整合打包,但是各方人员的打包进度是不一样的,需要耗费时间进行沟通,因此,此种方式耗费时间,且人力打包容易出错。
发明内容
有鉴于此,本申请的目的在于提供一种应用程序的打包方法、服务器、电子设备及存储介质,能够避免各方人员进行协调沟通,节约时间。
第一方面,本申请实施例提供了一种应用程序的打包方法,该方法应用于应用程序打包服务器,该应用程序的打包方法包括:
响应于打包人员在打包构建界面输入目标程序的主程序文件标识、Flutter文件标识;在本地数据库中检索主程序文件标识和Flutter文件标识,以确定主程序文件标识和Flutter文件标识分别对应的存储路径;
获取主程序文件标识对应存储路径下存储的安卓代码或iOS代码,以及获取与Flutter文件标识对应存储路径下存储的Flutter代码;
提取安卓代码或iOS代码,以及Flutter代码中的关键信息,并将关键信息传输到文件服务器;
对安卓代码或iOS代码进行打包得到中间文件;
对Flutter代码进行打包,生成Flutter产物;
将中间文件和Flutter产物复制到目标程序所在项目中进行打包,得到程序文件;并将程序文件传输到公共服务器。
在一种可能的实施方式中,响应于打包人员在打包构建界面输入目标程序的主程序文件标识、Flutter文件标识,还包括:
响应于打包人员在打包构建界面输入目标程序的Unity文件标识;
在本地数据库中检索Unity文件标识,以确定Unity文件标识对应的存储路径;获取Unity文件标识对应的存储路径下存储的Unity代码,提取Unity代码中的关键信息,并将关键信息传输到文件服务器;
对安卓代码或iOS代码进行打包得到中间文件,包括:
将Unity代码转换成与安卓代码或iOS代码的编写语言相同语言的Unity代码;
将转换后的Unity代码、安卓代码或iOS代码一起打包,生成中间文件。
在一种可能的实施方式中,若主程序文件标识对应存储路径下存储的是安卓代码,则将Unity代码转换成与安卓代码或iOS代码的编写语言相同语言的Unity代码,包括:
将Unity代码转换成Java语言的Unity代码;
将转换后的Unity代码、安卓代码或iOS代码一起打包,生成中间文件,包括:
将安卓代码和转换后的Unity代码一起打包,生成arr文件。
在一种可能的实施方式中,若主程序文件标识对应存储路径下存储的是iOS代码,则将Unity代码转换成与安卓代码或iOS代码的编写语言相同语言的Unity代码,包括:
将Unity代码转换成Object-C语言的Unity代码;
将转换后的Unity代码、安卓代码或iOS代码一起打包,生成中间文件,包括:
将iOS代码和转换后的Unity代码一起打包,生成framework文件。
在一种可能的实施方式中,在响应于打包人员在打包构建界面输入目标程序的主程序文件标识、Flutter文件标识之前,该应用程序的打包方法还包括:
获取所有应用程序开发人员在本地编写的主程序文件、Unity文件和Flutter文件;
将主程序文件、Unity文件、Flutter文件,分别存储在对应的文件仓库中。
在一种可能的实施方式中,提取安卓代码或iOS代码,以及Flutter代码中的关键信息,并将关键信息传输到文件服务器,包括:
分别获取安卓代码或iOS代码、Flutter代码中在所有存储位置存储的包名、类名、方法名和字段;
针对每个存储位置,对应存储主程序文件标识或Flutter文件标识、存储位置以及在存储位置存储的包名、类名、方法名和字段。
第二方面,本申请实施例还提供了一种应用程序打包服务器,该应用程序打包服务器包括:
响应模块,用于响应于打包人员在打包构建界面输入目标程序的主程序文件标识、Flutter文件标识;
确定模块,用于在本地数据库中检索主程序文件标识和Flutter文件标识,以确定主程序文件标识和Flutter文件标识分别对应的存储路径;
获取模块,用于获取主程序文件标识对应存储路径下存储的安卓代码或iOS代码,以及获取与Flutter文件标识对应存储路径下存储的Flutter代码;
提取模块,用于提取安卓代码或iOS代码,以及Flutter代码中的关键信息,并将关键信息传输到文件服务器;
打包模块,用于对安卓代码或iOS代码进行打包得到中间文件;
打包模块,还用于对Flutter代码进行打包,生成Flutter产物;
传输模块,用于将中间文件和Flutter产物复制到目标程序所在项目中进行打包,得到程序文件;并将程序文件传输到公共服务器。
在一种可能的实施方式中,响应模块,还用于响应于打包人员在打包构建界面输入目标程序的Unity文件标识;
确定模块,还用于在本地数据库中检索Unity文件标识,以确定Unity文件标识对应的存储路径;
获取模块,还用于获取Unity文件标识对应的存储路径下存储的Unity代码,提取Unity代码中的关键信息,并将关键信息传输到文件服务器;
打包模块,还用于对安卓代码或iOS代码进行打包得到中间文件,包括:将Unity代码转换成与安卓代码或iOS代码的编写语言相同语言的Unity代码;将转换后的Unity代码、安卓代码或iOS代码一起打包,生成中间文件。
在一种可能的实施方式中,若主程序文件标识对应存储路径下存储的是安卓代码,则打包模块,具体用于将Unity代码转换成Java语言的Unity代码;将转换后的Unity代码、安卓代码或iOS代码一起打包,生成中间文件,包括:将安卓代码和转换后的Unity代码一起打包,生成arr文件。
在一种可能的实施方式中,若主程序文件标识对应存储路径下存储的是iOS代码,则打包模块,具体用于将Unity代码转换成Object-C语言的Unity代码;将转换后的Unity代码、安卓代码或iOS代码一起打包,生成中间文件,包括:将iOS代码和转换后的Unity代码一起打包,生成framework文件。
在一种可能的实施方式中,该应用程序打包服务器还包括:存储模块;
获取模块,还用于获取所有应用程序开发人员在本地编写的主程序文件、Unity文件和Flutter文件;
存储模块,用于将主程序文件、Unity文件、Flutter文件,分别存储在对应的文件仓库中。
在一种可能的实施方式中,提取模块,具体用于分别获取安卓代码或iOS代码、Flutter代码中在所有存储位置存储的包名、类名、方法名和字段;针对每个存储位置,对应存储主程序文件标识或Flutter文件标识、存储位置以及在存储位置存储的包名、类名、方法名和字段。
第三方面,本申请实施例还提供了一种电子设备,包括:处理器、存储介质和总线,存储介质存储有处理器可执行的机器可读指令,当电子设备运行时,处理器与存储介质之间通过总线通信,处理器执行机器可读指令,以执行如第一方面任一项应用程序的打包方法的步骤。
第四方面,本申请实施例还提供了一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器运行时执行如第一方面任一项应用程序的打包方法的步骤。
本申请实施例提供了一种应用程序的打包方法、服务器、电子设备及存储介质,该方法包括:响应于打包人员在打包构建界面输入目标程序的主程序文件标识、Flutter文件标识;获取主程序文件标识对应存储路径下存储的安卓代码或iOS代码,以及获取与Flutter文件标识对应存储路径下存储的Flutter代码;对安卓代码或iOS代码进行打包得到中间文件;对Flutter代码进行打包,生成Flutter产物;将中间文件和Flutter产物复制到目标程序所在项目中进行打包,得到程序文件;并将程序文件传输到公共服务器。本申请通过响应打包构建界面获取打包人员输入的目标程序的主程序文件标识、Flutter文件标识;以将主程序文件、Flutter文件中的代码进行打包得到程序文件,能够避免各方人员进行协调沟通,节约时间。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1示出了本申请实施例提供的一种应用程序的打包方法的流程图;
图2示出了本申请实施例提供的另一种应用程序的打包方法的流程图;
图3示出了本申请实施例提供的另一种应用程序的打包方法的流程图;
图4示出了本申请实施例提供的一种应用程序打包服务器的结构示意图;
图5示出了本申请实施例提供的一种电子设备的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,应当理解,本申请中附图仅起到说明和描述的目的,并不用于限定本申请的保护范围。另外,应当理解,示意性的附图并未按实物比例绘制。本申请中使用的流程图示出了根据本申请的一些实施例实现的操作。应该理解,流程图的操作可以不按顺序实现,没有逻辑的上下文关系的步骤可以反转顺序或者同时实施。此外,本领域技术人员在本申请内容的指引下,可以向流程图添加一个或多个其他操作,也可以从流程图中移除一个或多个操作。
另外,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
为了使得本领域技术人员能够使用本申请内容,结合特定应用场景“应用程序打包技术领域”,给出以下实施方式。对于本领域技术人员来说,在不脱离本申请的精神和范围的情况下,可以将这里定义的一般原理应用于其他实施例和应用场景。虽然本申请主要围绕“应用程序打包技术领域”进行描述,但是应该理解,这仅是一个示例性实施例。
需要说明的是,本申请实施例中将会用到术语“包括”,用于指出其后所声明的特征的存在,但并不排除增加其它的特征。
下面对本申请实施例提供的一种应用程序的打包方法进行详细说明。
参照图1所示,为本申请实施例提供的一种应用程序的打包方法的流程示意图,该方法应用于应用程序打包服务器,下面对本申请实施例示例性的各步骤进行说明:
S101、响应于打包人员在打包构建界面输入目标程序的主程序文件标识、Flutter文件标识;在本地数据库中检索主程序文件标识和Flutter文件标识,以确定主程序文件标识和Flutter文件标识分别对应的存储路径。
在本申请实施方式中,打包人员在打包构建界面输入目标程序的主程序文件标识、Flutter文件标识,服务器响应打包构建界面以获取目标程序的主程序文件标识、Flutter文件标识,然后在本地数据库中检索主程序文件标识和Flutter文件标识,检索出主程序文件标识和Flutter文件标识分别对应的存储路径。
这里,本申请通过在本地数据库中检索的方式可以快速的检索出主程序文件标识和Flutter文件标识分别对应的存储路径,节约时间。
S102、获取主程序文件标识对应存储路径下存储的安卓代码或iOS代码,以及获取与Flutter文件标识对应存储路径下存储的Flutter代码。
在本申请实施方式中,获取在主程序文件标识对应存储路径下存储的安卓代码或iOS代码,以及获取在Flutter文件标识对应存储路径下存储的Flutter代码。
其中,主程序文件中的代码为安卓代码或iOS代码。
S103、提取安卓代码或iOS代码,以及Flutter代码中的关键信息,并将关键信息传输到文件服务器。
具体地,分别获取安卓代码或iOS代码、Flutter代码中在所有存储位置存储的包名、类名、方法名和字段;针对每个存储位置,对应存储主程序文件标识或Flutter文件标识、存储位置以及在存储位置存储的包名、类名、方法名和字段。
在本申请实施方式中,获取安卓代码或iOS代码中的每一个存储位置所存储的包名、类名、方法名和字段,针对安卓代码或iOS代码中的每个存储位置,对应存储主程序文件标识、存储位置以及在存储位置存储的包名、类名、方法名和字段;获取Flutter代码中在所有存储位置存储的包名、类名、方法名和字段,每个存储位置。
这里,将上述这些关键信息传输到文件服务器后,当通过安卓代码或iOS代码,以及Flutter代码打包得到的程序文件在用户手机中出现问题后,可以到文件服务器中快速查询出相应代码,以修复故障。
S104、对安卓代码或iOS代码进行打包得到中间文件。
S105、对Flutter代码进行打包,生成Flutter产物。
S106、将中间文件和Flutter产物复制到目标程序所在项目中进行打包,得到程序文件;并将程序文件传输到公共服务器。
在本申请实施方式中,将打包得到的程序文件传输到公共服务器后,即可将该应用程序放置到应用商店以供手机用户下载的应用程序。
本申请实施例提供了一种应用程序的打包方法,该方法包括:响应于打包人员在打包构建界面输入目标程序的主程序文件标识、Flutter文件标识;获取主程序文件标识对应存储路径下存储的安卓代码或iOS代码,以及获取与Flutter文件标识对应存储路径下存储的Flutter代码;对安卓代码或iOS代码进行打包得到中间文件;对Flutter代码进行打包,生成Flutter产物;将中间文件和Flutter产物复制到目标程序所在项目中进行打包,得到程序文件;并将程序文件传输到公共服务器。本申请通过响应打包构建界面获取打包人员输入的目标程序的主程序文件标识、Flutter文件标识;以将主程序文件、Flutter文件中的代码进行打包得到程序文件,能够避免各方人员进行协调沟通,节约时间。
如图2所示,为本申请实施例提供的另一种应用程序的打包方法的流程示意图,下面对本申请实施例示例性的各步骤进行说明:
S201、响应于打包人员在打包构建界面输入目标程序的Unity文件标识。
在本申请实施方式中,打包人员在打包构建界面输入的文件标识,除必须有的主程序文件标识、Flutter文件标识外,还可以包括Unity文件,服务器响应打包构建界面以获取目标程序的Unity文件标识。
S202、在本地数据库中检索Unity文件标识,以确定Unity文件标识对应的存储路径;获取Unity文件标识对应的存储路径下存储的Unity代码,提取Unity代码中的关键信息,并将关键信息传输到文件服务器。
在本申请实施方式中,本地数据库中检索Unity文件标识,检索出Unity文件标识对应的存储路径,获取在Unity文件标识对应存储路径下存储的Unity代码,获取Unity代码中的每一个存储位置所存储的包名、类名、方法名和字段,针对Unity代码中的每个存储位置,对应存储Unity文件标识、存储位置以及在存储位置存储的包名、类名、方法名和字段。
S203、将Unity代码转换成与安卓代码或iOS代码的编写语言相同语言的Unity代码。
具体地,若主程序文件标识对应存储路径下存储的是安卓代码,将Unity代码转换成Java语言的Unity代码。
具体地,若主程序文件标识对应存储路径下存储的是iOS代码,将Unity代码转换成Object-C语言的Unity代码。
S204、将转换后的Unity代码、安卓代码或iOS代码一起打包,生成中间文件。
具体地,若主程序文件标识对应存储路径下存储的是安卓代码,将安卓代码和转换后的Unity代码一起打包,生成arr文件。
具体地,若主程序文件标识对应存储路径下存储的是iOS代码,将iOS代码和转换后的Unity代码一起打包,生成framework文件。
S205、将中间文件和Flutter产物复制到目标程序所在项目中进行打包,得到程序文件;并将程序文件传输到公共服务器。
在本申请实施当时中,若主程序文件标识对应存储路径下存储的是安卓代码,将中间文件和Flutter产物复制到目标程序所在项目中进行打包,得到程序文件apk;若主程序文件标识对应存储路径下存储的是iOS代码,将中间文件和Flutter产物复制到目标程序所在项目中进行打包,得到程序文件ipa。
本申请实施例提供了另一种应用程序的打包方法,该方法包括:响应于打包人员在打包构建界面输入目标程序的Unity文件标识;在本地数据库中检索Unity文件标识,以确定Unity文件标识对应的存储路径;获取Unity文件标识对应的存储路径下存储的Unity代码,提取Unity代码中的关键信息,并将关键信息传输到文件服务器;对安卓代码或iOS代码进行打包得到中间文件,包括:将Unity代码转换成与所述安卓代码或iOS代码的编写语言相同语言的Unity代码;将转换后的Unity代码、安卓代码或iOS代码一起打包,生成中间文件;将中间文件和Flutter产物复制到目标程序所在项目中进行打包,得到程序文件;并将程序文件传输到公共服务器。通过本申请的方式,能够避免各方人员进行协调沟通,节约时间。
如图3所示,为本申请实施例提供的另一种应用程序的打包方法的流程示意图,下面对本申请实施例示例性的各步骤进行说明:
S301、获取所有应用程序开发人员在本地编写的主程序文件、Unity文件和Flutter文件。
S302、将主程序文件、Unity文件、Flutter文件,分别存储在对应的文件仓库中。
在本申请实施例中,通过获取所有应用程序开发人员在本地编写的主程序文件、Unity文件和Flutter文件;并将主程序文件、Unity文件、Flutter文件,分别存储在对应的文件仓库中,也就是将所有应用程序开发人员编写的代码都存储到文件仓库中,当打包人员有打包需求时,服务器直接响应于打包人员在打包构建界面输入目标程序的文件标识,以实现应用程序的打包,不需要现有打包方式中需要各方人员沟通协调打包进度,能够节约时间。
参照图4所示,为本申请实施例提供的一种应用程序打包服务器的示意图,该服务器包括:
响应模块401,用于响应于打包人员在打包构建界面输入目标程序的主程序文件标识、Flutter文件标识;
确定模块402,用于在本地数据库中检索主程序文件标识和Flutter文件标识,以确定主程序文件标识和Flutter文件标识分别对应的存储路径;
获取模块403,用于获取主程序文件标识对应存储路径下存储的安卓代码或iOS代码,以及获取与Flutter文件标识对应存储路径下存储的Flutter代码;
提取模块404,用于提取安卓代码或iOS代码,以及Flutter代码中的关键信息,并将关键信息传输到文件服务器;
打包模块405,用于对安卓代码或iOS代码进行打包得到中间文件;
打包模块405,还用于对Flutter代码进行打包,生成Flutter产物;
传输模块406,用于将中间文件和Flutter产物复制到目标程序所在项目中进行打包,得到程序文件;并将程序文件传输到公共服务器。
在一种可能的实施方式中,响应模块401,还用于响应于打包人员在打包构建界面输入目标程序的Unity文件标识;
确定模块402,还用于在本地数据库中检索Unity文件标识,以确定Unity文件标识对应的存储路径;
获取模块403,还用于获取Unity文件标识对应的存储路径下存储的Unity代码,提取Unity代码中的关键信息,并将关键信息传输到文件服务器;
打包模块405,还用于对安卓代码或iOS代码进行打包得到中间文件,包括:将Unity代码转换成与安卓代码或iOS代码的编写语言相同语言的Unity代码;将转换后的Unity代码、安卓代码或iOS代码一起打包,生成中间文件。
在一种可能的实施方式中,若主程序文件标识对应存储路径下存储的是安卓代码,则打包模块405,具体用于将Unity代码转换成Java语言的Unity代码;将转换后的Unity代码、安卓代码或iOS代码一起打包,生成中间文件,包括:将安卓代码和转换后的Unity代码一起打包,生成arr文件。
在一种可能的实施方式中,若主程序文件标识对应存储路径下存储的是iOS代码,则打包模块405,具体用于将Unity代码转换成Object-C语言的Unity代码;将转换后的Unity代码、安卓代码或iOS代码一起打包,生成中间文件,包括:将iOS代码和转换后的Unity代码一起打包,生成framework文件。
在一种可能的实施方式中,该应用程序打包服务器还包括:存储模块407;
获取模块403,还用于获取所有应用程序开发人员在本地编写的主程序文件、Unity文件和Flutter文件;
存储模块407,用于将主程序文件、Unity文件、Flutter文件,分别存储在对应的文件仓库中。
在一种可能的实施方式中,提取模块404,具体用于分别获取安卓代码或iOS代码、Flutter代码中在所有存储位置存储的包名、类名、方法名和字段;针对每个存储位置,对应存储主程序文件标识或Flutter文件标识、存储位置以及在存储位置存储的包名、类名、方法名和字段。
本申请实施例提供了一种应用程序打包服务器,该服务器包括:响应模块401,用于响应于打包人员在打包构建界面输入目标程序的主程序文件标识、Flutter文件标识;确定模块402,用于在本地数据库中检索主程序文件标识和Flutter文件标识,以确定主程序文件标识和Flutter文件标识分别对应的存储路径;获取模块403,用于获取主程序文件标识对应存储路径下存储的安卓代码或iOS代码,以及获取与Flutter文件标识对应存储路径下存储的Flutter代码;提取模块404,用于提取安卓代码或iOS代码,以及Flutter代码中的关键信息,并将关键信息传输到文件服务器;打包模块405,用于对安卓代码或iOS代码进行打包得到中间文件;打包模块405,还用于对Flutter代码进行打包,生成Flutter产物;传输模块406,用于将中间文件和Flutter产物复制到目标程序所在项目中进行打包,得到程序文件;并将程序文件传输到公共服务器。本申请通过响应打包构建界面获取打包人员输入的目标程序的主程序文件标识、Flutter文件标识;以将主程序文件、Flutter文件中的代码进行打包得到程序文件,能够避免各方人员进行协调沟通,节约时间。
如图5所示,本申请实施例提供的一种电子设备500,包括:处理器501、存储器502和总线,存储器502存储有处理器501可执行的机器可读指令,当电子设备运行时,处理器501与存储器502之间通过总线通信,处理器501执行所述机器可读指令,以执行如上述应用程序的打包方法的步骤。
具体地,上述存储器502和处理器501能够为通用的存储器和处理器,这里不做具体限定,当处理器501运行存储器502存储的计算机程序时,能够执行上述应用程序的打包方法。
对应于上述应用程序的打包方法,本申请实施例还提供了一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器运行时执行上述应用程序的打包方法的步骤。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统和服务器的具体工作过程,可以参考方法实施例中的对应过程,本申请中不再赘述。在本申请所提供的几个实施例中,应该理解到,所揭露的系统、服务器和方法,可以通过其它的方式实现。以上所描述的服务器实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个模块或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,服务器或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个处理器可执行的非易失的计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述信息处理方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
以上仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。
Claims (10)
1.一种应用程序的打包方法,其特征在于,所述方法应用于应用程序打包服务器,所述应用程序的打包方法包括:
响应于打包人员在打包构建界面输入目标程序的主程序文件标识、Flutter文件标识;在本地数据库中检索所述主程序文件标识和所述Flutter文件标识,以确定所述主程序文件标识和所述Flutter文件标识分别对应的存储路径;
获取所述主程序文件标识对应存储路径下存储的安卓代码或iOS代码,以及获取与所述Flutter文件标识对应存储路径下存储的Flutter代码;
提取所述安卓代码或iOS代码,以及所述Flutter代码中的关键信息,并将所述关键信息传输到文件服务器;
对所述安卓代码或iOS代码进行打包得到中间文件;
对所述Flutter代码进行打包,生成Flutter产物;
将所述中间文件和所述Flutter产物复制到所述目标程序所在项目中进行打包,得到程序文件;并将所述程序文件传输到公共服务器。
2.根据权利要求1所述的应用程序的打包方法,其特征在于,所述应用程序打包方法还包括:
响应于打包人员在打包构建界面输入目标程序的Unity文件标识;
在本地数据库中检索所述Unity文件标识,以确定所述Unity文件标识对应的存储路径;获取所述Unity文件标识对应的存储路径下存储的Unity代码,提取所述Unity代码中的关键信息,并将所述关键信息传输到文件服务器;
所述对所述安卓代码或iOS代码进行打包得到中间文件,包括:
将所述Unity代码转换成与所述安卓代码或iOS代码的编写语言相同语言的Unity代码;
将转换后的Unity代码、所述安卓代码或iOS代码一起打包,生成中间文件。
3.根据权利要求2所述的应用程序的打包方法,其特征在于,若所述主程序文件标识对应存储路径下存储的是安卓代码,则将所述Unity代码转换成与所述安卓代码或iOS代码的编写语言相同语言的Unity代码,包括:
将所述Unity代码转换成Java语言的Unity代码;
所述将转换后的Unity代码、所述安卓代码或iOS代码一起打包,生成中间文件,包括:
将所述安卓代码和转换后的Unity代码一起打包,生成arr文件。
4.根据权利要求2所述的应用程序的打包方法,其特征在于,若所述主程序文件标识对应存储路径下存储的是iOS代码,则将所述Unity代码转换成与所述安卓代码或iOS代码的编写语言相同语言的Unity代码,包括:
将所述Unity代码转换成Object-C语言的Unity代码;
所述将转换后的Unity代码、所述安卓代码或iOS代码一起打包,生成中间文件,包括:
将所述iOS代码和转换后的Unity代码一起打包,生成framework文件。
5.根据权利要求1所述的应用程序的打包方法,其特征在于,在所述响应于打包人员在打包构建界面输入目标程序的主程序文件标识、Flutter文件标识之前,所述应用程序的打包方法还包括:
获取所有应用程序开发人员在本地编写的主程序文件、Unity文件和Flutter文件;
将所述主程序文件、Unity文件、Flutter文件,分别存储在对应的文件仓库中。
6.根据权利要求1所述的应用程序的打包方法,其特征在于,所述提取所述安卓代码或iOS代码,以及所述Flutter代码中的关键信息,并将所述关键信息传输到文件服务器,包括:
分别获取所述安卓代码或iOS代码、所述Flutter代码中在所有存储位置存储的包名、类名、方法名和字段;
针对每个存储位置,对应存储所述主程序文件标识或Flutter文件标识、所述存储位置以及在所述存储位置存储的包名、类名、方法名和字段。
7.一种应用程序打包服务器,其特征在于,所述应用程序打包服务器包括:
响应模块,用于响应于打包人员在打包构建界面输入目标程序的主程序文件标识、Flutter文件标识;
确定模块,用于在本地数据库中检索所述主程序文件标识和所述Flutter文件标识,以确定所述主程序文件标识和所述Flutter文件标识分别对应的存储路径;
获取模块,用于获取所述主程序文件标识对应存储路径下存储的安卓代码或iOS代码,以及获取与所述Flutter文件标识对应存储路径下存储的Flutter代码;
提取模块,用于提取所述安卓代码或iOS代码,以及所述Flutter代码中的关键信息,并将所述关键信息传输到文件服务器;
打包模块,用于对所述安卓代码或iOS代码进行打包得到中间文件;
打包模块,还用于对所述Flutter代码进行打包,生成Flutter产物;
传输模块,用于将所述中间文件和所述Flutter产物复制到目标程序所在项目中进行打包,得到程序文件;并将所述程序文件传输到公共服务器。
8.根据权利要求7所述的应用程序打包服务器,其特征在于,
所述响应模块,还用于响应于打包人员在打包构建界面输入目标程序的Unity文件标识;
所述确定模块,还用于在本地数据库中检索所述Unity文件标识,以确定所述Unity文件标识对应的存储路径;
所述获取模块,还用于获取所述Unity文件标识对应的存储路径下存储的Unity代码,提取所述Unity代码中的关键信息,并将所述关键信息传输到文件服务器;
所述打包模块,还用于所述对所述安卓代码或iOS代码进行打包得到中间文件,包括:将所述Unity代码转换成与所述安卓代码或iOS代码的编写语言相同语言的Unity代码;将转换后的Unity代码、所述安卓代码或iOS代码一起打包,生成中间文件。
9.一种电子设备,其特征在于,包括:处理器、存储介质和总线,所述存储介质存储有所述处理器可执行的机器可读指令,当电子设备运行时,所述处理器与所述存储介质之间通过总线通信,所述处理器执行所述机器可读指令,以执行如权利要求1至6任一项所述的应用程序的打包方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器运行时执行如权利要求1至6任一项所述的应用程序的打包方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210805021.5A CN115145582A (zh) | 2022-07-08 | 2022-07-08 | 一种应用程序的打包方法、服务器、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210805021.5A CN115145582A (zh) | 2022-07-08 | 2022-07-08 | 一种应用程序的打包方法、服务器、电子设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115145582A true CN115145582A (zh) | 2022-10-04 |
Family
ID=83412933
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210805021.5A Pending CN115145582A (zh) | 2022-07-08 | 2022-07-08 | 一种应用程序的打包方法、服务器、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115145582A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115935399A (zh) * | 2023-01-05 | 2023-04-07 | 南通昌硕信息科技有限公司 | 一种基于人工智能的手机app打包处理系统 |
-
2022
- 2022-07-08 CN CN202210805021.5A patent/CN115145582A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115935399A (zh) * | 2023-01-05 | 2023-04-07 | 南通昌硕信息科技有限公司 | 一种基于人工智能的手机app打包处理系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108197114B (zh) | 表格数据的检测方法、装置、存储介质及电子装置 | |
US8667078B2 (en) | Systems and methods of extracting, storing, and serving device definition file information | |
CN109240661B (zh) | 一种代码生成方法及装置 | |
CN102163233A (zh) | 一种网页标记语言格式转换方法及系统 | |
EP3416054B1 (en) | Method and device for page display, and storage medium | |
CN112311853B (zh) | 一种数据同步方法、装置、设备及计算机可读存储介质 | |
CN113626512A (zh) | 数据处理方法、装置、设备及可读存储介质 | |
CN103177096B (zh) | 基于文本属性的页面元素定位方法及设备 | |
CN113268245A (zh) | 代码分析方法、装置及存储介质 | |
CN115145582A (zh) | 一种应用程序的打包方法、服务器、电子设备及存储介质 | |
CN109254954B (zh) | 文件处理方法和装置、计算设备及存储介质 | |
CN102624736B (zh) | 一种tl1命令校验方法及装置 | |
CN110851211A (zh) | 用于显示应用信息的方法、装置、电子设备和介质 | |
CN111142859A (zh) | 一种脚本生成方法、装置、电子设备及存储介质 | |
CN111967269A (zh) | 业务风险识别方法、装置及电子设备 | |
CN110309454B (zh) | 一种界面显示方法、装置、设备及存储介质 | |
CN116136801B (zh) | 云平台的数据处理方法、装置、电子设备及存储介质 | |
CN108268545B (zh) | 一种分级的用户标签库的创建的方法和装置 | |
CN107092601B (zh) | 资源文件构建方法、资源文件应用方法及装置 | |
CN115562993A (zh) | 测试脚本录制方法和装置、电子设备及存储介质 | |
CN111539200B (zh) | 一种生成富文本的方法、装置、介质和电子设备 | |
CN115827437A (zh) | 静态代码分析方法和装置、电子设备、可读存储介质和芯片 | |
CN115455922A (zh) | 表单校验方法、装置、电子设备和存储介质 | |
FI124035B (fi) | Koodien keräys matkaviestinlaitteessa | |
CN114996098A (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 | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20230426 Address after: Room B-022, 1st floor, Building 18, No. 9 Jiuxianqiao North Road (factory area), Chaoyang District, Beijing, 100000 Applicant after: Beijing Mite Information Technology Co.,Ltd. Address before: 100000 room b-021, first floor, building 18, No. 9 Jiuxianqiao North Road (plant area), Chaoyang District, Beijing Applicant before: Beijing yidiandian Entertainment Technology Co.,Ltd. |
|
TA01 | Transfer of patent application right |