CN104461582A - 业务处理方法、装置以及设备 - Google Patents
业务处理方法、装置以及设备 Download PDFInfo
- Publication number
- CN104461582A CN104461582A CN201410850561.0A CN201410850561A CN104461582A CN 104461582 A CN104461582 A CN 104461582A CN 201410850561 A CN201410850561 A CN 201410850561A CN 104461582 A CN104461582 A CN 104461582A
- Authority
- CN
- China
- Prior art keywords
- library file
- platform
- target platform
- general
- business
- 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
- Stored Programmes (AREA)
Abstract
本申请提供一种业务处理方法、装置以及设备,应用于编译设备上,所述编译设备预安装多个不同编译器,各编译器分别与一应用平台对应,所述业务处理方法包括:获取多平台通用业务源代码,其中,所述多平台通用业务源代码用于表示多个应用平台通用的业务流程,且能够被所述多个不同编译器编译;调用所述多个不同编译器分别对所述多平台通用业务源代码进行编译,生成与各应用平台对应的目标平台库文件。本申请减少了开发人员的工作量,节约了开发成本,加快了开发进度。
Description
技术领域
本申请涉及移动互联网技术领域,尤其涉及业务处理方法、装置以及设备。
背景技术
在移动互联网领域中,有大量的业务(例如,广告业务)需要在不同的终端设备上运行,由于不同终端设备所使用的开发平台(例如,Android、iOS、Windows)不同,开发人员需要针对不同的开发平台分别编写业务源代码。但是,不同开发平台上的业务流程功能通常相同。因此,针对不同开发平台分别进行业务流程编程的方式将导致开发人员的工作量加大,开发成本高,延缓了开发进度。
发明内容
有鉴于此,本申请提供了一种业务处理方法,应用于编译设备上,所述编译设备预安装多个不同编译器,各编译器分别与一应用平台对应,所述业务处理方法包括:
获取多平台通用业务源代码,其中,所述多平台通用业务源代码用于表示多个应用平台通用的业务流程,且能够被所述多个不同编译器编译;
调用所述多个不同编译器分别对所述多平台通用业务源代码进行编译,生成与各应用平台对应的目标平台库文件。
本申请还提供了一种业务处理方法,应用于终端设备上,所述终端设备预安装有与自身应用平台对应的目标平台库文件,所述业务处理方法包括:
加载所述目标平台库文件,其中,所述目标平台库文件为编译设备根据多平台通用业务源代码生成的,所述多平台通用业务源代码用于表示多个应用平台通用的业务流程,且能够被所述多个不同编译器编译;
调用所述目标平台库文件的业务函数,执行所述目标平台库文件表示的多个应用平台通用的业务流程。
本申请还提供了一种业务处理装置,应用于编译设备上,所述编译设备预安装多个不同编译器,各编译器分别与一应用平台对应,所述业务处理装置包括:
获取单元,用于获取多平台通用业务源代码,其中,所述多平台通用业务源代码用于表示多个应用平台通用的业务流程,且能够被所述多个不同编译器编译;
生成单元,用于调用所述多个不同编译器分别对所述多平台通用业务源代码进行编译,生成与各应用平台对应的目标平台库文件。
本申请还提供了一种业务处理装置,应用于终端设备上,所述终端设备预安装有与自身应用平台对应的目标平台库文件,所述业务处理装置包括:
加载单元,用于加载所述目标平台库文件,其中,所述目标平台库文件为编译设备根据多平台通用业务源代码生成的,所述多平台通用业务源代码用于表示多个应用平台通用的业务流程,且能够被所述多个不同编译器编译;
调用单元,用于调用所述目标平台库文件的业务函数,执行所述目标平台库文件表示的多个应用平台通用的业务流程。
本申请还提供了一种编译设备,所述编译设备预安装多个不同编译器,各编译器分别与一应用平台对应,包括:
获取单元,用于获取多平台通用业务源代码,其中,所述多平台通用业务源代码用于表示多个应用平台通用的业务流程,且能够被所述多个不同编译器编译;
生成单元,用于调用所述多个不同编译器分别对所述多平台通用业务源代码进行编译,生成与各应用平台对应的目标平台库文件。
本申请还提供了一种终端设备,所述终端设备预安装有与自身应用平台对应的目标平台库文件,包括:
加载单元,用于加载所述目标平台库文件,其中,所述目标平台库文件为编译设备根据多平台通用业务源代码生成的,所述多平台通用业务源代码用于表示多个应用平台通用的业务流程,且能够被所述多个不同编译器编译;
调用单元,用于调用所述目标平台库文件的业务函数,执行所述目标平台库文件表示的多个应用平台通用的业务流程。
本申请通过编译设备中的不同编译器对多平台通用业务源代码进行编译,生成各个应用平台的目标平台库文件。各个应用平台的终端设备安装适用于自身应用平台的目标平台库文件,在加载目标平台库文件后,通过调用目标平台库文件的业务函数,执行通用业务流程。可见,本申请只需要根据通用业务流程设计和维护一套多平台通用业务源代码,即可在不同应用平台终端设备上实现相同的业务流程,避免了不必要的重复劳动,减少了开发人员的工作量,节约了开发成本,加快了开发进度。
附图说明
图1是本申请一种实施例基于编译设备的业务处理方法的处理流程图;
图2是本申请另一种实施例基于终端设备的业务处理方法的处理流程图;
图3是本申请一种实施例中广告业务处理流程图;
图4是本申请一种实施例中业务处理装置的基础硬件示意图;
图5是本申请一种实施例中业务处理装置的结构示意图;
图6是本申请另一种实施例中业务处理装置的结构示意图;
图7是本申请一种实施例中编译设备的结构示意图;
图8是本申请一种实施例中终端设备的结构示意图。
具体实施方式
为使本申请的目的、技术方案及优点更加清楚明白,以下参照附图对本申请所述方案作进一步地详细说明。
随着移动互联网的发展,越来越多的业务需要在不同应用平台的终端设备上运行。目前,比较流行的应用平台包括Android平台、iOS平台以及Windows平台。开发人员需针对不同的应用平台分别采用不同应用平台的编程语言编写适用于自身应用平台的业务源代码(例如,采用Java语言编写适用于Android平台的业务源代码),实现相应的业务流程(亦可称之为业务逻辑)。但是,从业务层面来说,各个应用平台实现的业务流程中可能存在部分业务流程相同,而现有技术方案中对相同业务流程仍需分别编写和维护各个应用平台自身的业务源代码,这无疑增加了开发人员的工作量和开发成本,且由于业务流程越来越复杂,容易导致不同应用平台间业务流程不一致性。
针对上述问题,本申请实施例提出一种业务处理方法,该方法通过编译设备中的不同编译器对多平台通用业务源代码进行编译,生成各个应用平台的目标平台库文件。各个应用平台的终端设备安装适用于自身应用平台的目标平台库文件,在加载目标平台库文件后,通过调用目标平台库文件的业务函数,执行通用业务流程。
参见图1,为本申请业务处理方法的一个实施例流程图,该实施例从编译设备侧对业务处理过程进行描述。
步骤110,获取多平台通用业务源代码,其中,所述多平台通用业务源代码用于表示多个应用平台通用的业务流程(以下简称通用业务流程),且能够被所述多个不同编译器编译。
从前述描述可知,不同应用平台的终端设备执行的业务流程中可能有部分业务流程相同,本申请实施例中的编译设备将这部分相同的业务流程提取出来,作为适用于多个应用平台的通用业务流程,对该通用业务流程进行编码。具体的,可以通过以下方式获取通用业务流程:
编译设备接收各终端设备发送的业务流程,对接收到的业务流程进行识别;
获取每个终端设备均有执行的业务流程,并将每个终端设备均执行的业务流程作为所述通用业务流程。
上述获取通用的业务流程的方式可如下表1所示:
表1
由于用户的业务需求不断变化,会导致相应的业务流程更新,因此,编译设备通常在对通用业务流程编码之前,判断适用于多个应用平台的通用业务流程是否更新,在判定更新的情况下,更新多个应用平台的通用业务流程。进一步的,本实施例还可在生成目标库文件后,定时地判断多个应用平台通用的业务流程是否更新,并在判定更新的情况下更新所述多个应用平台通用的业务流程。然后再对更新后的业务流程进行上述编码过程。
编译设备根据当前确定下来的适用于多个应用平台的通用业务流程,对通用业务流程进行编码,生成多平台通用业务源代码,该多平台通用业务源代码用于表示多个应用平台的通用业务流程。需要说明的是,本申请实施例中采用原生语言(例如,C语言、C++语言)对通用业务流程进行编码。这是由于在后续处理中需要通过不同应用平台的编译器对多平台通用业务源代码进行编译,而不同应用平台的编译器均支持采用原生语言编写的源代码。
步骤120,调用所述多个不同编译器分别对所述多平台通用业务源代码进行编译,生成与各应用平台对应的目标平台库文件。
在生成多平台通用业务源代码后,编译设备通过预先安装于编译设备上的多个不同编译器分别对多平台通用业务源代码进行编译,生成与各应用平台对应的目标平台库文件,其中,每一个编译器分别对应一个应用平台。例如,编译设备调用Android平台的NDK(Native Development Kit,原生开发工具)交叉编译器对多平台通用业务源代码进行编译,生成适用于Android平台的目标平台库文件(.so文件);调用iOS平台的Xcode交叉编译器对多平台通用业务源代码进行编译,生成适用于iOS平台的目标平台库文件(.a文件);Windows平台本身通过C++实现,因此,可以调用原生语言通用的编译器对多平台通用业务源代码进行编译,生成适用于Windows平台的目标平台库文件(.dll文件或.lib文件)。
开发人员在使用不同应用平台的编程语言编写各个应用平台的其他业务源代码时,无需再编写通用业务流程部分的源代码,可以通过在各个应用平台的其他业务源代码中引用上述生成的各个应用平台对应的目标平台库文件实现通用业务流程。在本申请中,所述其他业务是指除通用业务流程外的业务,例如前述表1终端设备A的视频播放业务。在完成其他业务源代码编程后,对各个应用平台的其他业务源代码进行编译,并根据编译结果打包成对应各个应用平台的可安装文件(包括基于其他业务源代码生成的其他业务文件以及基于多平台通用源代码生成的目标平台库文件),以便在对应应用平台的终端设备上安装。结合前述表1,本段所指的技术方案可如下表2所示。
表2
在上述通过不同编译器生成的目标平台库文件中有动态库文件(.so文件、.dll文件)和静态库文件(.a文件、.lib文件),编译设备根据不同类型的目标平台库文件可以作进一步的处理。编译设备首先判断各个编译器生成的目标平台库文件的类型,当目标平台库文件为动态库文件时,可将生成的目标平台库文件上传到服务器或直接发送给对应应用平台的终端设备。终端设备可通过远程访问服务器或本地获取目标平台库文件,便于通用业务流程的升级。而当目标平台库文件为静态库文件时,由于静态库文件的自身特性,只能通过上述与对应应用平台的业务源代码共同编译打包的方式在终端设备上重新安装,以实现通用业务流程的升级。
另外,根据本发明实施例提供的技术方案可知,通用业务流程的实现实际上为一个独立的开发模块,相对于其他业务流程来说为透明实现。在其他业务流程需更新的情况下,各终端设备的开发人员可以只专注于其他业务流程的开发。在其他业务流程的开发完成后,可直接与目标平台库文件进行结合,实现各终端设备的所有业务流程,减少了代码开发量及维护量,提高了开发效率。
参见图2,为本申请业务处理方法的另一个实施例流程图,该实施例从终端设备侧对业务处理过程进行描述。
步骤210,加载所述目标平台库文件,其中,所述目标平台库文件为编译设备根据多平台通用业务源代码生成的,所述多平台通用业务源代码用于表示多个应用平台通用的业务流程,且能够被所述多个不同编译器编译。
各个应用平台的终端设备通过安装上述打包的对应应用平台的安装文件,在终端设备上实现所有业务流程。当终端设备执行通用业务流程时,首先加载该通用业务流程对应的目标平台库文件,该目标平台库文件为编译设备根据多平台通用业务源代码生成的,该多平台通用业务源代码用于表示多个应用平台通用的业务流程,且能够被多个不同编译器编译。目标平台库文件的具体生成过程参见步骤110和步骤120中的描述,在此不再赘述。
终端设备在加载目标平台库文件根据库文件的类型不同,也会有不同的处理方式。当目标平台库文件为静态库文件时,由于编译设备已将静态库文件与终端设备的其他业务源代码整体编译,生成一个可执行目标文件,该目标文件中包括静态库文件,因此,终端设备在加载目标文件时,同时实现了目标平台库文件的加载。
当目标平台库文件为动态库文件时,虽然编译设备同样对动态库文件与终端设备的其他业务源代码进行了编译,生成一个可执行目标文件,但该目标文件中并不包括动态库文件,动态库文件与目标文件打包在同一个安装文件中。因此,终端设备在加载目标文件后,执行目标文件,当目标文件需要启动通用业务流程/功能时,才将该通用业务流程/功能对应的目标平台库文件进行加载。由于目标平台库文件(动态库文件)与目标文件分离,因此,目标平台库文件可以实现自动加载和更新,具体过程如下:
在前述描述中已介绍,编译设备可以将生成的目标平台库文件上传到服务器中,当通用业务流程升级时,编译设备可以将编译生成的最新版本的目标平台库文件上传到服务器中。终端设备在加载目标平台库文件时,首先通过远程访问的方式从服务器中获取目标平台库文件的最新版本号,若目标平台库文件的当前版本号不大于最新版本号,则判定当前的目标平台库文件不为最新版本的目标平台库文件。终端设备从服务器获取最新版本的目标平台库文件进行加载。
步骤220,调用所述目标平台库文件的业务函数,执行所述目标平台库文件表示的多个应用平台通用的业务流程。
在完成目标平台库文件的加载后,终端设备可以通过调用该目标平台库文件中的业务函数,实现通用业务流程。当目标平台库文件为动态库文件时,终端设备会调用从服务器上获取的最新版本的目标平台库文件中的业务函数,当最新版本的目标平台库文件的业务函数调用失败时,调用原有的目标平台库文件中的业务函数;当最新版本的目标平台库文件中的业务函数调用成功时,可删除原有的目标平台库文件,从而完成目标平台库文件的更新,以及实现通用业务流程的升级。本实施例可实现当更新通用业务流程时,使终端设备的系统兼具灵活性及稳定性。
现以广告业务流程作为通用业务流程为例,介绍在各个应用平台(Android平台、iOS平台以及Windows平台)终端设备上实现广告业务流程的过程。
目前,在大量的终端设备上都有广告业务的需求,对于不同平台的终端设备其广告业务流程是相同的,因此,可以将广告业务流程作为不同平台终端设备的通用业务流程。
广告业务通常包括广告请求、广告监测、广告数据上报等功能。其中,广告请求可以细分为前贴、暂停、浮层、标版、中贴以及后贴等形式;广告监测可以细分为曝光监测、事件监测、进度监测以及点击监测等;数据上报可以细分为数据请求上报、曝光上报以及事件上报等。上述功能在不同平台的终端设备上可以复用。
以下结合图3介绍广告业务处理过程。
步骤310,编译设备根据广告业务需求生成广告业务流程。
编译设备根据广告业务需求中需要实现的广告请求、广告监测、广告数据上报等功能,生成可实现上述功能的广告业务流程。
步骤320,编译设备根据广告业务流程生成广告业务源代码。
编译设备可以采用C++语言对广告业务流程进行编码,生成广告业务源代码。
步骤330,编译设备调用各个平台的编译器对广告业务源代码进行编译,生成各个平台的广告业务库文件。
编译设备调用Android平台的NDK交叉编译器对广告业务源代码进行编译,生成适用于Android平台的动态库文件广告业务.so;调用iOS平台的Xcode交叉编译器对广告业务源代码进行编译,生成适用于iOS平台的静态库文件广告业务.a;调用原生语言通用编译器对广告业务源代码进行编译,生成适用于Windows平台的动态库文件.dll或静态库文件广告业务.lib。在上述生成的广告业务库文件中均包含广告请求、广告监测、广告数据上报等功能对应的广告业务函数。
步骤340,编译设备将各个平台的广告业务库文件与对应平台终端设备的其它业务源代码进行编译,并打包生成可安装文件。
步骤350,终端设备安装对应平台的安装文件。
步骤360,终端设备加载对应平台的广告业务库文件。
由于Android平台的库文件为动态库文件广告业务.so,因此,Android平台的终端设备可在执行业务流程对应的目标文件时动态加载广告业务.so库文件;iOS平台的库文件为静态库文件广告业务.a,该库文件已集成目标文件中,因此,iOS平台的终端设备在目标文件加载时即已实现广告业务.a的加载;Windows平台的库文件可以是动态库文件广告业务.dll,也可以是静态库文件广告业务.lib,Windows平台终端设备对动态库文件广告业务.dll的加载参见Android平台终端设备的动态库加载过程,对静态库文件广告业务.lib的加载参见iOS平台终端设备的静态库加载过程。
步骤370,终端设备在启动广告业务时,调用广告业务库文件中的广告业务函数,实现广告业务流程。
以广告业务中的广告监测功能为例,在各个平台对应的广告业务库文件中均包含广告监控函数。当各个平台终端设备需要启动广告监测功能时,直接调用广告监测函数,即可实现广告监测功能。例如,Android平台终端设备可以通过JNI接口调用广告业务.so库文件中的广告监测函数admonitor(x,y);同理,iOS平台终端设备以及Windows平台终端设备都可以通过接口调用对应广告业务库文件中的广告监测函数。
由上述描述可知,本申请实施例只需要维护一套广告业务源代码,各个平台的编译器均可对该广告业务源代码进行编译,生成对应平台的库文件,从而实现了通用广告业务在不同平台终端设备上的应用,提高了开发效率和整体开发进度。
进一步的,本实施例还可在生成目标库文件后,定时地判断多个应用平台通用的业务流程是否更新,并在判定更新的情况下更新所述多个应用平台通用的业务流程。然后再对更新后的业务流程进行上述步骤310-370的过程。
当目标平台库文件为动态库文件时,终端设备会调用从服务器上获取的最新版本的目标平台库文件中的业务函数,当最新版本的目标平台库文件的业务函数调用失败时,调用原有的目标平台库文件中的业务函数;当最新版本的目标平台库文件中的业务函数调用成功时,可删除原有的目标平台库文件,从而完成目标平台库文件的更新,以及实现通用业务流程的升级。本实施例可实现当更新通用业务流程时,使终端设备的系统兼具灵活性及稳定性。
另外,根据本发明实施例提供的技术方案可知,通用业务流程的实现实际上为一个独立的开发模块,相对于其他业务流程来说为透明实现。在其他业务流程需更新的情况下,各终端设备的开发人员可以只专注于其他业务流程的开发。在其他业务流程的开发完成后,可直接与目标平台库文件进行结合,实现各终端设备的所有业务流程,减少了代码开发量及维护量,提高了开发效率。
与前述业务处理方法的实施例相对应,本申请还提供业务处理装置的实施例。
本申请业务处理装置的实施例可以应用在编译设备或终端设备上。装置实施例可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。以软件实现为例,作为一个逻辑意义上的装置,是通过其所在设备的CPU运行存储器中对应的计算机程序指令形成的。从硬件层面而言,如图4所示,为本申请业务处理装置所在设备的一种硬件结构图,除了图4所示的CPU、存储器之外,实施例中装置所在的设备通常还可以包括其他硬件。
请参考图5,为本申请一个实施例中的业务处理装置的结构示意图。该业务处理装置包括:获取单元501和生成单元502,其中:
获取单元501,用于获取多平台通用业务源代码,其中,所述多平台通用业务源代码用于表示多个应用平台通用的业务流程,且能够被所述多个不同编译器编译;
生成单元502,与获取单元501相连,用于调用所述多个不同编译器分别对所述多平台通用业务源代码进行编译,生成与各应用平台对应的目标平台库文件。
进一步地,所述业务处理装置还包括:
确定单元,与获取单元501相连,用于在所述获取单元501获取多平台通用业务源代码之前,确定所述多个应用平台通用的业务流程,并根据所述多个应用平台通用的业务流程生成所述多平台通用业务源代码。
进一步地,所述业务处理装置还包括:
判断单元,与确定单元相连,用于在所述确定单元确定所述多个应用平台通用的业务流程之前,判断所述多个应用平台通用的业务流程是否更新,并在判定更新的情况下更新所述多个应用平台通用的业务流程。
进一步地,所述业务处理装置还包括:
处理单元,可与生成单元502相连,用于判断所述目标平台库文件是否为动态库文件,并在判定所述目标平台库文件为动态库文件的情况下将所述目标平台库文件上传到服务器或将所述目标平台库文件发送至对应应用平台的终端设备。
上述图5示出的业务处理装置的实施例可以应用在编译设备中,其具体实现过程可参见前述方法实施例的说明,在此不再赘述。
请参考图6,为本申请另一个实施例中的业务处理装置的结构示意图。该业务处理装置包括:加载单元601和调用单元602,其中:
加载单元601,用于加载所述目标平台库文件,其中,所述目标平台库文件为编译设备根据多平台通用业务源代码生成的,所述多平台通用业务源代码用于表示多个应用平台通用的业务流程,且能够被所述多个不同编译器编译;
调用单元602,与加载单元601相连,用于调用所述目标平台库文件的业务函数,执行所述目标平台库文件表示的多个应用平台通用的业务流程。
进一步地,所述加载单元601,包括:
版本判断模块,用于当所述目标平台库文件为动态库文件时,判断所述目标平台库文件是否为最新版本的目标平台库文件;
文件加载模块,与版本判断模块相连,用于当所述目标平台库文件不为最新版本的目标平台库文件时,加载最新版本的目标平台库文件。
进一步地,所述版本判断模块,包括:
版本获取子模块,用于从服务器获取所述目标平台库文件的最新版本号;
版本判定子模块,与版本获取子模块相连,用于若所述目标平台库文件的当前版本号不大于最新版本号,则判定所述目标平台库文件不为最新版本的目标平台库文件。
进一步地,所述业务处理装置,还包括:
所述调用单元,可与加载单元601相连,具体用于当所述最新版本的目标平台库文件的业务函数调用失败时,调用原有的目标平台库文件中的业务函数;当所述最新版本的目标平台库文件中的业务函数调用成功时,删除原有的目标平台库文件。
上述图6示出的业务处理装置的实施例可以应用在终端设备中,其具体实现过程可参见前述方法实施例的说明,在此不再赘述。
请参考图7,为本申请一个实施例中的编译设备的结构示意图。该编译设备包括获取单元71和生成单元72,其中:
获取单元71,用于获取多平台通用业务源代码,其中,所述多平台通用业务源代码用于表示多个应用平台通用的业务流程,且能够被所述多个不同编译器编译;
生成单元72,用于调用所述多个不同编译器分别对所述多平台通用业务源代码进行编译,生成与各应用平台对应的目标平台库文件。
上述图7示出的编译设备的实施例,其实现过程可参见前述编译设备侧的方法实施例的说明,在此不再赘述。
请参考图8,为本申请一个实施例中的终端设备的结构示意图。该终端设备包括加载单元81和调用单元82,其中:
加载单元81,用于加载所述目标平台库文件,其中,所述目标平台库文件为编译设备根据多平台通用业务源代码生成的,所述多平台通用业务源代码用于表示多个应用平台通用的业务流程,且能够被所述多个不同编译器编译;
调用单元82,用于调用所述目标平台库文件的业务函数,执行所述目标平台库文件表示的多个应用平台通用的业务流程。
上述图8示出的终端设备的实施例,其实现过程可参见前述终端设备侧的方法实施例的说明,在此不再赘述。
从以上方法、装置以及设备的实施例中可以看出,本申请通过编译设备中的不同编译器对多平台通用业务源代码进行编译,生成各个应用平台的目标平台库文件。各个应用平台的终端设备安装适用于自身应用平台的目标平台库文件,在加载目标平台库文件后,通过调用目标平台库文件的业务函数,执行通用业务流程。可见,本申请只需要设计和维护一套多平台通用业务源代码,即可在不同应用平台终端设备上实现相同的业务流程,避免了不必要的重复劳动,减少了开发人员的工作量,节约了开发成本,加快了开发进度。
以上所述仅为本申请的较佳实施例而已,并不用以限制本申请,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请保护的范围之内。
Claims (18)
1.一种业务处理方法,应用于编译设备上,所述编译设备预安装多个不同编译器,各编译器分别与一应用平台对应,其特征在于,所述业务处理方法包括:
获取多平台通用业务源代码,其中,所述多平台通用业务源代码用于表示多个应用平台通用的业务流程,且能够被所述多个不同编译器编译;
调用所述多个不同编译器分别对所述多平台通用业务源代码进行编译,生成与各应用平台对应的目标平台库文件。
2.根据权利要求1所述的业务处理方法,其特征在于,所述获取多平台通用业务源代码之前还包括:
确定所述多个应用平台通用的业务流程,并根据所述多个应用平台通用的业务流程生成所述多平台通用业务源代码。
3.根据权利要求2所述的业务处理方法,其特征在于,所述确定所述多个应用平台通用的业务流程之前还包括:
判断所述多个应用平台通用的业务流程是否更新,并在判定更新的情况下更新所述多个应用平台通用的业务流程。
4.根据权利要求1至3任一项所述的业务处理方法,其特征在于,还包括:
判断所述目标平台库文件是否为动态库文件,并在判定所述目标平台库文件为动态库文件的情况下将所述目标平台库文件上传到服务器或将所述目标平台库文件发送至对应应用平台的终端设备。
5.一种业务处理方法,应用于终端设备上,其特征在于,所述终端设备预安装有与自身应用平台对应的目标平台库文件,所述业务处理方法包括:
加载所述目标平台库文件,其中,所述目标平台库文件为编译设备根据多平台通用业务源代码生成的,所述多平台通用业务源代码用于表示多个应用平台通用的业务流程,且能够被所述多个不同编译器编译;
调用所述目标平台库文件的业务函数,执行所述目标平台库文件表示的多个应用平台通用的业务流程。
6.根据权利要求5所述的业务处理方法,其特征在于,所述加载所述目标平台库文件包括:
当所述目标平台库文件为动态库文件时,判断所述目标平台库文件是否为最新版本的目标平台库文件;
当所述目标平台库文件不为最新版本的目标平台库文件时,加载最新版本的目标平台库文件。
7.根据权利要求6所述的业务处理方法,其特征在于,所述判断所述目标平台库文件是否为最新版本的目标平台库文件,包括:
从服务器获取所述目标平台库文件的最新版本号;
若所述目标平台库文件的当前版本号不大于最新版本号,则判定所述目标平台库文件不为最新版本的目标平台库文件。
8.根据权利要求6或7所述的业务处理方法,其特征在于,所述调用所述目标平台库文件的业务函数,包括:
当所述最新版本的目标平台库文件的业务函数调用失败时,调用原有的目标平台库文件中的业务函数;
当所述最新版本的目标平台库文件中的业务函数调用成功时,删除原有的目标平台库文件。
9.一种业务处理装置,应用于编译设备上,所述编译设备预安装多个不同编译器,各编译器分别与一应用平台对应,其特征在于,所述业务处理装置包括:
获取单元,用于获取多平台通用业务源代码,其中,所述多平台通用业务源代码用于表示多个应用平台通用的业务流程,且能够被所述多个不同编译器编译;
生成单元,用于调用所述多个不同编译器分别对所述多平台通用业务源代码进行编译,生成与各应用平台对应的目标平台库文件。
10.根据权利要求9所述的业务处理装置,其特征在于,所述业务处理装置还包括:
确定单元,用于在所述获取单元获取多平台通用业务源代码之前,确定所述多个应用平台通用的业务流程,并根据所述多个应用平台通用的业务流程生成所述多平台通用业务源代码。
11.根据权利要求10所述的业务处理装置,其特征在于,所述业务处理装置还包括:
判断单元,用于在所述确定单元确定所述多个应用平台通用的业务流程之前,判断所述多个应用平台通用的业务流程是否更新,并在判定更新的情况下更新所述多个应用平台通用的业务流程。
12.根据权利要求9至11任一项所述的业务处理装置,其特征在于,所述业务处理装置还包括:
处理单元,用于判断所述目标平台库文件是否为动态库文件,并在判定所述目标平台库文件为动态库文件的情况下将所述目标平台库文件上传到服务器或将所述目标平台库文件发送至对应应用平台的终端设备。
13.一种业务处理装置,应用于终端设备上,其特征在于,所述终端设备预安装有与自身应用平台对应的目标平台库文件,所述业务处理装置包括:
加载单元,用于加载所述目标平台库文件,其中,所述目标平台库文件为编译设备根据多平台通用业务源代码生成的,所述多平台通用业务源代码用于表示多个应用平台通用的业务流程,且能够被所述多个不同编译器编译;
调用单元,用于调用所述目标平台库文件的业务函数,执行所述目标平台库文件表示的多个应用平台通用的业务流程。
14.根据权利要求13所述的业务处理装置,其特征在于,所述加载单元,包括:
版本判断模块,用于当所述目标平台库文件为动态库文件时,判断所述目标平台库文件是否为最新版本的目标平台库文件;
文件加载模块,用于当所述目标平台库文件不为最新版本的目标平台库文件时,加载最新版本的目标平台库文件。
15.根据权利要求14所述的业务处理装置,其特征在于,所述版本判断模块,包括:
版本获取子模块,用于从服务器获取所述目标平台库文件的最新版本号;
版本判定子模块,用于若所述目标平台库文件的当前版本号不大于最新版本号,则判定所述目标平台库文件不为最新版本的目标平台库文件。
16.根据权利要求14或15所述的业务处理装置,其特征在于:
所述调用单元,具体用于当所述最新版本的目标平台库文件的业务函数调用失败时,调用原有的目标平台库文件中的业务函数;当所述最新版本的目标平台库文件中的业务函数调用成功时,删除原有的目标平台库文件。
17.一种编译设备,所述编译设备预安装多个不同编译器,各编译器分别与一应用平台对应,其特征在于,所述编译设备包括:
获取单元,用于获取多平台通用业务源代码,其中,所述多平台通用业务源代码用于表示多个应用平台通用的业务流程,且能够被所述多个不同编译器编译;
生成单元,用于调用所述多个不同编译器分别对所述多平台通用业务源代码进行编译,生成与各应用平台对应的目标平台库文件。
18.一种终端设备,所述终端设备预安装有与自身应用平台对应的目标平台库文件,其特征在于,所述终端设备包括:
加载单元,用于加载所述目标平台库文件,其中,所述目标平台库文件为编译设备根据多平台通用业务源代码生成的,所述多平台通用业务源代码用于表示多个应用平台通用的业务流程,且能够被所述多个不同编译器编译;
调用单元,用于调用所述目标平台库文件的业务函数,执行所述目标平台库文件表示的多个应用平台通用的业务流程。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410850561.0A CN104461582A (zh) | 2014-12-30 | 2014-12-30 | 业务处理方法、装置以及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410850561.0A CN104461582A (zh) | 2014-12-30 | 2014-12-30 | 业务处理方法、装置以及设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN104461582A true CN104461582A (zh) | 2015-03-25 |
Family
ID=52907693
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410850561.0A Pending CN104461582A (zh) | 2014-12-30 | 2014-12-30 | 业务处理方法、装置以及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104461582A (zh) |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105867993A (zh) * | 2016-03-29 | 2016-08-17 | 乐视控股(北京)有限公司 | 一种软件产品编译方法及设备 |
CN105930185A (zh) * | 2016-04-19 | 2016-09-07 | 乐视控股(北京)有限公司 | 应用程序更新方法、装置、终端和服务器 |
CN107070964A (zh) * | 2016-12-08 | 2017-08-18 | 上海找钢网信息科技股份有限公司 | 基于异构环境的远程通信打包方法及系统 |
CN107357605A (zh) * | 2017-06-01 | 2017-11-17 | 北京趣拿软件科技有限公司 | 运行安装文件的方法和装置 |
CN108132808A (zh) * | 2016-12-01 | 2018-06-08 | 北京金山云网络技术有限公司 | 一种渠道包生成方法及装置 |
CN108459552A (zh) * | 2018-01-31 | 2018-08-28 | 南京拓控信息科技股份有限公司 | 一种智能化面向对象的可编程的自动化控制方法 |
CN108762741A (zh) * | 2018-05-18 | 2018-11-06 | 北京车和家信息技术有限公司 | 动画代码生成方法及系统 |
CN109814853A (zh) * | 2019-01-18 | 2019-05-28 | 宜创(北京)科技有限公司 | 基于可视化的多平台数据生成方法、装置、设备及介质 |
CN110347376A (zh) * | 2019-06-27 | 2019-10-18 | 无线生活(杭州)信息科技有限公司 | 项目开发方法及装置 |
CN111737334A (zh) * | 2020-06-24 | 2020-10-02 | 深圳前海微众银行股份有限公司 | 数据上报方法、装置、设备及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101546264A (zh) * | 2009-04-27 | 2009-09-30 | 成都市华为赛门铁克科技有限公司 | 一种命令行的处理方法、装置和通信系统 |
CN103544154A (zh) * | 2012-07-11 | 2014-01-29 | 神州数码信息系统有限公司 | 一种数据格式转换的方法 |
CN103631632A (zh) * | 2013-11-29 | 2014-03-12 | 华为技术有限公司 | 移植方法及源到源编译器 |
-
2014
- 2014-12-30 CN CN201410850561.0A patent/CN104461582A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101546264A (zh) * | 2009-04-27 | 2009-09-30 | 成都市华为赛门铁克科技有限公司 | 一种命令行的处理方法、装置和通信系统 |
CN103544154A (zh) * | 2012-07-11 | 2014-01-29 | 神州数码信息系统有限公司 | 一种数据格式转换的方法 |
CN103631632A (zh) * | 2013-11-29 | 2014-03-12 | 华为技术有限公司 | 移植方法及源到源编译器 |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105867993A (zh) * | 2016-03-29 | 2016-08-17 | 乐视控股(北京)有限公司 | 一种软件产品编译方法及设备 |
CN105930185A (zh) * | 2016-04-19 | 2016-09-07 | 乐视控股(北京)有限公司 | 应用程序更新方法、装置、终端和服务器 |
CN108132808A (zh) * | 2016-12-01 | 2018-06-08 | 北京金山云网络技术有限公司 | 一种渠道包生成方法及装置 |
CN107070964B (zh) * | 2016-12-08 | 2020-03-13 | 上海找钢网信息科技股份有限公司 | 基于异构环境的远程通信打包方法及系统 |
CN107070964A (zh) * | 2016-12-08 | 2017-08-18 | 上海找钢网信息科技股份有限公司 | 基于异构环境的远程通信打包方法及系统 |
CN107357605A (zh) * | 2017-06-01 | 2017-11-17 | 北京趣拿软件科技有限公司 | 运行安装文件的方法和装置 |
CN108459552A (zh) * | 2018-01-31 | 2018-08-28 | 南京拓控信息科技股份有限公司 | 一种智能化面向对象的可编程的自动化控制方法 |
CN108459552B (zh) * | 2018-01-31 | 2021-07-23 | 南京拓控信息科技股份有限公司 | 一种智能化面向对象的可编程的自动化控制方法 |
CN108762741A (zh) * | 2018-05-18 | 2018-11-06 | 北京车和家信息技术有限公司 | 动画代码生成方法及系统 |
CN108762741B (zh) * | 2018-05-18 | 2023-03-14 | 北京车和家信息技术有限公司 | 动画代码生成方法及系统 |
CN109814853A (zh) * | 2019-01-18 | 2019-05-28 | 宜创(北京)科技有限公司 | 基于可视化的多平台数据生成方法、装置、设备及介质 |
CN110347376A (zh) * | 2019-06-27 | 2019-10-18 | 无线生活(杭州)信息科技有限公司 | 项目开发方法及装置 |
CN111737334A (zh) * | 2020-06-24 | 2020-10-02 | 深圳前海微众银行股份有限公司 | 数据上报方法、装置、设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104461582A (zh) | 业务处理方法、装置以及设备 | |
US10007501B1 (en) | Method of deploying applications rapidly based on customized android platform | |
US9513891B2 (en) | Method and device for publishing and implementing wireless application | |
CN110134378B (zh) | 应用程序创建方法及装置、计算机设备及存储介质 | |
JP6122493B2 (ja) | 適応的に移植性を有したライブラリ | |
JP6294886B2 (ja) | アプリケーション用の中間言語コードからネイティブコードを生成すること | |
US20130067459A1 (en) | Order-Independent Deployment Collections with Dependency Package Identifiers | |
US8387032B1 (en) | Captive runtime deployment | |
CN102279765A (zh) | 预编译托存托管代码 | |
KR20070049095A (ko) | 서비스 패키지로 소프트웨어 제품을 업데이트하는 방법 및컴퓨터 판독가능 매체 | |
CN104375849A (zh) | 加载内核的方法及装置 | |
US8667486B2 (en) | Automatic provisioning of a software platform to a device ecosystem | |
CN104834555A (zh) | 调用功能模块的方法、相关装置及装置修复方法 | |
US20050204351A1 (en) | Dynamic addressing (DA) using a centralized DA Manager | |
US20140108600A1 (en) | Application distribution supplying a dedicated application to a terminal from an application deposited by the developer | |
CN105159732A (zh) | 在移动终端安装或更新应用程序的方法和移动终端 | |
CN113986402A (zh) | 函数调用方法、装置、电子设备及存储介质 | |
JP2015503812A (ja) | 並列化可能で信頼できるインストールのためのインストールエンジン及びパッケージフォーマット | |
CN106775916B (zh) | 减小应用安装包的方法、装置及电子设备 | |
US7610577B1 (en) | Method for developing platform independent launchable applications | |
CN110297655A (zh) | 生成补丁包的方法、装置、设备及存储介质 | |
CN105335432A (zh) | oracle数据库访问方法 | |
CN107423093B (zh) | 控制方法及装置、计算机装置和计算机可读存储介质 | |
CN117008934A (zh) | 自动制作信创操作系统镜像的方法、装置、设备及介质 | |
CN112306539A (zh) | 一种单片机应用层开发方法、系统、终端及介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
AD01 | Patent right deemed abandoned | ||
AD01 | Patent right deemed abandoned |
Effective date of abandoning: 20190326 |