CN109840133A - 应用功能的运行方法及装置 - Google Patents
应用功能的运行方法及装置 Download PDFInfo
- Publication number
- CN109840133A CN109840133A CN201711230514.6A CN201711230514A CN109840133A CN 109840133 A CN109840133 A CN 109840133A CN 201711230514 A CN201711230514 A CN 201711230514A CN 109840133 A CN109840133 A CN 109840133A
- Authority
- CN
- China
- Prior art keywords
- business
- operating system
- adaptation layer
- instruction
- function
- 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
Landscapes
- Devices For Executing Special Programs (AREA)
Abstract
本发明公开了一种应用功能的运行方法及装置,涉及计算机技术领域,主要目的在于降低native应用开发的人力成本,提高native应用开发的效率。主要技术方案包括:语言解释器执行业务代码,以解析得到适配层能够识别的业务操作指令及业务内容,所述业务代码为针对native应用的业务功能预编写的业务代码;所述适配层将所述语言解释器得到的业务操作指令转换为操作系统能够识别的操作系统指令;应用层执行所述操作系统指令对所述业务内容进行操作,实现所述native应用的业务功能。本发明主要用于native应用的开发的过程中。
Description
技术领域
本发明涉及计算机技术领域,特别是涉及一种应用功能的运行方法及装置。
背景技术
Native应用(App)是一种基于智能手机本地操作系统如ios、安卓(Android)等,并使用原生程式编写运行的第三方应用程序,其也叫本地App。一般使用的开发语言为JAVA、C++、Objective-C。
开发native应用已经有相当长的历史了,目前开发一款native应用需要分别进行ios版本开发和安卓版本开发,企业每开发一款native应用至少要招聘ios工程师和安卓工程师分别进行相应版本app的开发,人力成本较高;并且若要变更native应用的功能性细节,需要和ios工程师、安卓工程师分别进行沟通,导致沟通成本增高,开发效率受到影响。
发明内容
有鉴于此,本发明提供的一种应用功能的运行方法及装置,主要目的在于降低native应用开发的人力成本,提高native应用开发的效率。
为了解决上述问题,本发明主要提供如下技术方案:
第一方面,本发明提供了一种应用功能的运行方法,包括:
语言解释器执行业务代码,以解析得到适配层能够识别的业务操作指令及业务内容,所述业务代码为针对native应用的业务功能预编写的业务代码;
所述适配层将所述语言解释器得到的业务操作指令转换为操作系统能够识别的操作系统指令;
应用层执行所述操作系统指令对所述业务内容进行操作,实现所述native应用的业务功能。
第二方面,本发明还提供了一种应用功能的运行装置,包括:
语言解释器模块,用于执行业务代码,以解析得到适配层能够识别的业务操作指令及业务内容,所述业务代码为针对native应用的业务功能预编写的业务代码;
适配层模块,用于将所述语言解释器得到的业务操作指令转换为操作系统能够识别的操作系统指令;
应用层模块,用于执行所述操作系统指令对所述业务内容进行操作,实现所述native应用的业务功能。
第三方面,本发明还提供一种终端设备,包括至少一个处理器,一存储介质,所述存储介质用于存储所述处理器执行的程序,以及所述处理器执行所述程序过程中所需的数据;
其中,所述程序被处理器执行时实现如上所述应用功能的运行方法的步骤。
本发明提供的一种应用功能的运行方法及装置,能够将针对native应用的业务功能预编写的业务代码执行解析得到适配层能够识别的业务操作指令及业务内容,并且适配层能够将业务操作指令转换为不同操作系统能够识别并执行的操作系统指令,使得针对native应用的业务功能预编写的业务代码能够在不同操作系统下被执行,进而实现不同操作系统下同一native应用业务功能的实现,与现有技术相比,针对同一native应用业务功能,不用再针对不同的操作系统组织不同的编程人员编写针对各操作系统的业务代码,降低了native应用业务功能开发的人力成本,提高了开发native应用的效率。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1示出了本发明实施例提供的一种应用功能的运行方法的流程图;
图2示出了本发明实施例提供的一种适配层建立业务操作指令与操作系统指令的对应关系的方法的流程图;
图3示出了本发明实施例提供的一种应用功能的运行方法的结构示意图;
图4出了本发明实施例提供的一种应用功能的运行装置的组成框图;
图5示出了本发明实施例提供的另一种应用功能的运行装置的组成框图;
图6示出了本发明实施例提供的另一种应用功能的运行装置的组成框图。
具体实施方式
下面将参照附图更详细地描述本发明的示例性实施例。虽然附图中显示了本发明的示例性实施例,然而应当理解,可以以各种形式实现本发明而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本发明,并且能够将本发明的范围完整的传达给本领域的技术人员。
为解决现有技术中同一native应用针对不同的操作系统,例如ios操作系统、android操作系统,需要分别组织人员进行native应用的业务功能的代码编写,造成native应用开发人力成本高以及开发效率低的问题,本发明实施例提供一种技术方案,能够实现针对不同操作系统进行native应用开发时,仅需要进行一次native应用的业务功能代码的编写,与现有技术相比,降低了native应用的开发的人力成本,缩短了native应用的开发周期,提高了开发效率。具体的技术方案如下:
本发明实施例提供一种应用功能的运行方法,如图1所示,该方法包括:
101、语言解释器执行业务代码,以解析得到适配层能够识别的业务操作指令及业务内容,所述业务代码为针对native应用的业务功能预编写的业务代码。
其中,本发明实施例中,在针对native应用的业务功能进行业务代码的编写时,可以使用任何一种native应用开发语言,具体的本发明实施例对此不进行限制。例如,其可以优选web开发中使用比较方便的JavaScript语言。
并且,本步骤中,执行的是预编写的业务代码,以解析得到该预编写的业务代码要实现的业务功能,以及实现该业务功能时所涉及的业务操作指令以及业务内容。
102、所述适配层将所述语言解释器得到的业务操作指令转换为操作系统能够识别的操作系统指令。
该处需要说明的是,由于不同的操作系统具有各自的操作系统指令,不同的操作系统只能执行其自身定义的操作系统指令,非其自身定义的指令不能识别和执行。故,步骤101中获取的实现业务功能的业务操作指令和业务内容不能直接在不同的操作系统中执行,若要实现在不同操作系统的执行,则需要将获取的业务操作指令,按照对应操作系统进行业务操作指令的转换,将业务操作指令转换为对应操作系统能够识别的操作系统指令。
例如,若获取的业务操作指令为“向页面中插入1个文本节点”,则在ios操作系统下,将该业务操作指令转换为ios操作系统能够识别的操作系统指令“调用ios接口向页面中插入文本”。
103、应用层执行所述操作系统指令对所述业务内容进行操作,实现所述native应用的业务功能。
本发明实施例中,能够将针对native应用的业务功能预编写的业务代码执行解析得到适配层能够识别的业务操作指令及业务内容,并且适配层能够将业务操作指令转换为不同操作系统能够识别并执行的操作系统指令,使得针对native应用的业务功能预编写的业务代码能够在不同操作系统下被执行,进而实现不同操作系统下同一native应用业务功能的实现,与现有技术相比,针对同一native应用业务功能,不用再针对不同的操作系统组织不同的编程人员编写针对各操作系统的业务代码,降低了native应用业务功能开发的人力成本,提高了开发native应用的效率。
进一步的,所述适配层将所述语言解释器得到的业务操作指令转换为操作系统能够识别的操作系统指令,可以采用但不局限以下的方法实现,该方法包括:
所述适配层在预存的业务操作指令与操作系统指令的对应关系中,查找所述语言解释器得到的业务操作指令对应的操作系统指令,所述预存的操作系统指令是能够被操作系统识别的指令。
其中,在所述适配层在预存的业务操作指令与操作系统指令的对应关系中,查找所述语言解释器得到的业务操作指令对应的操作系统指令之前,还包括:在所述适配层建立和存储业务操作指令与操作系统指令的对应关系。
在所述适配层建立和存储业务操作指令与操作系统指令的对应关系,可以采用但不局限于以下的方法实现,具体如图2所示,该方法包括:
201、获取各操作系统的操作系统指令以及所述操作系统指令对应的native应用的业务功能。
该处需要说明的是,每种操作系统都有各自定义的原操作系统语言对其实现的业务功能进行对应系统操作指令的编写;一种业务功能对应一种系统操作指令。本发明实施例中,获取各操作系统的操作系统指令时,可以直接与该操作系统连接直接获取,也可以通过外部的人工输入获取,具体的本发明实施例对此不进行限制。在获取所述操作系统指令对应的native应用的业务功能时,可以直接请求获取每个操作系统指令对应的业务功能,也可以根据操作系统语言的编写规则,对获取的操作系统指令进行解析获取,具体的本发明实施例对此不进行限制。
202、获取业务操作指令以及所述业务操作指令对应的native应用的业务功能。
该处需要说明的是,本发明实施例中的业务操作指令是适配层从语言解释器处获取的,该语言解释器执行预编辑的业务代码解析获得的该业务操作指令,该语言解释器在执行该预编辑的业务代码时,能够获知该业务操作指令的功能。其在将获取的业务操作指令和业务内容发送给适配层时,可以将该业务操作指令对应的业务功能发送给适配层,也可以在适配层请求的时候再发送。具体的本发明实施例对此不进行限制。
基于上述的描述,适配层在获取所述业务操作指令对应的native应用的业务功能时,可以主动的接收,也可以被动的获取,具体的本发明实施例对此也不进行限制。可以根据实际需求具体执行。
203、将native应用业务功能相同的业务操作指令和操作系统指令在所述适配层建立对应关系。
为了将一次编写的native应用业务功能代码在不同操作系统中应用,最重要的就是实现业务操作指令在各操作系统中被识别和执行。故,本发明实施例中,将native应用业务功能相同的业务操作指令和操作系统指令建立对应关系,以便根据该对应关系,实现业务操作指令到操作系统指令的转换。
基于上述的描述,在执行不同native应用业务功能时,得到的业务操作指令不同,进而转换得到的操作系统指令也不同,例如:当语言解释器解析获取到的业务操作指令为页面布局以及接口调用时,由于其不涉及后续内容的再输入,则适配层在进行该类操作系统指令的转换时,直接查询预存的业务操作指令与操作系统指令的对应关系,获取对应的操作系统指令即可。当语言解释器解析获取到的业务操作指令为页面交互时,由于其涉及后续用户的再输入操作,故在获取操作系统能够识别和执行的操作系统指令时,可以采用但不局限于以下的方法实现,该方法包括:
所述语言解释器执行用于实现页面交互的业务代码,以解析得到适配层能够识别的交互操作指令及交互操作内容;
所述适配层将所述语言解释器得到的交互操作指令转换为操作系统能够识别的操作系统交互操作指令。
以下将结合ios操作系统、android操作系统,具体介绍native应用的实现方法。针对运行在终端设备端的native应用,可以设置不同的业务开发层级,例如,如图3所示,该业务开发层级包括4个层级,分别为业务代码层、语言解释器层、适配层、以及应用层。其中,业务代码层是预编写native应用的业务功能代码的。
如上所述的,在该业务代码层进行业务功能代码的编写时,可以使用任何一种native应用开发语言,本发明实施例中,优选使用JavaScript语言,该JavaScript语言,不仅可以制作app页面,还能处理用户与页面的交互、app与服务器间的通信等功能。
语言解释器层,该层负责执行在业务层预编写的业务代码,以解析得到适配层能够识别的业务操作指令及业务内容。在本发明实施例中,可以使用但不局限于v8引擎。
适配层,在本发明实施例中,针对不同的操作系统分别设置对应的适配层;例如,ios操作系统可以为ios适配层;android操作系统可以为android适配层;该适配层主要是和语言解释器层进行配合,将在业务代码识别层预编写的代码中包含的业务操作指令进行转换,转换为各操作系统能够识别的操作系统指令,以便各操作系统进行对应native应用的业务功能的实现。
当客户端的操作系统为ios操作系时,该ios适配层可以将v8引擎层传递过来的页面布局业务操作指令进行处理转换,得到ios操作系统的页面布局操作系统指令;该ios适配层还可以将v8引擎传递过来的native接口调用(网络通信、拍照等功能)指令,转换为ios操作系统中的网络通信、拍照等操作系统指令;并在ios app与用户交互(双击、触摸、滑动等)的过程,该语言解释器执行用于实现页面交互的业务代码,以解析得到适配层能够识别的交互操作指令及交互操作内容,并传递给ios适配层,并在ios适配层将该交互操作指令转换为ios操作系统的交互操作的操作系统指令。
应用层,执行所述操作系统指令对所述业务内容进行操作,实现所述native应用的业务功能。当该业务功能为页面布局时,执行页面布局操作系统指令,实现所述native应用的页面布局功能,将页面效果展示给用户。
当客户端的操作系统为android操作系时,android适配层的功能和运行机制与ios适配层类似,这里就不再一一赘述,下面将以具体实例进行具体的阐述。
假设native应用的业务功能为:在app页面中展示一行文字,内容为“你好,世界”。本发明实施例提供如下的方法,实现一次代码的编写,在两个操作系统中实现相同的业务功能。具体的执行流程为:在业务代码层使用JavaScript语言预编写业务代码,编写的业务代码如下:
ajx.ui.root.append(ajx.ui.inflace(<label text=”你好,世界”/>))。
语言解释器层即v8引擎执行使用上述的业务代码,以解析得到适配层能够识别的业务操作指令和业务内容,该业务操作指令为向页面中插入1个文本节点;业务内容为文本节点要显示的文本为“你好,世界”,然后将该业务操作指令和业务内容传递给对应的适配层。例如在ios操作系统,将该业务操作指令和业务内容传递给ios适配层,在android操作系统,将该业务操作指令和业务代码传递给android适配层。
当操作系统为ios操作系统时,ios适配层从v8引擎获取向页面插入一个文本节点的业务操作指令后,在预存的业务操作指令与操作系统指令的对应关系中,查找向页面插入一个文本节点的业务操作指令对应的操作系统指令,将该向页面中插入1个文本节点的业务操作指令,转换为ios操作系统能够识别和执行的ios操作系统指令,该操作系统指令为调用ios接口向页面中插入文本;ios应用层执行该调用ios接口向页面中插入文本,文本内容为“你好,世界”,这样ios app页面中就会显示一段文本,文本内容为“你好,世界”。
当操作系统为android操作系统时,android适配层从v8引擎获取向页面插入一个文本节点的业务操作指令后,在预存的业务操作指令与操作系统指令的对应关系中,查找向页面插入一个文本节点的业务操作指令对应的操作系统指令,将该向页面中插入1个文本节点的业务操作指令,转换为android操作系统能够识别和执行的操作系统指令,该操作系统指令为调用android接口向页面中插入文本,android应用层执行该调用ios接口向页面中插入文本,文本内容为“你好,世界”,这样android app页面中就会显示一段文本,该文本内容为“你好,世界”。
经过以上步骤,只需要使用JavaScript语言进行一次业务功能代码的编写,即可实现在ios app和android app上显示同样的页面效果。并且,在app开发完成后,如果需要做功能修改或版本迭代,也只需修改JavaScript代码一次即可,不必像传统app开发方式那样,修改业务功能还得ios代码和android代码都得修改一遍,大大降低了app的开发维护成本,提高了app的开发效率。
基于上述方法实施例,本发明实施例提供一种应用功能的运行装置,如图4所示,该装置包括:
语言解释器模块31,用于执行业务代码,以解析得到适配层能够识别的业务操作指令及业务内容,所述业务代码为针对native应用的业务功能预编写的业务代码;其中,本发明实施例中,在针对native应用的业务功能进行业务代码的编写时,可以使用任何一种native应用开发语言,具体的本发明实施例对此不进行限制。例如,其可以优选web开发中使用比较方便的JavaScript语言。
适配层模块32,用于将所述语言解释器得到的业务操作指令转换为操作系统能够识别的操作系统指令;其中,所述操作系统可以为但不局限于ios操作系统、android操作系统。该处需要说明的是,由于不同的操作系统具有各自的操作系统指令,不同的操作系统只能执行其自身定义的操作系统指令,非自身定义的指令不能识别和执行。故语言解释器模块31获取的实现业务功能的业务操作指令和业务内容不能直接在不同的操作系统中执行,若要实现在不同操作系统的执行,则需要将获取的业务操作指令,按照对应操作系统进行业务操作指令的转换,将业务操作指令转换为对应操作系统能够识别操作系统指令。
应用层模块33,用于执行所述操作系统指令对所述业务内容进行操作,实现所述native应用的业务功能。
进一步的,如图5所示,所述适配层模块32包括:
查找单元321,用于在预存的业务操作指令与操作系统指令的对应关系中,查找所述语言解释器得到的业务操作指令对应的操作系统指令,所述预存的操作系统指令是能够被操作系统识别的指令。
进一步的,如图6所示,所述适配层模块32还包括:
关系建立单元322,用于在在所述适配层模块中建立和存储业务操作指令与操作系统指令的对应关系;其中,所述关系建立单元322在所述适配层模块中建立和存储业务操作指令与操作系统指令的对应关系过程具体包括:
获取各操作系统的操作系统指令以及所述操作系统指令对应的native应用的业务功能;该处需要说明的是,每种操作系统都有各自定义的原操作系统语言对其实现的业务功能进行对应系统操作指令的编写;一种业务功能对应一种系统操作指令。本发明实施例中,所述适配层获取各操作系统的操作系统指令时,可以直接与该操作系统连接直接获取,也可以通过外部的人工输入获取,具体的本发明实施例对此不进行限制。在获取所述操作系统指令对应的native应用的业务功能时,可以直接请求获取每个操作系统指令对应的业务功能,也可以根据操作系统语言的编写规则,对获取的操作系统指令进行解析获取,具体的本发明实施例对此不进行限制。
获取业务操作指令以及所述业务操作指令对应的native应用的业务功能;该处需要说明的是,本发明实施例中的业务操作指令是适配层从语言解释器处获取的,该语言解释器执行预编辑的业务代码解析获得的该业务操作指令,该语言解释器在执行该预编辑的业务代码时,能够获知该业务操作指令的功能。其在将获取的业务操作指令和业务内容发送给适配层时,可以将该业务操作指令对应的业务功能发送给适配层,也可以在适配层请求的时候再发送。具体的本发明实施例对此不进行限制。基于上述的描述,适配层在所述业务操作指令对应的native应用的业务功能时,可以主动的接收,也可以被动的索取,具体的本发明实施例对此也不进行限制。可以根据实际需求具体执行。
将native应用业务功能相同的业务操作指令和操作系统指令在所述适配层建立对应关系。
进一步的,基于上述的描述,在执行不同native应用业务功能时,得到的业务操作指令不同,转换得到的操作系统指令也不同,例如:当语言解释器解析获取到的业务操作指令为页面布局以及接口调用时,由于其不涉及后续内容的再输入,则适配层在进行该类操作系统指令的转换时,直接查询预存的业务操作指令与操作系统指令的对应关系,获取对应操作系统指令即可。当语言解释器解析获取到的业务操作指令为页面交互时,由于其涉及后续用户的再输入操作,故在获取操作系统能够识别和执行的操作系统指令时,所述语言解释器模块31还用于,在业务操作指令为页面交互操作指令时,接收页面交互过程中输入的交互操作,并将所述交互操作进行解析得到适配层能够识别的交互操作指令及交互操作内容;所述适配层模块32还用于,将所述语言解释器得到的交互操作指令转换为操作系统能够识别的操作系统交互操作指令。
本发明实施例中涉及的各功能模块和功能单元的其他描述,可以参考方法实施例中的对应描述,此处将不再赘述。
本发明实施例还提供一种终端设备,包括至少一个处理器,一存储介质,所述存储介质用于存储所述处理器执行的程序,以及所述处理器执行所述程序过程中所需的数据;
其中,所述程序被处理器执行时实现如上所述应用功能的运行方法的步骤。
本发明实施例中,能够将针对native应用的业务功能预编写的业务代码执行解析得到适配层能够识别的业务操作指令及业务内容,并且适配层能够将业务操作指令转换为不同操作系统能够识别并执行的操作系统指令,使得针对native应用的业务功能预编写的业务代码能够在不同操作系统下被执行,进而实现不同操作系统下同一native应用业务功能的实现,与现有技术相比,针对同一native应用业务功能,不用再针对不同的操作系统组织不同的编程人员编写针对各操作系统的业务代码,降低了native应用业务功能开发的人力成本,提高了开发native应用的效率。
并且,当更新native应用的业务功能性细节时,只需要修改针对native应用的业务功能预编写的业务代码,不需要单独与不同的操作系统业务开发人员进行沟通修改,在一定程度上提高了开发native应用的效率。
并且,在app开发完成后。如果需要做功能修改或版本迭代,也只需修改JavaScript代码一次即可,不必像传统app开发方式那样,修改业务功能还得将ios代码和android代码都得修改一遍,大大降低了app的开发维护成本,提高了app的开发效率。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。存储器是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。
本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
以上仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。
Claims (10)
1.一种应用功能的运行方法,其特征在于,包括:
语言解释器执行业务代码,以解析得到适配层能够识别的业务操作指令及业务内容,所述业务代码为针对native应用的业务功能预编写的业务代码;
所述适配层将所述语言解释器得到的业务操作指令转换为操作系统能够识别的操作系统指令;
应用层执行所述操作系统指令对所述业务内容进行操作,实现所述native应用的业务功能。
2.根据权利要求1所述的方法,其特征在于,所述适配层将所述语言解释器得到的业务操作指令转换为操作系统能够识别的操作系统指令包括:
所述适配层在预存的业务操作指令与操作系统指令的对应关系中,查找所述语言解释器得到的业务操作指令对应的操作系统指令,所述预存的操作系统指令是能够被操作系统识别的指令。
3.根据权利要求2所述的方法,其特征在于,在所述适配层在预存的业务操作指令与操作系统指令的对应关系中,查找所述语言解释器得到的业务操作指令对应的操作系统指令之前,该方法还包括:
在所述适配层建立和存储业务操作指令与操作系统指令的对应关系。
4.根据权利要求3所述的方法,其特征在于,在所述适配层建立业务操作指令与操作系统指令的对应关系包括:
获取各操作系统的操作系统指令以及所述操作系统指令对应的native应用的业务功能;
获取业务操作指令以及所述业务操作指令对应的native应用的业务功能;
将native应用业务功能相同的业务操作指令和操作系统指令在所述适配层建立对应关系。
5.根据权利要求1-4中任一项所述的方法,其特征在于,若业务操作指令为页面交互操作指令,所述语言解释器执行业务代码,以解析得到适配层能够识别的业务操作指令及业务内容具体包括:
所述语言解释器执行用于实现页面交互的业务代码,以解析得到适配层能够识别的交互操作指令及交互操作内容;
所述适配层将所述语言解释器得到的交互操作指令转换为操作系统能够识别的操作系统交互操作指令。
6.一种应用功能的运行装置,其特征在于,包括:
语言解释器模块,用于执行业务代码,以解析得到适配层能够识别的业务操作指令及业务内容,所述业务代码为针对native应用的业务功能预编写的业务代码;
适配层模块,用于将所述语言解释器得到的业务操作指令转换为操作系统能够识别的操作系统指令;
应用层模块,用于执行所述操作系统指令对所述业务内容进行操作,实现所述native应用的业务功能。
7.根据权利要求6所述的装置,其特征在于,所述适配层模块包括:
查找单元,用于在预存的业务操作指令与操作系统指令的对应关系中,查找所述语言解释器得到的业务操作指令对应的操作系统指令,所述预存的操作系统指令是能够被操作系统识别的指令。
8.根据权利要求7所述的装置,其特征在于,所述适配层模块还包括:
关系建立单元,用于在所述适配层模块中建立和存储业务操作指令与操作系统指令的对应关系。
9.根据权利要求8所述的装置,其特征在于,所述关系建立单元在所述适配层模块中建立和存储业务操作指令与操作系统指令的对应关系过程具体包括:
获取各操作系统的操作系统指令以及所述操作系统指令对应的native应用的业务功能;
获取业务操作指令以及所述业务操作指令对应的native应用的业务功能;
将native应用业务功能相同的业务操作指令和操作系统指令在所述适配层建立对应关系。
10.一种终端设备,其特征在于,包括至少一个处理器,一存储介质,所述存储介质用于存储所述处理器执行的程序,以及所述处理器执行所述程序过程中所需的数据;
其中,所述程序被处理器执行时实现权利要求1-5中任一项所述应用功能的运行方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711230514.6A CN109840133A (zh) | 2017-11-29 | 2017-11-29 | 应用功能的运行方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711230514.6A CN109840133A (zh) | 2017-11-29 | 2017-11-29 | 应用功能的运行方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109840133A true CN109840133A (zh) | 2019-06-04 |
Family
ID=66882476
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711230514.6A Pending CN109840133A (zh) | 2017-11-29 | 2017-11-29 | 应用功能的运行方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109840133A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112965737A (zh) * | 2019-11-27 | 2021-06-15 | 亚信科技(南京)有限公司 | 一种业务功能调用方法及装置 |
CN113434190A (zh) * | 2021-06-30 | 2021-09-24 | 青岛海尔科技有限公司 | 数据处理方法和装置、存储介质及电子设备 |
WO2024031553A1 (zh) * | 2022-08-11 | 2024-02-15 | 西门子股份公司 | 实时控制方法、实时控制装置、计算设备及存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070234286A1 (en) * | 2006-03-28 | 2007-10-04 | Bo Huang | Methods and apparatus to implement annotation based thunking |
US20120072601A1 (en) * | 2010-09-16 | 2012-03-22 | Qualcomm Incorporated | Apparatus and method for providing internet protocol (ip) based services independent of platform or operating systems using ip multimedia subsystem (ims) |
CN102929593A (zh) * | 2011-08-12 | 2013-02-13 | 中国科学院声学研究所 | 一种Android系统兼容内置应用的方法 |
CN104126186A (zh) * | 2011-12-23 | 2014-10-29 | 爱尔斯特里普Ip控股有限责任公司 | 开发用于计算设备的多平台应用的系统和方法 |
CN104536797A (zh) * | 2015-01-14 | 2015-04-22 | 大唐微电子技术有限公司 | 一种Java程序预编译方法和预编译器 |
CN104765603A (zh) * | 2015-03-18 | 2015-07-08 | 百度在线网络技术(北京)有限公司 | 应用程序构建方法及装置 |
-
2017
- 2017-11-29 CN CN201711230514.6A patent/CN109840133A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070234286A1 (en) * | 2006-03-28 | 2007-10-04 | Bo Huang | Methods and apparatus to implement annotation based thunking |
US20120072601A1 (en) * | 2010-09-16 | 2012-03-22 | Qualcomm Incorporated | Apparatus and method for providing internet protocol (ip) based services independent of platform or operating systems using ip multimedia subsystem (ims) |
CN102929593A (zh) * | 2011-08-12 | 2013-02-13 | 中国科学院声学研究所 | 一种Android系统兼容内置应用的方法 |
CN104126186A (zh) * | 2011-12-23 | 2014-10-29 | 爱尔斯特里普Ip控股有限责任公司 | 开发用于计算设备的多平台应用的系统和方法 |
CN104536797A (zh) * | 2015-01-14 | 2015-04-22 | 大唐微电子技术有限公司 | 一种Java程序预编译方法和预编译器 |
CN104765603A (zh) * | 2015-03-18 | 2015-07-08 | 百度在线网络技术(北京)有限公司 | 应用程序构建方法及装置 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112965737A (zh) * | 2019-11-27 | 2021-06-15 | 亚信科技(南京)有限公司 | 一种业务功能调用方法及装置 |
CN113434190A (zh) * | 2021-06-30 | 2021-09-24 | 青岛海尔科技有限公司 | 数据处理方法和装置、存储介质及电子设备 |
CN113434190B (zh) * | 2021-06-30 | 2023-06-16 | 青岛海尔科技有限公司 | 数据处理方法和装置、存储介质及电子设备 |
WO2024031553A1 (zh) * | 2022-08-11 | 2024-02-15 | 西门子股份公司 | 实时控制方法、实时控制装置、计算设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109597661B (zh) | 一种业务功能配置方法及装置 | |
CN105335412B (zh) | 用于数据转换、数据迁移的方法和装置 | |
US10026041B2 (en) | Interoperable machine learning platform | |
CN108173706B (zh) | 一种多业务系统下的业务标记方法、装置及设备 | |
US8671417B2 (en) | Lightweight framework for web applications | |
CN107229848A (zh) | 一种代码加固方法和装置 | |
CN107918666A (zh) | 一种区块链上的数据同步方法和系统 | |
US10656907B2 (en) | Translation of natural language into user interface actions | |
EP3931684B1 (en) | Workflow engine tool | |
CN109240670A (zh) | 模块化的软件开发方法、系统、设备及介质 | |
CN102810057A (zh) | 一种记录日志的方法 | |
CN109725989B (zh) | 一种任务执行的方法及装置 | |
CN109840133A (zh) | 应用功能的运行方法及装置 | |
CN109214193B (zh) | 数据加密、机器学习模型训练方法、装置以及电子设备 | |
CN106326099B (zh) | 一种用于程序跟踪的方法、装置及电子设备 | |
CN110264361A (zh) | 一种区块链的数据解析方法及装置 | |
CN110471754A (zh) | 作业调度中的数据展示方法、装置、设备及存储介质 | |
CN109145055A (zh) | 一种基于Flink的数据同步方法和系统 | |
CN106357791A (zh) | 业务处理方法、装置及系统 | |
CN107809332A (zh) | 复合接口配置及复合接口调用方法、装置 | |
CN110633959A (zh) | 基于图结构的审批任务创建方法、装置、设备及介质 | |
US20110055137A1 (en) | Efficient binary protocol marshalling for rule engine sessions | |
CN107391272A (zh) | 多进程数据交互的方法和终端 | |
CN108153745B (zh) | 一种应用数据调用方法及应用开发系统 | |
CN109582776B (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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20190604 |
|
RJ01 | Rejection of invention patent application after publication |