CN109976728B - 一种原生应用程序的生成方法、装置、移动终端 - Google Patents

一种原生应用程序的生成方法、装置、移动终端 Download PDF

Info

Publication number
CN109976728B
CN109976728B CN201910283019.4A CN201910283019A CN109976728B CN 109976728 B CN109976728 B CN 109976728B CN 201910283019 A CN201910283019 A CN 201910283019A CN 109976728 B CN109976728 B CN 109976728B
Authority
CN
China
Prior art keywords
application
javafx
operating system
file
executable
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.)
Active
Application number
CN201910283019.4A
Other languages
English (en)
Other versions
CN109976728A (zh
Inventor
阚志刚
陈彪
王小虎
卢浩
彭文波
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Bangcle Technology Co ltd
Original Assignee
Beijing Bangcle Technology Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Bangcle Technology Co ltd filed Critical Beijing Bangcle Technology Co ltd
Priority to CN201910283019.4A priority Critical patent/CN109976728B/zh
Publication of CN109976728A publication Critical patent/CN109976728A/zh
Application granted granted Critical
Publication of CN109976728B publication Critical patent/CN109976728B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/20Software design
    • G06F8/24Object-oriented
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/41Compilation
    • G06F8/44Encoding
    • G06F8/447Target code generation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

本申请公开了一种原生应用程序的生成方法,以解决现有技术中不能在一个操作***上基于JavaFX应用程序生成另一个操作***的原生应用程序的问题。方法包括:安装有第一操作***的第一设备,获取在第一操作***上基于第一JavaFX应用程序生成的第一原生应用程序所包含的目标文件并提供给第二设备;其中,目标文件至少包括:除第一JavaFX应用程序的启动参数配置文件和第一JavaFX应用程序的可执行文件之外的其他文件;安装有第二操作***的第二设备,接收第一设备提供的目标文件,并通过在第二操作***上将第二JavaFX应用程序与目标文件组合,生成可由第一操作***运行的第二原生应用程序。本申请还公开一种原生应用程序的生成***、装置、移动终端及计算机可读存储介质。

Description

一种原生应用程序的生成方法、装置、移动终端
技术领域
本申请涉及计算机技术领域,尤其涉及一种原生应用程序的生成方法、装置、移动终端及计算机可读存储介质。
背景技术
JavaFX技术可用来开发在桌面和移动模拟器上运行的富互联网应用程序,可以实现跨操作***运行。其中,操作***在运行JavaFX应用程序时,由于需要为JavaFX应用程序配置相应的运行环境,从而通常将Java运行环境(Java Runtime Environment,JRE)和JavaFX应用程序打包成一个原生应用程序,以方便操作***运行。
现有技术存在的问题在于,不能在一个操作***上基于JavaFX应用程序生成另一个操作***的原生应用程序。
发明内容
本申请实施例提供一种原生应用程序的生成方法,用以解决现有技术中不能在一个操作***上生成另一个操作***的原生应用程序的问题。
本申请实施例还提供一种原生应用程序的生成***、装置,一种移动终端,以及一种计算机可读存储介质。
本申请实施例采用下述技术方案:
第一方面,本申请实施例提供一种原生应用程序的生成方法,所述方法包括:
安装有第一操作***的第一设备,在所述第一操作***上基于第一JavaFX应用程序生成第一原生应用程序;将所述第一原生应用程序所包含的目标文件提供给第二设备;其中,所述目标文件至少包括:除第一JavaFX应用程序的启动参数配置文件和第一JavaFX应用程序的可执行文件之外的其他文件;
安装有第二操作***的第二设备,接收所述第一设备提供的目标文件;通过在所述第二操作***上将第二JavaFX应用程序与所述目标文件组合,生成可由所述第一操作***运行的第二原生应用程序。
第二方面,本申请实施例提供一种原生应用程序的生成方法,所述方法包括:
获取在第一操作***上基于第一JavaFX应用程序生成的第一原生应用程序所包含的目标文件;其中,所述目标文件至少包括:除第一JavaFX的启动参数配置文件和第一JavaFX应用程序的可执行文件之外的其他文件;
通过在第二操作***上将第二JavaFX应用程序与所述目标文件组合,生成可由所述第一操作***运行的第二原生应用程序。
第三方面,本申请实施例提供一种原生应用程序的生成方法,所述方法包括:
在第一操作***上基于第一JavaFX应用程序生成第一原生应用程序所包含的目标文件;其中,所述目标文件至少包括:除第一JavaFX应用程序启动参数配置文件和第一JavaFX应用程序的可执行文件之外的其他文件;
将所述目标文件提供给安装有第二操作***的设备,以使得所述设备通过在所述第二操作***上将第二JavaFX应用程序与所述目标文件组合,生成可由所述第一操作***运行的第二原生应用程序。
第四方面,本申请实施例提供一种原生应用程序的生成***,所述***包括:
安装有第一操作***的第一设备,用于在第一操作***上基于第一JavaFX应用程序生成第一原生应用程序;将所述第一原生应用程序所包含的目标文件提供给所述第二设备;其中,所述目标文件至少包括:除第一JavaFX应用程序启动参数配置文件和第一JavaFX应用程序的可执行文件之外的其他文件;
安装有第二操作***的第二设备,用于接收所述第一设备提供的目标文件;通过在第二操作***上将第二JavaFX应用程序与所述目标文件组合,生成可由所述第一操作***运行的第二原生应用程序。
第五方面,本申请实施例提供一种原生应用程序的生成装置,所述装置包括:
获取单元,用于获取在第一操作***上基于第一JavaFX应用程序生成的第一原生应用程序所包含的目标文件;其中,所述目标文件至少包括:除第一JavaFX应用程序的启动参数配置文件和第一JavaFX应用程序的可执行文件之外的其他文件;
组合单元,用于通过在第二操作***上将第二JavaFX应用程序与所述目标文件组合,生成可由所述第一操作***运行的第二原生应用程序。
第六方面,本申请实施例提供一种原生应用程序的生成装置,所述装置包括:
生成单元,用于在第一操作***上基于第一JavaFX应用程序生成第一原生应用程序所包含的目标文件;其中,所述目标文件至少包括:除第一JavaFX应用程序启动参数配置文件和第一JavaFX应用程序的可执行文件之外的其他文件;
发送单元,用于将所述目标文件提供给安装有第二操作***的设备,以使得所述设备通过在所述第二操作***上将第二JavaFX应用程序与所述目标文件组合,生成可由所述第一操作***运行的第二原生应用程序。
一种移动终端,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如上所述的原生应用程序的生成方法的步骤。
一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上所述的原生应用程序的生成方法的步骤。
本申请实施例采用的上述至少一个技术方案能够达到以下有益效果:
由于考虑到在同一操作***上基于不同JavaFX应用程序分别生成原生应用程序时,生成的各原生应用程序中除了JavaFX应用程序的启动参数配置文件和可执行文件之外的其他文件是对应相同的,相当于是给不同的JavaFX应用程序加了相同的“壳”,从而采用本申请实施例提供的方法,在第二操作***上基于JavaFX应用程序以及第一操作***所加的“壳”,就可以组合生成可供第一操作***运行的原生应用程序,因此解决了现有技术中不能在一个操作***上基于JavaFX应用程序生成另一个操作***的原生应用程序的问题。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1a为本申请实施例提供的一种平台原生应用程序的生成方法的实现流程示意图;
图1b为本申请实施例提供的一种JavaFX应用程序的示意图;
图1c为本申请实施例提供的一种平台原生应用程序的示意图;
图2为本申请实施例提供的一种平台原生应用程序的生成方法的实现流程示意图;
图3为本申请实施例提供的一种平台原生应用程序的生成方法的实现流程示意图;
图4为本申请实施例提供的一种平台原生应用程序的生成方法的实现流程示意图;
图5为本申请实施例提供一种平台原生应用程序的生成装置的具体结构示意图;
图6为本申请实施例提供一种平台原生应用程序的生成装置的具体结构示意图;
图7为本申请实施例提供一种平台原生应用程序的生成***的具体结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
以下结合附图,详细说明本申请各实施例提供的技术方案。
实施例1
为解决现有技术中,不能在一个操作***上生成另一个操作***的原生应用程序的问题,本申请实施例提供一种原生应用程序的生成方法。
该方法的执行主体,可以是各种类型的计算设备,或者,可以是安装于计算设备上的应用程序或应用(Application,APP)。所述的计算设备,比如可以是台式电脑、手机、平板电脑、智能可穿戴设备等用户终端,也可以是服务器等。
为便于描述,本申请实施例以该方法的执行主体为服务器为例,对该方法进行介绍。本领域技术人员可以理解,本申请实施例以该服务器为例对方法进行介绍,仅是一种示例性说明,并不对本方案对应的权利要求保护范围构成限制。
具体地,本申请实施例提供的该方法的实现流程如图1a所示,包括如下步骤:
步骤11,安装有第一操作***的第一设备,在第一操作***上基于第一JavaFX应用程序生成第一原生应用程序;将第一原生应用程序所包含的目标文件提供给安装有第二操作***的第二设备——比如,第一设备将目标文件发送给第二设备,或者由第二设备主动从第一设备处下载目标文件;
其中,所述目标文件至少包括:除第一JavaFX应用程序的启动参数配置文件和第一JavaFX应用程序的可执行文件之外的其他文件。
所述第一操作***和第二操作***,比如可以是windows操作***、macOS操作***、Linux操作***等操作***中的任意一种。但凡是能够基于JavaFX生成原生应用程序的操作***,都属于本申请实施例所述的第一操作***和第二操作***的范畴。
所述JavaFX应用程序,是可以在操作***上运行的富互联网应用程序,可以实现跨操作***运行。其中,在操作***运行JavaFX应用程序时,需要为JavaFX应用程序配置相应的运行环境。
所述原生应用程序,是基于JavaFX应用程序在操作***上生成的一种可供电子设备(例如智能电话、平板电脑等)使用的应用程序。
所述第二设备,是可以基于第二操作***运行JavaFX应用程序的一种电子设备。
为方便描述,本申请实施例中,以第一设备为安装有windows操作***的平板电脑、第二设备为安装有macOS操作***的平板电脑为例,对本申请实施例进行介绍。本领域技术人员可以理解,本申请实施例以第一设备为安装有windows操作***的平板电脑、第二设备为安装有macOS操作***的平板电脑为例对方法进行介绍,仅是一种示例性说明,并不对本方案对应的权利要求保护范围构成限制。
为解决背景技术存在的问题,申请人通过对原生应用程序的特点进行了深入研究,研究发现:但凡在同一操作***上基于不同JavaFX应用程序分别生成原生应用程序,生成的各原生应用程序都具有一个共同的特点:除了JavaFX应用程序的启动参数配置文件和可执行文件之外的其他文件是对应相同的。
例如,请参见说明书附图1b和图1c,其中,图1b表示JavaFX应用程序所包含的各文件——lib为包含依赖库的目录;app.jar文件为JavaFX应用程序源代码编译后的二进制文件以及资源文件的压缩文件,是JavaFX应用程序可执行文件。图1c表示在某操作***(如第一操作***)上基于JavaFX应用程序生成的原生应用程序中包含的各文件——App.exe是原生应用程序入口文件;App.cfg为原生应用程序图标文件;后缀名“.dll”的文件是原生应用程序动态链接库文件;runtime目录下是一个内嵌的JRE;app目录下是JavaFX应用程序;app/App.cfg为JavaFX应用程序的启动参数配置文件。
经对比图1b和图1c可知,与JavaFX应用程序相比,原生应用程序中app目录下所包含的lib目录、app.jar文件与JavaFX应用程序中均一致,无任何改变。
基于上述研究结果,申请人得出:若要在第二操作***上基于JavaFX应用程序生成可供第一操作***运行的原生应用程序,则可以先在第一操作***上基于第一JavaFX应用程序生成第一原生应用程序;然后,将第一原生应用程序所包含的目标文件提供给安装有第二操作***的第二设备。其中,目标文件至少包含在基于JavaFX应用程序生成原生应用程序时不会发生变化的文件,即除了JavaFX应用程序的启动参数配置文件和可执行文件之外的其他文件。
沿用上例,例如可以采用javapackager,在安装有windows操作***的平板电脑基于第一JavaFX应用程序,使用javapackager生成第一原生应用程序。
其中,javapackager是一种官方提供的可以基于JavaFX应用程序生成原生应用程序的打包工具;上述执行命令仅是本申请实施例的一种示意性说明,并不对本申请实施例造成任何限定。
生成第一原生应用程序后,将第一原生应用程序所包含的目标文件提供给安装有第二操作***的第二设备。
例如,安装有windows操作***的平板电脑可以将第一原生应用程序中的App.cfg文件、App.exe文件、App.ico文件、与App.exe同目录的所有后缀名为.dll的文件、runtime目录作为目标文件,发送给安装有macOS操作***的平板电脑。
其中,App.cfg文件表示JavaFX应用程序信息的启动参数配置文件;App.ico文件表示原生应用程序的程序图标文件;App.exe文件表示原生应用程序入口文件;与App.exe同目录的所有后缀名为.dll的文件表示动态链接库文件。
步骤12,安装有第二操作***的第二设备,接收第一设备提供的目标文件;通过在第二操作***上将第二JavaFX应用程序与目标文件组合,生成可由第一操作***运行的第二原生应用程序。
所述第二JavaFX应用程序,是指待运行于第一操作***的JavaFX应用程序,比如可以是不同于第一JavaFX应用程序的任意JavaFX应用程序,当然,第二JavaFX应用程序也可能与第一JavaFX应用程序完全相同,本申请实施例对第二JavaFX应用程序的Java代码和具体功能等不做限定。
本申请实施例中,安装有第二操作***的第二设备,接收到第一设备提供的目标文件后,若目标文件中包括第一JavaFX应用程序的启动参数配置文件和第一JavaFX应用程序的可执行文件,则执行步骤121~步骤122,以实现将第二JavaFX应用程序与目标文件组合,生成可由第一操作***运行的第二原生应用程序:
步骤121,删除目标文件中的第一JavaFX应用程序的启动参数配置文件和第一JavaFX应用程序的可执行文件;
沿用上述实例,假设第一操作***为windows操作***,则目标文件中的第一JavaFX应用程序的启动参数配置文件和第一JavaFX应用程序的可执行文件分别是应用程序目录下的App.cfg文件以及app.jar文件,对应于上述步骤121中,即删除App.cfg文件以及app.jar文件。
步骤122,将第二JavaFX应用程序的启动参数配置文件和第二JavaFX应用程序的可执行文件添加到删除第一JavaFX应用程序的启动参数配置文件和第一JavaFX应用程序的可执行文件后的目标文件中,以生成可由第一操作***运行的第二原生应用程序。
所述第二JavaFX应用程序,是指待运行于第一操作***的JavaFX应用程序,比如可以是不同于第一JavaFX应用程序的任意JavaFX应用程序,例如,第二JavaFX应用程序可以是修复漏洞后的第一JavaFX应用程序,当然,第二JavaFX应用程序也可能与第一JavaFX应用程序完全相同,本申请实施例对第二JavaFX应用程序的Java代码和具体功能等不做限定。
结合上述描述可知,由于第二原生应用程序中除JavaFX应用程序的启动参数配置文件以及可执行文件外,其余文件均与第一原生应用程序中的文件相同,而第一原生应用程序在第一操作***上运行时,与第一富互联网应用程序的启动参数配置文件以及可执行文件均无关,因此,基于第一原生应用程序所包含的目标文件生成的第二原生应用程序也可以支持第一操作***运行。
或者,若安装有第二操作***的第二设备,接收到第一设备提供的目标文件后,目标文件中不包括第一JavaFX应用程序的启动参数配置文件和第一JavaFX应用程序的可执行文件,则执行下述步骤123,将第二JavaFX应用程序与目标文件组合,生成可由第一操作***运行的第二原生应用程序:
步骤123,将第二JavaFX应用程序的启动参数配置文件和第二JavaFX的可执行文件添加到目标文件中,生成可由第一操作***运行的第二原生应用程序。
采用本申请是实施例提供的方法,由于考虑到在同一操作***上基于不同JavaFX应用程序分别生成原生应用程序时,生成的各原生应用程序中除了JavaFX应用程序的启动参数配置文件和可执行文件之外的其他文件是对应相同的,相当于是给不同的JavaFX应用程序加了相同的“壳”,从而,在第二操作***上基于JavaFX应用程序以及第一操作***所加的“壳”,就可以组合生成可供第一操作***运行的原生应用程序,因此解决了现有技术中不能在一个操作***上基于JavaFX应用程序生成另一个操作***的原生应用程序的问题。
优选地,由于考虑到同一个操作***的不同版本上的原生应用程序的兼容性问题,比如Windows 10上生成的原生应用程序在Windows 7上无法正常运行,Windows7上生成的原生应用程序可以在Windows10上运行,因此,为了使生成的原生应用程序可以尽可能多的兼容不同版本的操作***,本申请实施例步骤11中,在第一操作***上基于第一JavaFX应用程序生成第一原生应用程序时,具体包括:
在目标第一操作***上基于第一JavaFX应用程序生成第一原生应用程序;
其中,目标第一操作***为不同版本的第一操作***中最低版本的第一操作***,例如,假设后续运行第二原生应用程序的第一操作***包含Android 7.0、Android8.0–Oreo、Android 9.0–Pie三个版本,则可以将Android 7.0作为目标第一操作***。
同理,对于windows操作***或macOS操作***而言,以此类推,选择操作***中最低版本的操作***作为目标第一操作***,此处不再赘述。
采用该方法,由于同一操作***上生成的原生应用程序具有向上版本兼容性,因此,在第一操作***中最低版本上基于第一JavaFX应用程序生成第一原生应用程序,可以解决第一操作***的不同版本上的原生应用程序的兼容性问题。
实施例2
为解决现有技术中不能在一个操作***上基于JavaFX应用程序生成另一个操作***的原生应用程序的问题。本申请实施例2提供了一种原生应用程序的生成方法,如图2所示。
为方便描述,本申请实施例中,以执行主体为安装有第二操作***的第二设备为例,对本申请实施例进行介绍,其中,所述第二设备比如可以是安装有windows操作***的平板电脑、安装有macOS操作***的平板电脑。本领域技术人员可以理解,本申请实施例以安装有第二操作***的第二设备为例对方法进行介绍,仅是一种示例性说明,并不对本方案对应的权利要求保护范围构成限制。
步骤21,第二设备获取在第一操作***上基于第一JavaFX应用程序生成的第一原生应用程序所包含的目标文件;
其中,所述目标文件至少包括:除第一JavaFX应用程序的启动参数配置文件和第一JavaFX应用程序的可执行文件之外的其他文件。
所述第一操作***,可以是windows操作***、macOS操作***、Linux等操作***中的任意一种。
所述JavaFX应用程序,是可以在桌面和移动模拟器上运行的富互联网应用程序,可以实现跨操作***运行。其中,在操作***运行JavaFX应用程序时,需要为JavaFX应用程序配置相应的运行环境。
所述原生应用程序,是基于JavaFX应用程序在操作***上生成的一种可供电子设备(例如智能电话、平板电脑等)使用的应用程序。
需要说明的是,第二设备获取在第一操作***上基于第一JavaFX应用程序生成的第一原生应用程序所包含的目标文件时,具体包括:
第二设备获取在目标第一操作***上基于第一JavaFX应用程序生成第一原生应用程序;
其中,目标第一操作***为不同版本的第一操作***中最低版本的第一操作***。
例如,假设第一设备分别在Android操作***中的Android 7.0、Android 8.0–Oreo、Android 9.0–Pie***上基于第一JavaFX应用程序,生成三个版本的第一原生应用程序,则当第二设备获取在目标第一操作***上基于第一JavaFX应用程序生成第一原生应用程序所包含的目标文件时,可以根据预先保存的第一操作***版本与第一设备的对应关系,优先从操作***版本最低的第一设备(即操作***为Android 7.0的第一设备)上获取第一原生应用程序所包含的目标文件。
采用该方法,由于同一操作***上生成的原生应用程序具有向上版本兼容性,因此,在第一操作***中最低版本上基于第一JavaFX应用程序生成第一原生应用程序,可以解决第一操作***的不同版本上的原生应用程序的兼容性问题。
本申请实施例中,例如可以通过拷贝、文件共享的方式,获取在第一操作***上基于第一JavaFX应用程序生成的第一原生应用程序所包含的目标文件。
本申请实施例中,通过拷贝、文件共享的方式获取目标文件仅是一种示例性说明,并不对本申请实施例造成任何限定。
步骤22,第二设备通过在第二操作***上将第二JavaFX应用程序与目标文件组合,生成可由第一操作***运行的第二原生应用程序。
其中,所述目标文件至少包括:除第一JavaFX应用程序的启动参数配置文件和第一JavaFX应用程序的可执行文件之外的其他文件。
所述第二JavaFX应用程序,是指待运行于第一操作***的JavaFX应用程序,它比如可以是不同于第一JavaFX应用程序的任意JavaFX应用程序,当然,第二JavaFX应用程序也可能与第一JavaFX应用程序完全相同,本申请实施例对第二JavaFX应用程序的Java代码和具体功能等不做限定。
本申请实施例中,基于上述步骤21获取到目标文件之后,在第二操作***上将第二JavaFX应用程序与目标文件组合,具体包括:
当目标文件中包括第一JavaFX应用程序的启动参数配置文件和第一JavaFX应用程序的可执行文件时,则删除第一JavaFX应用程序的启动参数配置文件和第一JavaFX应用程序的可执行文件;
在删除第一JavaFX应用程序的启动参数配置文件和第一JavaFX应用程序的可执行文件后的目标文件中,添加第二JavaFX应用程序的启动参数配置文件和第二JavaFX应用程序的可执行文件。
或者,当目标文件中不包括第一JavaFX应用程序的启动参数配置文件和第一JavaFX应用程序的可执行文件时,则将第二JavaFX应用程序的启动参数配置文件和第二JavaFX应用程序的可执行文件添加到目标文件中。
经过上述两种组合方式后的目标文件,即为生成的可由第一操作***运行的第二原生应用程序。
需要说明的是,由于第二原生应用程序中除JavaFX应用程序的启动参数配置文件以及可执行文件外,其余文件均与第一原生应用程序中的文件相同,而第一原生应用程序在第一操作***上运行时,与第一富互联网应用程序的启动参数配置文件以及可执行文件均无关,因此,基于第一原生应用程序所包含的目标文件生成的第二原生应用程序也可以支持第一操作***运行。
由于考虑到在同一操作***上基于不同JavaFX应用程序分别生成原生应用程序时,生成的各原生应用程序中除了JavaFX应用程序的启动参数配置文件和可执行文件之外的其他文件是对应相同的,相当于是给不同的JavaFX应用程序加了相同的“壳”,从而采用本申请实施例提供的方法,在第二操作***上基于JavaFX应用程序以及第一操作***所加的“壳”,就可以组合生成可供第一操作***运行的原生应用程序,因此解决了现有技术中不能在一个操作***上基于JavaFX应用程序生成另一个操作***的原生应用程序的问题。
实施例3
为解决现有技术为了可以在一个操作***上基于JavaFX应用程序生成另一个操作***的原生应用,本申请实施例3提供了一种原生应用程序的生成方法的具体实施案例之一,如图3所示。
在一个实施例中,原生应用程序的生成方法可以概括为准备步骤、打包步骤两部分。其中,准备步骤以及打包步骤均可以由运行脚本文件实现,比如,gradle脚本、ant脚本、JavaScript脚本、ActionScript脚本等。
为方便描述,本申请实施例中以运行脚本为gradle脚本为例,对本申请的具体实施步骤作进一步说明,具体描述如下:
准备步骤:
步骤31,考虑到同一个操作***的不同版本上的原生应用程序的兼容性问题,可以利用javapackager,在操作***的最低版本上基于JavaFX应用程序生成对应操作***的原生应用程序;
例如,假设目前存在Windows7 32,以及Windows10 64两种Windows操作***,则可以利用javapackager,在Windows操作***的最低版本Windows7 32上基于JavaFX应用程序生成JavaFX原生应用程序;
其中,利用javapackager,基于JavaFX应用程序生成原生应用程序仅是本申请实施例的一种示意性说明,并不对本申请实施例造成任何限定。
其中,在Windows 7 32操作***上基于JavaFX应用程序生成原生应用程序的具体实施方式同上述实施例1中的描述一致,此处不再赘述。
采用该方法,由于同一操作***上生成的原生应用程序具有向上版本兼容性,因此,在同一操作***中最低版本上基于第一JavaFX应用程序生成第一原生应用程序,可以解决同一操作***的不同版本上的原生应用程序的兼容性问题。
需要说明的是,本申请实施例中,所述原生应用程序,在不同操作***上均以原生的方式启动,例如,在Windows操作***上可以通过双击后缀名为.exe的文件的方式启动原生应用程序,在macOS X操作***上可以通过双击后缀名为.app的目录的方式启动原生应用程序;
步骤32,从操作***生成的原生应用中提取操作***对应的目标文件;
所述目标文件至少包括:除JavaFX应用程序的启动参数配置文件和JavaFX应用程序的可执行文件之外的其他文件;
沿用步骤31中的实例,即从Windows 7 32或者macOS操作***位操作***生成的原生应用中提取原生应用程序的启动参数配置文件和原生应用程序的可执行文件、动态链接库文件、原生应用程序的程序入口文件。
本申请实施例中,执行完步骤32后,可以将得到的目标文件进行存储、备份,以便后续操作中使用。
例如,当对JavaFX应用程序进行修改后,需要基于修改后的JavaFX应用程序生成新的原生应用程序时,则执行打包步骤33,具体如下:
步骤33,将修改后的JavaFX应用程序打包成jar包;将jar包分别与各操作***对应的目标文件组合,生成对应操作平台的原生应用程序。
本申请实施例中,例如,可以使用“gradle build”命令将修改后的JavaFX打包成jar包;
其中,将修改后的JavaFX应用程序打包成jar包是为了方便后续操作中与各操作***对应的目标文件组合,并不对本申请实施例中造成任何限定;例如,本申请实施例中,还可以直接将修改后的JavaFX应用程序与各操作***对应的目标文件组合,以生成对应操作平台的原生应用程序。
然后将jar包分别与上述步骤32中提取的目标文件进行组合,沿用上例,即将jar包与从Windows 7 32或者macOS操作***上提取的原生应用程序的启动参数配置文件和原生应用程序的可执行文件、动态链接库文件、原生应用程序的程序入口文件进行组合。
需要说明的是,本申请实施例中,由于将修改后的JavaFX应用程序打包成jar包以及将jar包与从Windows 7 32或者macOS操作***上提取的目标文件进行组合的过程,均不依赖于操作***,因此采用本申请实施例提供的方法,能够解决现有技术中的问题,此处不再赘述。
实施例4
为解决现有技术存在的不能在一个操作***上基于JavaFX应用程序生成另一个操作***的原生应用程序的问题,本申请实施例提供一种原生应用程序的生成方法。
为方便描述,本申请实施例中,以执行主体为安装有第一操作***的第一设备为例,对本申请实施例进行介绍,其中,所述第一设备比如可以是安装有windows操作***的平板电脑、安装有macOS操作***的平板电脑。本领域技术人员可以理解,本申请实施例以安装有第一操作***的第一设备为例对方法进行介绍,仅是一种示例性说明,并不对本方案对应的权利要求保护范围构成限制。
具体地,本申请实施例包括如下步骤:
步骤41,第一设备在第一操作***上基于第一JavaFX应用程序生成第一原生应用程序所包含的目标文件;
其中,所述目标文件至少包括:除第一JavaFX应用程序启动参数配置文件和第一JavaFX应用程序的可执行文件之外的其他文件。
所述第一设备可以是能够基于JavaFX应用程序在第一操作***上生成原生应用程序的一种电子设备。
考虑到同一个操作***的不同版本上的原生应用程序的兼容性问题,本申请实施例中,可以在第一操作***中的最低版本上基于第一JavaFX应用程序生成第一原生应用程序所包含的目标文件;其具体实施步骤与实施例1一致,此处不再赘述。
步骤42,第一设备将所述目标文件提供给安装有第二操作***的设备,以使得所述设备通过在所述第二操作***上将第二JavaFX应用程序与所述目标文件组合,生成可由所述第一操作***运行的第二原生应用程序。
当在第一操作***上基于第一JavaFX应用程序生成第一原生应用程序所包含的目标文件后,则将该目标文件提供给安装有第二操作***的设备,以使得该设备通过在第二操作***上将第二JavaFX应用程序与该目标文件组合,生成可由第一操作***运行的第二原生应用程序。
其中,由于在第二操作***上将第二JavaFX应用程序与该目标文件组合,生成可由第一操作***运行的第二原生应用程序的具体实施步骤与上述实施例1中的步骤22一致,因此,可参照实施例1中的描述内容,此处不再赘述。
由于本申请实施例采用与上述实施例1相同的申请构思,因此也能够解决现有技术中的问题,此处不再赘述。
实施例5
为解决现有技术存在的不能在一个操作***上基于JavaFX应用程序生成另一个操作***的原生应用程序的问题,本申请实施例提供一种原生应用程序的生成装置40,该装置的具体结构示意图如图5所示,包括获取单元51和组合单元52。各单元的功能如下:
获取单元51,用于获取在第一操作***上基于第一JavaFX应用程序生成的第一原生应用程序所包含的目标文件;其中,所述目标文件至少包括:除第一JavaFX应用程序的启动参数配置文件和第一JavaFX应用程序的可执行文件之外的其他文件。
所述第一JavaFX应用程序,是可以在操作***上运行的富互联网应用程序,可以实现跨操作***运行。其中,在操作***运行JavaFX应用程序时,需要为JavaFX配置相应的运行环境。
组合单元52,用于通过在第二操作***上将第二JavaFX应用程序与所述目标文件组合,生成可由所述第一操作***运行的第二原生应用程序。
所述第二JavaFX应用程序,是指待运行于第一操作***的JavaFX应用程序,比如可以是不同于第一JavaFX应用程序的任意JavaFX应用程序,当然,第二JavaFX应用程序也可能与第一JavaFX应用程序完全相同,本申请实施例对第二JavaFX应用程序的Java代码和具体功能等不做限定。
具体地,当目标文件中包括第一JavaFX应用程序的启动参数配置文件和第一JavaFX应用程序的可执行文件时,组合单元52可以用于:
删除目标文件中的所述第一JavaFX应用程序的启动参数配置文件和第一JavaFX应用程序的可执行文件;
将第二JavaFX应用程序的启动参数配置文件和第二JavaFX应用程序的可执行文件添加到删除第一JavaFX应用程序的启动参数配置文件和第一JavaFX应用程序的可执行文件后的目标文件中,以生成可由第一操作***运行的第二原生应用程序。
当目标文件中不包括第一JavaFX应用程序的启动参数配置文件和第一JavaFX应用程序的可执行文件时,组合单元52可以用于:
将第二JavaFX应用程序的启动参数配置文件和第二JavaFX应用程序的可执行文件添加目标文件中,以生成可由第一操作***运行的第二原生应用程序。
由于考虑到在同一操作***上基于不同JavaFX应用程序分别生成原生应用程序时,生成的各原生应用程序中除了JavaFX应用程序的启动参数配置文件和可执行文件之外的其他文件是对应相同的,相当于是给不同的JavaFX加了相同的“壳”,从而采用本申请实施例提供的装置,在第二操作***上基于JavaFX应用程序以及第一操作***所加的“壳”,就可以组合生成可供第一操作***运行的原生应用程序,因此解决了现有技术中不能在一个操作***上基于JavaFX应用程序生成另一个操作***的原生应用程序的问题。
实施例6
为解决现有技术存在的不能在一个操作***上基于JavaFX应用程序生成另一个操作***的原生应用程序的问题,本申请实施例提供一种原生应用程序的生成装置60,该装置的具体结构示意图如图6所示,包括获取单元61和组合单元62。各单元的功能如下:
生成单元61,用于在第一操作***上基于第一JavaFX应用程序生成第一原生应用程序所包含的目标文件;
其中,所述目标文件至少包括:除第一JavaFX应用程序启动参数配置文件和第一JavaFX应用程序的可执行文件之外的其他文件。
发送单元62,用于将所述目标文件提供给安装有第二操作***的设备,以使得所述设备通过在所述第二操作***上将第二JavaFX应用程序与所述目标文件组合,生成可由所述第一操作***运行的第二原生应用程序。
在一种实施方式中,考虑到同一个操作***的不同版本上的原生应用程序的兼容性问题,生成单元61可以用于:
在目标第一操作***上基于第一JavaFX应用程序生成第一原生应用程序;
其中,所述目标第一操作***,为不同版本的第一操作***中最低版本的第一操作***。
由于该装置采用与本申请实施例5相同的申请构思,因此也能够解决现有技术中的问题,此处不再赘述。
需要说明的是,以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
实施例7
为解决现有技术存在的不能在一个操作***上基于JavaFX应用程序生成另一个操作***的原生应用程序的问题,本申请实施例提供一种原生应用程序的生成***,该***的具体结构示意图如图7所示,包括安装有第一操作***的第一设备和安装有第二操作***的第二设备。各设备的功能如下:
安装有第一操作***的第一设备,用于获取在第一操作***上基于第一JavaFX应用程序生成的第一原生应用程序所包含的目标文件;其中,所述目标文件至少包括:除第一JavaFX应用程序启动参数配置文件和第一JavaFX应用程序的可执行文件之外的其他文件;
安装有第二操作***的第二设备,用于通过在第二操作***上将第二JavaFX应用程序与所述目标文件组合,生成可由所述第一操作***运行的第二原生应用程序。
本申请实施例中,第一设备和第二设备执行的各步骤的详细描述参照实施例1,此处不再赘述,且由于该***采用与本申请实施例1相同的申请构思,因此也能够解决现有技术中的问题,此处不再赘述。
优选的,本发明实施例还提供一种移动设备,包括处理器,存储器,存储在存储器上并可在所述处理器上运行的计算机程序,该计算机程序被处理器执行时,实现上述实施例中所述的原生应用程序的生成方法的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
该智能设备包括但不限于:射频单元、网络模块、音频输出单元、输入单元、传感器、显示单元、用户输入单元、接口单元、存储器、处理器、以及电源等部件。本领域技术人员可以理解,上述描述的移动终端结构并不构成对移动终端的限定,移动终端可以包括比上述描述内容更多或更少的部件,或者组合某些部件,或者不同的部件布置。在本发明实施例中,移动终端包括但不限于手机、平板电脑、笔记本电脑、掌上电脑、车载终端、可穿戴设备、以及计步器等。
其中,处理器,耦合到所述存储器,用于安装有第一操作***的第一设备,在所述第一操作***上基于第一JavaFX应用程序生成第一原生应用程序;将所述第一原生应用程序所包含的目标文件提供给第二设备;其中,所述目标文件至少包括:除第一JavaFX应用程序的启动参数配置文件和第一JavaFX应用程序的可执行文件之外的其他文件;安装有第二操作***的第二设备,接收所述第一设备提供的目标文件;通过在所述第二操作***上将第二JavaFX应用程序与所述目标文件组合,生成可由所述第一操作***运行的第二原生应用程序。
存储器,用于存储可在处理器上运行的计算机程序,该计算机程序被处理器执行时,实现处理器所实现的上述功能。
另外,移动终端包括一些未示出的功能模块,在此不再赘述。
优选地,本发明实施例还提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现上述实施例中所述任意一种方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。其中,所述的计算机可读存储介质,如只读存储器(Read-Only Memory,简称ROM)、随机存取存储器(RandomAccess Memory,简称RAM)、磁碟或者光盘等。
本领域内的技术人员应明白,本申请的实施例可提供为方法、***、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(***)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。

Claims (9)

1.一种原生应用程序的生成方法,其特征在于,包括:
安装有第一操作***的第一设备,在所述第一操作***上基于第一JavaFX应用程序生成第一原生应用程序;将所述第一原生应用程序所包含的目标文件提供给第二设备;其中,所述目标文件至少包括:除第一JavaFX应用程序的启动参数配置文件和第一JavaFX应用程序的可执行文件之外的其他文件;
安装有第二操作***的第二设备,接收所述第一设备提供的目标文件;通过在所述第二操作***上将第二JavaFX应用程序与所述目标文件组合,生成可由所述第一操作***运行的第二原生应用程序;
其中,所述目标文件还包括所述第一JavaFX应用程序的启动参数配置文件和第一JavaFX应用程序的可执行文件;则
通过在第二操作***上将第二JavaFX应用程序与所述目标文件组合,生成可由所述第一操作***运行的第二原生应用程序,具体包括:
删除所述目标文件中的所述第一JavaFX应用程序的启动参数配置文件和所述第一JavaFX应用程序的可执行文件;
将所述第二JavaFX应用程序的启动参数配置文件和所述第二JavaFX应用程序的可执行文件添加到删除所述第一JavaFX应用程序的启动参数配置文件和所述第一JavaFX应用程序的可执行文件后的目标文件中,以生成可由所述第一操作***运行的第二原生应用程序。
2.一种原生应用程序的生成方法,其特征在于,包括:
获取在第一操作***上基于第一JavaFX应用程序生成的第一原生应用程序所包含的目标文件;其中,所述目标文件至少包括:除第一JavaFX应用程序的启动参数配置文件和第一JavaFX应用程序的可执行文件之外的其他文件;
通过在第二操作***上将第二JavaFX应用程序与所述目标文件组合,生成可由所述第一操作***运行的第二原生应用程序;
其中,所述目标文件还包括所述第一JavaFX应用程序的启动参数配置文件和第一JavaFX应用程序的可执行文件;则
通过在第二操作***上将第二JavaFX应用程序与所述目标文件组合,生成可由所述第一操作***运行的第二原生应用程序,具体包括:
删除所述目标文件中的所述第一JavaFX应用程序的启动参数配置文件和所述第一JavaFX应用程序的可执行文件;
将所述第二JavaFX应用程序的启动参数配置文件和所述第二JavaFX应用程序的可执行文件添加到删除所述第一JavaFX应用程序的启动参数配置文件和所述第一JavaFX应用程序的可执行文件后的目标文件中,以生成可由所述第一操作***运行的第二原生应用程序。
3.如权利要求2所述的方法,其特征在于,可由所述第一操作***运行的第二原生应用程序,具体包括:不同版本的所述第一操作***均可运行的第二原生应用程序;
获取在第一操作***上基于第一JavaFX应用程序生成的第一原生应用程序所包含的目标文件,具体包括:
获取在目标第一操作***上基于所述第一JavaFX应用程序生成所述第一原生应用程序;
其中,所述目标第一操作***,为所述不同版本的所述第一操作***中最低版本的第一操作***。
4.一种原生应用程序的生成方法,其特征在于,包括:
在第一操作***上基于第一JavaFX应用程序生成第一原生应用程序所包含的目标文件;其中,所述目标文件至少包括:除第一JavaFX应用程序启动参数配置文件和第一JavaFX应用程序的可执行文件之外的其他文件;
将所述目标文件提供给安装有第二操作***的设备,以使得所述设备通过在所述第二操作***上将第二JavaFX应用程序与所述目标文件组合,生成可由所述第一操作***运行的第二原生应用程序;
其中,所述目标文件还包括所述第一JavaFX应用程序的启动参数配置文件和第一JavaFX应用程序的可执行文件;则
通过在第二操作***上将第二JavaFX应用程序与所述目标文件组合,生成可由所述第一操作***运行的第二原生应用程序,具体包括:
删除所述目标文件中的所述第一JavaFX应用程序的启动参数配置文件和所述第一JavaFX应用程序的可执行文件;
将所述第二JavaFX应用程序的启动参数配置文件和所述第二JavaFX应用程序的可执行文件添加到删除所述第一JavaFX应用程序的启动参数配置文件和所述第一JavaFX应用程序的可执行文件后的目标文件中,以生成可由所述第一操作***运行的第二原生应用程序。
5.一种原生应用程序的生成***,其特征在于,包括安装有第一操作***的第一设备和安装有第二操作***的第二设备,其中:
所述第一设备,用于在第一操作***上基于第一JavaFX应用程序生成第一原生应用程序;将所述第一原生应用程序所包含的目标文件提供给所述第二设备;其中,所述目标文件至少包括:除第一JavaFX应用程序启动参数配置文件和第一JavaFX应用程序的可执行文件之外的其他文件;
所述第二设备,用于接收所述第一设备提供的目标文件;通过在第二操作***上将第二JavaFX应用程序与所述目标文件组合,生成可由所述第一操作***运行的第二原生应用程序;
其中,所述目标文件还包括所述第一JavaFX应用程序的启动参数配置文件和第一JavaFX应用程序的可执行文件;则
通过在第二操作***上将第二JavaFX应用程序与所述目标文件组合,生成可由所述第一操作***运行的第二原生应用程序,具体包括:
删除所述目标文件中的所述第一JavaFX应用程序的启动参数配置文件和所述第一JavaFX应用程序的可执行文件;
将所述第二JavaFX应用程序的启动参数配置文件和所述第二JavaFX应用程序的可执行文件添加到删除所述第一JavaFX应用程序的启动参数配置文件和所述第一JavaFX应用程序的可执行文件后的目标文件中,以生成可由所述第一操作***运行的第二原生应用程序。
6.一种原生应用程序的生成装置,其特征在于,包括:
获取单元,用于获取在第一操作***上基于第一JavaFX应用程序生成的第一原生应用程序所包含的目标文件;其中,所述目标文件至少包括:除第一JavaFX应用程序的启动参数配置文件和第一JavaFX应用程序的可执行文件之外的其他文件;
组合单元,用于通过在第二操作***上将第二JavaFX应用程序与所述目标文件组合,生成可由所述第一操作***运行的第二原生应用程序;
其中,所述目标文件还包括所述第一JavaFX应用程序的启动参数配置文件和第一JavaFX应用程序的可执行文件;则
所述组合单元,具体用于:
删除所述目标文件中的所述第一JavaFX应用程序的启动参数配置文件和所述第一JavaFX应用程序的可执行文件;
将所述第二JavaFX应用程序的启动参数配置文件和所述第二JavaFX应用程序的可执行文件添加到删除所述第一JavaFX应用程序的启动参数配置文件和所述第一JavaFX应用程序的可执行文件后的目标文件中,以生成可由所述第一操作***运行的第二原生应用程序。
7.一种原生应用程序的生成装置,其特征在于,包括:
生成单元,用于在第一操作***上基于第一JavaFX应用程序生成第一原生应用程序所包含的目标文件;其中,所述目标文件至少包括:除第一JavaFX应用程序启动参数配置文件和第一JavaFX应用程序的可执行文件之外的其他文件;
发送单元,用于将所述目标文件提供给安装有第二操作***的设备,以使得所述设备通过在所述第二操作***上将第二JavaFX应用程序与所述目标文件组合,生成可由所述第一操作***运行的第二原生应用程序;
其中,所述目标文件还包括所述第一JavaFX应用程序的启动参数配置文件和第一JavaFX应用程序的可执行文件;则所述设备删除所述目标文件中的所述第一JavaFX应用程序的启动参数配置文件和所述第一JavaFX应用程序的可执行文件;将所述第二JavaFX应用程序的启动参数配置文件和所述第二JavaFX应用程序的可执行文件添加到删除所述第一JavaFX应用程序的启动参数配置文件和所述第一JavaFX应用程序的可执行文件后的目标文件中,以生成可由所述第一操作***运行的第二原生应用程序。
8.一种移动终端,其特征在于,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如权利要求1至4中任一项所述的原生应用程序的生成方法的步骤。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至4中任一项所述的原生应用程序的生成方法的步骤。
CN201910283019.4A 2019-04-10 2019-04-10 一种原生应用程序的生成方法、装置、移动终端 Active CN109976728B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910283019.4A CN109976728B (zh) 2019-04-10 2019-04-10 一种原生应用程序的生成方法、装置、移动终端

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910283019.4A CN109976728B (zh) 2019-04-10 2019-04-10 一种原生应用程序的生成方法、装置、移动终端

Publications (2)

Publication Number Publication Date
CN109976728A CN109976728A (zh) 2019-07-05
CN109976728B true CN109976728B (zh) 2022-04-26

Family

ID=67083815

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910283019.4A Active CN109976728B (zh) 2019-04-10 2019-04-10 一种原生应用程序的生成方法、装置、移动终端

Country Status (1)

Country Link
CN (1) CN109976728B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114138150B (zh) * 2022-01-28 2022-04-19 南京高盛魔笛信息科技有限公司 Windows平台下第三方APP原生集成的方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7610577B1 (en) * 2004-05-29 2009-10-27 Sun Microsystems, Inc. Method for developing platform independent launchable applications
CN105955782A (zh) * 2016-05-09 2016-09-21 北京奇虎科技有限公司 应用程序运行控制的方法及装置
CN106897096A (zh) * 2009-05-29 2017-06-27 甲骨文美国公司 Java商店
CN107102853A (zh) * 2017-03-26 2017-08-29 安徽继远软件有限公司 一种定制化移动操作***兼容Android应用的方法
CN107870821A (zh) * 2016-09-26 2018-04-03 平安科技(深圳)有限公司 应用程序的跨平台调用方法及***

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7610577B1 (en) * 2004-05-29 2009-10-27 Sun Microsystems, Inc. Method for developing platform independent launchable applications
CN106897096A (zh) * 2009-05-29 2017-06-27 甲骨文美国公司 Java商店
CN105955782A (zh) * 2016-05-09 2016-09-21 北京奇虎科技有限公司 应用程序运行控制的方法及装置
CN107870821A (zh) * 2016-09-26 2018-04-03 平安科技(深圳)有限公司 应用程序的跨平台调用方法及***
CN107102853A (zh) * 2017-03-26 2017-08-29 安徽继远软件有限公司 一种定制化移动操作***兼容Android应用的方法

Also Published As

Publication number Publication date
CN109976728A (zh) 2019-07-05

Similar Documents

Publication Publication Date Title
CN107577491B (zh) 一种基于Weex的移动应用内版本更新的方法、***
KR102204115B1 (ko) 패치 업그레이드 기반 파일 처리 방법 및 디바이스, 단말기, 및 저장 매체
CN105335187B (zh) 一种应用的处理方法及装置
JP6294886B2 (ja) アプリケーション用の中間言語コードからネイティブコードを生成すること
CN108229112B (zh) 一种保护应用程序、应用程序的运行方法以及装置
CN110007980B (zh) 多业务服务端的实现方法和装置
JP2006525575A (ja) ジャバマイクロデバイスにおけるジャバアプリケーションのデバッグ用の、オフデバイスクラス/リソースローディング方法、システム及びコンピュータプログラム製品
WO2012000759A1 (en) Runtime dynamic selection of an application server classloader
CN111399840B (zh) 一种模块开发方法及装置
CN110968357B (zh) 一种maven项目的打包方法、装置、存储介质及处理器
CN112189187B (zh) 统一平台的可扩展性
CN111897623B (zh) 一种集群管理方法、装置、设备及存储介质
CN112181588A (zh) 一种应用容器化方法、装置及电子设备和存储介质
CN104598267B (zh) 应用的调起方法及装置
CN116401003A (zh) 基于桌面操作***的安卓应用运行方法、***及存储介质
CN109976728B (zh) 一种原生应用程序的生成方法、装置、移动终端
CN113867768A (zh) 操作***处理方法、装置、电子设备及存储介质
CN110502251B (zh) 应用安装方法及装置
CN107092472B (zh) 一种动态发布方法及设备
CN106951265B (zh) 开发环境搭建方法及装置
CN113032104A (zh) 一种部署k8s容器应用的方法和装置
US10552135B1 (en) Reducing a size of an application package
CN106775608B (zh) 独立***进程的实现方法和装置
CN112799778A (zh) 一种容器应用启动方法、设备及介质
CN112416418A (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
GR01 Patent grant
GR01 Patent grant