CN109656571A - 加载方法、装置、终端及计算机可读存储介质 - Google Patents
加载方法、装置、终端及计算机可读存储介质 Download PDFInfo
- Publication number
- CN109656571A CN109656571A CN201811135198.9A CN201811135198A CN109656571A CN 109656571 A CN109656571 A CN 109656571A CN 201811135198 A CN201811135198 A CN 201811135198A CN 109656571 A CN109656571 A CN 109656571A
- Authority
- CN
- China
- Prior art keywords
- dynamic link
- link library
- current process
- process node
- information
- 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
- 238000011068 loading method Methods 0.000 title claims abstract description 75
- 238000000034 method Methods 0.000 claims abstract description 272
- 238000009434 installation Methods 0.000 abstract description 8
- 238000010586 diagram Methods 0.000 description 7
- 238000013507 mapping Methods 0.000 description 7
- 238000004891 communication Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 4
- 235000021167 banquet Nutrition 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 241000700605 Viruses Species 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
Classifications
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/34—Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种加载方法、装置、终端及计算机可读存储介质。加载方法包括步骤:获取客户端的当前流程节点;根据当前流程节点向服务器发送请求信息,使得所述服务器根据所述请求信息反馈与所述当前流程节点对应的动态链接库的信息;接收所述服务器反馈的与所述当前流程节点对应的动态链接库的信息;根据所述动态链接库的信息从所述服务器加载与所述当前流程节点对应的动态链接库文件。本发明技术方案中,客户端通过在不同的流程节点从服务器加载与当前流程节点对应的动态链接库,可减小金融软件客户端的安装包;而且由于动态链接库不能被反编译,从而降低了金融软件客户端的安全风险。
Description
技术领域
本发明涉及金融软件客户端领域,尤其涉及一种动态链接库的加载方法、装置、终端及计算机可读存储介质。
背景技术
在现有技术中,金融软件客户端包括多个SDK包,使用多个SDK包会导致金融软件客户端的安装包过大,而且,SDK包容易反编译,安全风险较高。
发明内容
本发明的主要目的在于提供一种加载方法、装置、终端及计算机可读存储介质及计算机可读存储介质,旨在解决金融软件客户端的安装包过大且安全风险较高的技术问题。
为实现上述目的,本发明提供一种动态链接库的加载方法,所述加载方法包括步骤:
获取客户端的当前流程节点;
根据所述当前流程节点向服务器发送请求信息,使得所述服务器根据所述请求信息反馈与所述当前流程节点对应的动态链接库的信息;
接收所述服务器反馈的与所述当前流程节点对应的动态链接库的信息;
根据所述动态链接库的信息从所述服务器加载与所述当前流程节点对应的动态链接库文件。
优选地,所述根据所述动态链接库的信息从所述服务器加载与所述当前流程节点对应的动态链接库文件的步骤之后还包括:
采用对应的密钥对所述动态链接库文件进行解密,得到解密后的动态链接库文件。
优选地,所述请求信息包含所述当前流程节点的信息和所述客户端的标记信息;所述根据所述当前流程节点向服务器发送请求信息,使得所述服务器根据所述请求信息反馈与所述当前流程节点对应的动态链接库的信息的步骤包括:
根据所述当前流程节点向服务器发送所述请求信息,使得所述服务器根据所述当前流程节点的信息查找与所述当前流程节点对应的动态链接库的信息,并根据所述标记信息将所述动态链接库的信息进行反馈。
优选地,在所述根据所述动态链接库的信息从所述服务器加载与所述当前流程节点对应的动态链接库文件的步骤之前,所述加载方法还包括步骤:
获取所述客户端的硬件CPU架构;
所述根据所述动态链接库的信息从所述服务器加载与所述当前流程节点对应的动态链接库文件的步骤包括:
根据所述动态链接库的信息从所述服务器加载与所述当前流程节点和所述客户端的硬件CPU架构对应的动态链接库文件。
优选地,所述获取客户端的当前流程节点的步骤包括:
获取客户端的当前流程节点及所述当前流程节点所在的业务流程中在所述当前流程节点之后的流程节点;
所述根据所述当前流程节点向服务器发送请求信息,使得所述服务器根据所述请求信息反馈与所述当前流程节点对应的动态链接库的信息的步骤包括:
根据所述当前流程节点和当前流程节点之后的流程节点所述向服务器发送请求信息,使得所述服务器根据所述请求信息反馈与所述当前流程节点对应的动态链接库的信息和所述当前流程节点之后的流程节点对应的动态链接库文件的信息;
所述接收所述服务器反馈的与所述当前流程节点对应的动态链接库的信息的步骤包括:
接收所述服务器反馈的与所述当前流程节点对应的动态链接库的信息和所述当前流程节点之后的流程节点对应的动态链接库文件的信息;
所述根据所述动态链接库的信息从所述服务器加载与所述当前流程节点对应的动态链接库文件的步骤包括:
根据所述动态链接库的信息从所述服务器加载与所述当前流程节点对应的动态链接库文件和所述当前流程节点之后的流程节点对应的动态链接库文件。
优选地,所述客户端运行时包括多个流程节点,所述多个流程节点包括常用流程节点和非常用流程节点,所述加载方法还包括步骤:
判断所述当前流程节点是否为常用流程节点;
当所述当前流程节点不是常用流程节点时,在所述客户端执行完当前流程节点之后删除与所述当前流程节点对应的动态链接库文件;
当所述当前流程节点是常用流程节点时,保存所述当前流程节点对应的动态链接库文件。
优选地,所述加载方法还包括步骤:
接收服务器发出的更新信息,所述更新信息中包含所要更新的动态链接库文件的信息;
判断所要更新的动态链接库文件对应的流程节点是否为所述常用流程节点;
当所述所要更新的动态链接库文件对应的流程节点为所述常用流程节点时,更新所述所要更新的动态链接库文件。
此外,为实现上述目的,本发明还提供一种客户端动态链接库的加载装置,包括:
获取模块,所述获取模块用于获取客户端的当前流程节点;
信息发送模块,所述信息发送模块用于根据所述当前流程节点向服务器发送请求信息,使得所述服务器根据所述请求信息反馈与所述当前流程节点对应的动态链接库的信息;
信息接收模块,所述信息接收模块用于接收所述服务器反馈的与所述当前流程节点对应的动态链接库的信息;
加载模块,所述加载模块用于根据所述动态链接库的信息从所述服务器加载与所述当前流程节点对应的动态链接库文件。
此外,为实现上述目的,本发明还提供一种终端,所述终端包括处理器、存储器、以及存储在所述存储器上并可被所述处理器执行的加载程序,其中所述加载程序被所述处理器执行时,实现上述任一项所述的加载方法的步骤。
此外,为实现上述目的,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有加载程序,其中所述动加载程序被处理器执行时,实现上述任一项所述的加载方法的步骤。
本发明技术方案中,在服务器中存储多个动态链接库文件并建立有动态文件库文件和流程节点之间的映射关系,通过检测客户端的当前流程节点,然后根据动态文件库文件和流程节点之间的映射关系从服务器加载与当前流程节点对应的动态链接库文件,可减小金融软件客户端的安装包;而且,由于动态链接库不能被反编译,从而降低了金融软件客户端的安全风险。
附图说明
图1为本发明实施例方案中涉及的终端的硬件结构示意图;
图2为本发明动态链接库的加载方法第一实施例的流程示意图;
图3为本发明动态链接库的加载方法第二实施例的流程示意图;
图4为本发明动态链接库的加载方法第三实施例的流程示意图;
图5为本发明动态链接库的加载方法第四实施例的流程示意图;
图6为本发明动态链接库的加载方法第五实施例的流程示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明实施例涉及的动态链接库的加载方法主要应用于客户端动态链接库的加载终端,该客户端动态链接库的加载终端可以是PC、便携计算机、移动终端等具有显示和处理功能的终端。
参照图1,图1为本发明实施例方案中涉及的终端结构示意图。本发明实施例中,终端可以包括处理器1001(例如CPU),通信总线1002,用户接口1003,网络接口1004,存储器1005。其中,通信总线1002用于实现这些组件之间的连接通信;用户接口1003可以包括显示屏(Display)、输入单元比如键盘(Keyboard);网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口);存储器1005可以是高速RAM存储器,也可以是稳定的存储器(non-volatile memory),例如磁盘存储器,存储器1005可选的还可以是独立于前述处理器1001的存储装置。
本领域技术人员可以理解,图1中示出的硬件结构并不构成对设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
继续参照图1,图1中作为一种计算机可读存储介质的存储器1005可以包括操作系统、网络通信模块以及动态链接库的加载程序。
在图1中,网络通信模块主要用于连接服务器,与服务器进行数据通信;而处理器1001可以调用存储器1005中存储的动态链接库的加载程序,并执行以下操作:
获取客户端的当前流程节点;
根据所述当前流程节点向服务器发送请求信息,使得所述服务器根据所述请求信息反馈与所述当前流程节点对应的动态链接库的信息;
接收所述服务器反馈的与所述当前流程节点对应的动态链接库的信息;
根据所述动态链接库的信息从所述服务器加载与所述当前流程节点对应的动态链接库文件。
进一步地,根据动态链接库的信息从服务器加载与当前流程节点对应的动态链接库文件的步骤之后,处理器1001还可以调用存储器1005中存储的动态链接库的加载程序,并执行以下操作:
采用对应的密钥对动态链接库文件进行解密,得到解密后的动态链接库文件。
进一步地,请求信息包含当前流程节点的信息和客户端的标记信息;根据所述当前流程节点向服务器发送请求信息,使得服务器根据请求信息反馈与当前流程节点对应的动态链接库的信息的步骤包括:
根据所述当前流程节点向服务器发送请求信息,使得服务器根据当前流程节点的信息查找与当前流程节点对应的动态链接库的信息,并根据标记信息将动态链接库的信息进行反馈。
进一步地,在根据动态链接库的信息从服务器加载与当前流程节点对应的动态链接库文件的步骤之前,处理器1001还可以调用存储器1005中存储的动态链接库的加载程序,并执行以下操作:
获取客户端的硬件CPU架构;
根据动态链接库的信息从服务器加载与当前流程节点对应的动态链接库文件的步骤包括:
根据动态链接库的信息从服务器加载与当前流程节点和客户端的硬件CPU架构对应的动态链接库文件。
进一步地,获取客户端的当前流程节点的步骤包括:
获取客户端的当前流程节点及当前流程节点所在的业务流程中在当前流程节点之后的流程节点;
根据当前流程节点向服务器发送请求信息,使得服务器根据请求信息反馈与当前流程节点对应的动态链接库的信息的步骤包括:
向服务器发送请求信息,使得服务器根据请求信息反馈与当前流程节点对应的动态链接库的信息和当前流程节点之后的流程节点对应的动态链接库文件的信息;
接收服务器反馈的与当前流程节点对应的动态链接库的信息的步骤包括:
接收服务器反馈的与当前流程节点对应的动态链接库的信息和当前流程节点之后的流程节点对应的动态链接库文件的信息;
根据动态链接库的信息从服务器加载与当前流程节点对应的动态链接库文件的步骤包括:
根据动态链接库的信息从服务器加载与当前流程节点对应的动态链接库文件和当前流程节点之后的流程节点对应的动态链接库文件。
进一步地,客户端运行时包括多个流程节点,多个流程节点包括常用流程节点和非常用流程节点,处理器1001还可以调用存储器1005中存储的动态链接库的加载程序,并执行以下操作:
判断当前流程节点是否为常用流程节点;
当当前流程节点不是常用流程节点时,在客户端执行完当前流程节点之后删除与当前流程节点对应的动态链接库文件;
当当前流程节点是常用流程节点时,保存当前流程节点对应的动态链接库文件。
进一步地,处理器1001还可以调用存储器1005中存储的动态链接库的加载程序,并执行以下操作:
接收服务器发出的更新信息,更新信息中包含所要更新的动态链接库文件的信息;
判断所要更新的动态链接库文件对应的流程节点是否为常用流程节点;
当所要更新的动态链接库文件对应的流程节点为常用流程节点时,更新所要更新的动态链接库文件。
基于上述终端的硬件结构,提出本发明动态链接库的加载方法的各个实施例。
本发明提供一种动态链接库的加载方法。
请参阅图2,在本发明一实施例中,动态链接库的加载方法包括以下步骤:
S101:获取客户端的当前流程节点;
客户端运行时,一个业务流程下可以包括一个或者多个流程节点。以贷款业务为例,通常包含注册账号节点、资料提交节点、资料审批节点、面核节点等流程节点。当前流程节点可以理解为客户端即将执行的流程节点。例如,一个业务流程包含第一节点、第二节点、第三节点,当客户端刚启动该业务流程时,当前业务节点为第一流程节点,当即将进入第二流程节点时,当前流程节点为第二节点,当即将进入第三流程节点时,当前流程节点为第三节点。
S102:根据当前流程节点向服务器发送请求信息,使得服务器根据请求信息反馈与当前流程节点对应的动态链接库的信息;
服务器存储有多个动态链接(So)库文件,每个动态库连接文件与每个流程节点之间建立有映射关系。客户端发送的请求信息包含当前流程节点的信息,服务器接收到客户端发送的请求信息后得到客户端的当前流程节点的信息,根据当前流程节点的信息查找到与当前流程节点对应的动态链接库,并将该动态链接库的信息反馈至客户端。进一步地,客户端发送的请求信息包含当前流程节点的信息和客户端的标记信息。服务器根据当前流程节点的信息查找与当前流程节点对应的动态链接库的信息,并根据标记信息将动态链接库的信息进行反馈。在客户端与服务器的交互过程中,可能存在多个服务器和/或多个客户端,因此客户端在发送请求信息给服务器,或者是服务器反馈动态链接库的信息至客户端时,都需要携带标记信息(或者是与服务器对应的加密因子),可以根据标记(加密因子)确定对应的服务器或客户端,保证服务器与客户端的对应关系,以使服务器向对应的客户端安全反馈动态链接库的信息。
S103:接收服务器反馈的与当前流程节点对应的动态链接库的信息;
在服务器反馈与当前流程节点对应的动态链接库的信息后,客户端则对应接收服务器反馈的与当前流程节点对应的动态链接库的信息,其中服务器反馈至客户端的信息时可携带与服务器对应的标记信息,这样当有多个服务器时,客户端可根据服务器的标记信息,确定发出动态链接库的信息的服务器。
进一步地,服务器反馈与当前流程节点对应的动态链接库的信息时,还可以通过加密算法对动态链接库的信息进行加密,此时客户端接收服务器反馈的与当前流程节点对应的动态链接库的信息后,则可通过与加密算法对应的密钥对动态链接库的信息进行解密,得到解密后的动态链接库的信息,其中加密和解密的方式可以采用对称密钥也可以采用非对称密钥。这样有助于提升金融软件客户端的安全性。
S104:根据动态链接库的信息从服务器加载与当前流程节点对应的动态链接库文件。
客户端接收到服务器反馈的动态链接库的信息后,根据动态链接库的信息确定与当前流程节点对应的动态链接库,并根据需求从服务器加载与当前流程节点对应的动态链接库文件。服务器可通过加密算法对动态链接库文件进行加密。客户端加载动态链接库文件后,可通过与加密算法对应的密钥对动态链接库文件进行解密,得到解密后的动态链接库文件,这样可以避免动态链接库文件在传输过程中被替换,进一步地提升金融软件客户端的安全性。客户端可先从服务器下载与当前流程节点对应的动态链接库文件至sdcard目录,在经过安全校验后将动态链接库文件复制到金融软件客户端安装包的目录下。还可以在客户端加载动态链接库前进行安全检查,比如通过安全软件进行病毒检查以提升金融软件客户端的安全性。可在即将进入下一流程节点时执行步骤S101-S104,这样可在进入下一流程节点前,加载该流程节点对应的动态链接库文件,以便于客户端正常执行该流程节点。
本发明技术方案中,在服务器中存储多个动态链接库文件并建立有动态文件库文件和流程节点之间的映射关系,通过检测客户端的当前流程节点,然后根据动态文件库文件和流程节点之间的映射关系从服务器加载与当前流程节点对应的动态链接库文件,可减小金融软件客户端的安装包;而且,由于动态链接库不能被反编译,从而降低了金融软件客户端的安全风险。
需要说明的是,一部分用户在使用金融软件时,可能不会接触到某些流程,例如已在银行进行贷款业务申请的用户,通过金融软件查询贷款业务的受理情况,是不需要涉及到贷款中的面核流程的,其中面核是指通过移动终端与远程坐席进行联系,回答远程坐席提出的一些问题,而如果采用背景技术中方式,会使得金融软件的发布包太大,占用了用户的终端的内存空间。因此,可以当业务操作到达该流程节点时,客户端主动发送请求信息给服务器,请求信息中包含当前流程节点信息,服务器根据当前流程节点信息查找出需要使用的动态链接库,并反馈给客户端,客户端从服务器下载动态链接库文件即可实现对应流程节点的功能。或者,服务器也可以主动监听当前被用户操作时客户端的业务所处的流程节点,当监听到业务所处的流程节点在服务器中存在对应的动态链接库文件时,将对应的动态链接库文件发送给客户端,以供客户端加载与当前流程节点对应流的动态链接库,保证金融软件的正常使用。
进一步地,金融软件客户端可以运行多个业务,例如贷款业务、账户余额查询业务、还款业务、转账业务等。不同的业务可包含相同的流程节点,例如贷款业务、账户查询业务、还款业务、转账业务中可能均包含密码验证节点。而服务器中的动态链接库文件与流程节点建立有映射关系,因此,不同的业务中相同的流程节点可调用同一个动态链接库文件,也即是说,在服务器中,一个动态链接库文件可用于多个业务中的同一个流程节点,这样可减少动态链接库文件在服务器占用的存储空间。
请参阅图3,基于上述实施例,在步骤S14之前,加载方法还包括步骤:
S105:获取客户端的硬件CPU架构;
不同的CPU架构对应的动态链接库文件不同。当客户端在终端运行时,客户端的硬件即为终端的硬件,获取终端的硬件CPU架构以便于客户端从服务器加载与终端的硬件CPU架构对应的动态链接库文件。
步骤S104包括:
S1042:根据动态链接库的信息从服务器加载与当前流程节点和客户端的硬件CPU架构对应的动态链接库文件。
这样客户端从服务器加载的动态链接库文件与客户端所在的终端的硬件CPU适配,保证客户端可正常执行当前流程节点。需要说明的是,步骤S105在步骤S1042之前执行,在本实施例中步骤S1042可替换步骤S104。
在其他实施例中,可在动态链接库加载到金融软件客户端的安装包目录之后,配置CPU类型,最后通过load代码调用动态链接库。也可以在加载动态链接库文件之前,预先默认CPU架构类型,例如ARMv7,由于目前金融行业所使用的动态链接库兼容性较好,可以支持ARMv7、ARMV7A以及x86等类型,因此可以跳过配置CPU架构类型的步骤。在跳过类型配置后,当存在不兼容类型提醒后,再对CPU架构类型进行配置。
请参阅图4,基于上述实施例,步骤S101包括步骤:
S1012:获取客户端的当前流程节点及当前流程节点所在的业务流程中在当前流程节点之后的流程节点;
例如,一个业务流程包含第一节点,第二节点,第三节点,当客户端刚启动该业务流程时,当前业务节点为第一节点,当前业务节点所在的业务流程中当前流程节点之后的流程节点为第二节点和第三节点。需要说明的是,步骤S1012中,客户端可以获取当前流程节点和当前流程节点之后的全部流程节点,也可以仅获取当前流程节点和当前流程节点之后的部分节点。例如,仅获取当前流程节点和当前流程节点之后的一个节点,那么当前流程节点为第一节点时,客户端可仅获取第一节点和第二节点。
步骤S102包括步骤:
S1022:根据当前流程节点及当前流程节点之后的流程节点向服务器发送请求信息,使得服务器根据请求信息反馈与当前流程节点对应的动态链接库的信息和当前流程节点之后的流程节点对应的动态链接库文件的信息;
请求信息包含步骤S1012中客户端所获取的当前流程节点的信息及当前流程节点之后的流程节点的信息,当步骤S1012中客户端获取了获取当前流程节点和当前流程节点之后的全部流程节点时,请求信息包含当前流程节点的信息和当前流程节点之后的全部流程节点的信息,当步骤S1012中客户端仅获取当前流程节点和当前流程节点之后的部分节点时,请求信息包含当前流程节点的信息和当前流程节点之后的部分节点的信息。服务器接受到请求信息后,根据请求信息中包含的当前流程节点的信息及当前流程节点之后的流程节点的信息,查找与当前流程节点对应的动态链接库及当前流程节点之后的流程节点对应的动态链接库,并反馈与当前流程节点对应的动态链接库的信息及与当前流程节点之后的流程节点对应的动态链接库的信息至客户端。
步骤S103包括步骤:
S1032:接收服务器反馈的与当前流程节点对应的动态链接库的信息和当前流程节点之后的流程节点对应的动态链接库文件的信息;
步骤S104包括步骤:
S1044:根据动态链接库的信息从服务器加载与当前流程节点对应的动态链接库文件和当前流程节点之后的流程节点对应的动态链接库文件。
如此,在即将进入下一流程节点时,下一流程节点为当前流程节点,客户端加载当前流程节点对应的动态链接库文件和当前流程节点之后的流程节点对应的动态链接库文件,这样提前加载了当前流程节点之后的流程节点对应的动态链接库文件,客户端执行当前流程节点和当前流程节点之后的流程节点更顺畅,避免因加载动态链接库文件使得客户端加载缓慢导致用户需等待而影响用户体验。
在其他实施例中,也可以在客户端刚启动该业务流程时,就获取该业务流程对应的流程节点,并发送请求信息至服务器,使得服务器返回与该业务流程的流程节点对应的动态链接库的信息,当该业务流程的流程节点对应的动态链接库过大时,将该业务流程的流程节点对应的动态链接库打包并提前下载至客户端。这样有助于避免用户在使用客户端时等待客户端加载动态链接库文件。
请参阅图5,基于上述实施例,客户端运行时包括多个流程节点,多个流程节点包括常用流程节点和非常用流程节点,加载方法还包括步骤:
S106:判断当前流程节点是否为常用流程节点;
步骤S106可在步骤S104之后执行。金融软件客户端可执行多个流程节点,但客户端执行该业务流程时,并不一定每次都需要执行全部的流程节点,可根据使用频率将流程节点分为常用流程节点和非常用流程节点。例如,涉及到账款的业务流程可能都需要执行密码验证节点,密码验证节点使用频率较高,可将密码验证节点设置为常用流程节点;例如面核节点可能只在涉及较大金额的交易时才需要执行,面核节点使用频率较低,可将面核节点设置为非常用流程节点。
S107:当当前流程节点不是常用流程节点时,在客户端执行完当前流程节点之后删除与当前流程节点对应的动态链接库文件;
S108:当当前流程节点是常用流程节点时,保存当前流程节点对应的动态链接库文件。
保存当前流程节点对应的动态链接库文件至终端的存储器1005时,也保存当前流程节点和该动态链接库的映射关系。这样下次执行该流程节点时,可直接偶从终端的存储器1005调用与该流程节点对应的动态链接库。
如此,当前流程节点不是常用流程节点时,在客户端执行完当前流程节点之后删除与当前流程节点对应的动态链接库文件,可以减小客户端占用的存储空间;当前流程节点是常用流程节点时,保存当前流程节点对应的动态链接库文件,可以在下次执行该流程节点时,直接调用该流程节点对应的动态链接库文件,省去加与该流程节点对应的载动态链接库的时间,用户体验更好。
需要说明的是,也可在步骤S102之前执行步骤S106在步骤S102之前执行。如果当前流程节点为非常用流程节点,则执行步骤S102-步骤S104,并在步骤S104之后执行步骤S107;如果当前流程节点为常用流程节点,则从客户端的安装包中查找是否存在当前流程节点对应的动态链接库文件,当存在当前流程节点对应的动态链接库文件时,直接调用该动态链接库文件;当不存在当前流程节点对应的动态链接库文件时,执行步骤S102-步骤S104,并在步骤S104之后执行步骤S108。
基于上述实施例,加载方法还包括步骤:
S109:接收服务器发出的更新信息,更新信息中包含所要更新的动态链接库文件的信息;
当服务器中的动态链接库文件有版本更新时,服务器可判断终端的存储器1005中是否存储有对应的动态链接库文件并获取该动态链接库文件的版本信息,将终端的存储器1005中的动态链接库文件的版本信息和服务器中更新的动态链接库文件的版本信息进行比对,若终端的存储器1005中的动态链接库文件的版本信息与服务器中更新的动态链接库文件的版本信息不同,则服务器向客户端推送更新信息。
S110:判断所要更新的动态链接库文件对应的流程节点是否为常用流程节点;
终端的存储器1005中存储有动态链接库文件,该动态链接库文件对应的流程节点并不一定是常用流程节点,也可能是当前流程节点对应的动态链接库文件,而当前流程节点为非常用流程节点。因此,在接收到服务器发出的更新信息之后,仍然需要判断所要更新的动态链接库文件对应的流程节点是否为常用流程节点,如果所要更新的动态链接库文件对应的流程节点为非常用流程节点,则不需要进行更新。
S111:当所要更新的动态链接库文件对应的流程节点为常用流程节点时,更新所要更新的动态链接库文件。
如此,及时更新终端的存储器1005中存储的常用流程节点对应的动态链接库文件。
此外,本发明还提供一种客户端动态链接库的加载装置,客户端动态链接库的加载装置包括:
获取模块,获取模块用于获取客户端的当前流程节点;
信息发送模块,信息发送模块用于根据当前流程节点向服务器发送请求信息,使得服务器根据请求信息反馈与当前流程节点对应的动态链接库的信息;
信息接收模块,信息接收模块用于接收服务器反馈的与当前流程节点对应的动态链接库的信息;
加载模块,加载模块用于根据动态链接库的信息从服务器加载与当前流程节点对应的动态链接库文件。
进一步地,客户端动态链接库的加载装置还包括:
解密模块,所述解密模块用于采用对应的密钥对动态链接库文件进行解密,得到解密后的动态链接库文件。
进一步地,请求信息包含当前流程节点的信息和客户端的标记信息;信息发送模块还用于:
根据当前流程节点向服务器发送请求信息,使得服务器根据当前流程节点的信息查找与当前流程节点对应的动态链接库的信息,并根据标记信息将动态链接库的信息进行反馈。
进一步地,在根据动态链接库的信息从服务器加载与当前流程节点对应的动态链接库文件的步骤之前,客户端动态链接库的加载装置还包括:
硬件参数获取模块,所述硬件参数获取模块用于获取客户端的硬件CPU架构;
加载模块还用于根据动态链接库的信息从服务器加载与当前流程节点和客户端的硬件CPU架构对应的动态链接库文件。
进一步地,获取模块还用于:
获取客户端的当前流程节点及当前流程节点所在的业务流程中在当前流程节点之后的流程节点;
信息发送模块还用于根据当前流程节点及当前流程节点之后的流程节点向服务器发送请求信息,使得服务器根据请求信息反馈与当前流程节点对应的动态链接库的信息和当前流程节点之后的流程节点对应的动态链接库文件的信息;
信息接收模块还用于接收服务器反馈的与当前流程节点对应的动态链接库的信息和当前流程节点之后的流程节点对应的动态链接库文件的信息;
加载模块还用于根据动态链接库的信息从服务器加载与当前流程节点对应的动态链接库文件和当前流程节点之后的流程节点对应的动态链接库文件。
进一步地,客户端运行时包括多个流程节点,多个流程节点包括常用流程节点和非常用流程节点,客户端动态链接库的加载装置还包括:
判断模块,判断模块还用于判断当前流程节点是否为常用流程节点;
删除模块,删除模块用于当当前流程节点不是常用流程节点时,在客户端执行完当前流程节点之后删除与当前流程节点对应的动态链接库文件;
保存模块,保存模块用于当当前流程节点是常用流程节点时,保存当前流程节点对应的动态链接库文件。
进一步地,客户端动态链接库的加载装置还包括::
更新接收模块,接收服务器发出的更新信息,更新信息中包含所要更新的动态链接库文件的信息;
判断模块还用于判断所要更新的动态链接库文件对应的流程节点是否为常用流程节点;
更新模块,更新模块用于当所要更新的动态链接库文件对应的流程节点为常用流程节点时,更新所要更新的动态链接库文件。
其中,上述客户端动态链接库的加载装置中各个模块与上述动态链接库的加载方法实施例中各步骤相对应,其功能和实现过程在此处不再一一赘述。
此外,本发明还提供一种计算机可读存储介质。
本发明计算机可读存储介质上存储有动态链接库的加载程序,计算机可读存储介质上存储有动态链接库的加载程序,其中动态链接库的加载程序被处理器执行时,实现如上述任一实施例所述的动态链接库的加载方法的步骤。
其中,动态链接库的加载程序被执行时所实现的方法可参照本发明动态链接库的加载方法的各个实施例,此处不再赘述。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (10)
1.一种动态链接库的加载方法,其特征在于,所述加载方法包括步骤:
获取客户端的当前流程节点;
根据所述当前流程节点向服务器发送请求信息,使得所述服务器根据所述请求信息反馈与所述当前流程节点对应的动态链接库的信息;
接收所述服务器反馈的与所述当前流程节点对应的动态链接库的信息;
根据所述动态链接库的信息从所述服务器加载与所述当前流程节点对应的动态链接库文件。
2.如权利要求1所述的加载方法,其特征在于,所述根据所述动态链接库的信息从所述服务器加载与所述当前流程节点对应的动态链接库文件的步骤之后还包括:
采用对应的密钥对所述动态链接库文件进行解密,得到解密后的动态链接库文件。
3.如权利要求2所述的加载方法,其特征在于,所述请求信息包含所述当前流程节点的信息和所述客户端的标记信息;所述根据所述当前流程节点向服务器发送请求信息,使得所述服务器根据所述请求信息反馈与所述当前流程节点对应的动态链接库的信息的步骤包括:
根据当前流程节点向服务器发送所述请求信息,使得所述服务器根据所述当前流程节点的信息查找与所述当前流程节点对应的动态链接库的信息,并根据所述标记信息将所述动态链接库的信息进行反馈。
4.如权利要求1所述的加载方法,其特征在于,在所述根据所述动态链接库的信息从所述服务器加载与所述当前流程节点对应的动态链接库文件的步骤之前,所述加载方法还包括步骤:
获取所述客户端的硬件CPU架构;
所述根据所述动态链接库的信息从所述服务器加载与所述当前流程节点对应的动态链接库文件的步骤包括:
根据所述动态链接库的信息从所述服务器加载与所述当前流程节点和所述客户端的硬件CPU架构对应的动态链接库文件。
5.如权利要求1所述的加载方法,其特征在于,所述获取客户端的当前流程节点的步骤包括:
获取客户端的当前流程节点及所述当前流程节点所在的业务流程中在所述当前流程节点之后的流程节点;
所述根据所述当前流程节点向服务器发送请求信息,使得所述服务器根据所述请求信息反馈与所述当前流程节点对应的动态链接库的信息的步骤包括:
根据所述当前流程节点和所述当前流程节点之后的流程节点所述向服务器发送请求信息,使得所述服务器根据所述请求信息反馈与所述当前流程节点对应的动态链接库的信息和所述当前流程节点之后的流程节点对应的动态链接库文件的信息;
所述接收所述服务器反馈的与所述当前流程节点对应的动态链接库的信息的步骤包括:
接收所述服务器反馈的与所述当前流程节点对应的动态链接库的信息和所述当前流程节点之后的流程节点对应的动态链接库文件的信息;
所述根据所述动态链接库的信息从所述服务器加载与所述当前流程节点对应的动态链接库文件的步骤包括:
根据所述动态链接库的信息从所述服务器加载与所述当前流程节点对应的动态链接库文件和所述当前流程节点之后的流程节点对应的动态链接库文件。
6.如权利要求1所述的加载方法,其特征在于,所述客户端运行时包括多个流程节点,所述多个流程节点包括常用流程节点和非常用流程节点,所述加载方法还包括步骤:
判断所述当前流程节点是否为常用流程节点;
当所述当前流程节点不是常用流程节点时,在所述客户端执行完当前流程节点之后删除与所述当前流程节点对应的动态链接库文件;
当所述当前流程节点是常用流程节点时,保存所述当前流程节点对应的动态链接库文件。
7.如权利要求6所述的加载方法,其特征在于,所述加载方法还包括步骤:
接收服务器发出的更新信息,所述更新信息中包含所要更新的动态链接库文件的信息;
判断所要更新的动态链接库文件对应的流程节点是否为所述常用流程节点;
当所述所要更新的动态链接库文件对应的流程节点为所述常用流程节点时,更新所述所要更新的动态链接库文件。
8.一种客户端动态链接库的加载装置,其特征在于,包括:
获取模块,所述获取模块用于获取客户端的当前流程节点;
信息发送模块,所述信息发送模块用于根据所述当前流程节点向服务器发送请求信息,使得所述服务器根据所述请求信息反馈与所述当前流程节点对应的动态链接库的信息;
信息接收模块,所述信息接收模块用于接收所述服务器反馈的与所述当前流程节点对应的动态链接库的信息;
加载模块,所述加载模块用于根据所述动态链接库的信息从所述服务器加载与所述当前流程节点对应的动态链接库文件。
9.一种终端,其特征在于,所述终端包括处理器、存储器、以及存储在所述存储器上并可被所述处理器执行的加载程序,其中所述加载程序被所述处理器执行时,实现权利要求1至7中任一项所述的加载方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有加载程序,其中所述加载程序被处理器执行时,实现权利要求1至7中任一项所述的加载方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811135198.9A CN109656571A (zh) | 2018-09-27 | 2018-09-27 | 加载方法、装置、终端及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811135198.9A CN109656571A (zh) | 2018-09-27 | 2018-09-27 | 加载方法、装置、终端及计算机可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109656571A true CN109656571A (zh) | 2019-04-19 |
Family
ID=66110684
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811135198.9A Pending CN109656571A (zh) | 2018-09-27 | 2018-09-27 | 加载方法、装置、终端及计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109656571A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116170448A (zh) * | 2023-04-20 | 2023-05-26 | 河北先见软件科技股份有限公司 | 一种跨组织的数据共享的方法和存储介质 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102375756A (zh) * | 2010-08-24 | 2012-03-14 | 中国银联股份有限公司 | 原子化信息处理系统及方法 |
CN103218225A (zh) * | 2013-03-29 | 2013-07-24 | 北京宇航系统工程研究所 | 一种统一测发控软件开发系统 |
CN103970559A (zh) * | 2013-02-05 | 2014-08-06 | 北京壹人壹本信息科技有限公司 | 一种基于Android系统的设备加载方法及装置 |
US20140344803A1 (en) * | 2013-05-14 | 2014-11-20 | Tencent Technology (Shenzhen) Company Limited | Method, system and server for downloading installation package |
CN104679561A (zh) * | 2015-02-15 | 2015-06-03 | 福建天晴数码有限公司 | 一种动态链接库文件加载的方法及系统 |
CN105843640A (zh) * | 2016-03-21 | 2016-08-10 | 武汉斗鱼网络科技有限公司 | 一种动态链接库的注入方法及装置 |
CN106897080A (zh) * | 2015-12-18 | 2017-06-27 | 北京国双科技有限公司 | 动态链接库的处理方法及装置 |
CN108170491A (zh) * | 2017-12-26 | 2018-06-15 | 五八有限公司 | App动态链接库的配置方法、终端及计算机可读存储介质 |
CN108279947A (zh) * | 2018-01-03 | 2018-07-13 | 深圳怡化电脑股份有限公司 | 金融自助设备sp安装包适配的方法及装置 |
CN108431767A (zh) * | 2016-09-29 | 2018-08-21 | 华为技术有限公司 | 一种加载软件程序的方法、用户终端及存储介质 |
-
2018
- 2018-09-27 CN CN201811135198.9A patent/CN109656571A/zh active Pending
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102375756A (zh) * | 2010-08-24 | 2012-03-14 | 中国银联股份有限公司 | 原子化信息处理系统及方法 |
CN103970559A (zh) * | 2013-02-05 | 2014-08-06 | 北京壹人壹本信息科技有限公司 | 一种基于Android系统的设备加载方法及装置 |
CN103218225A (zh) * | 2013-03-29 | 2013-07-24 | 北京宇航系统工程研究所 | 一种统一测发控软件开发系统 |
US20140344803A1 (en) * | 2013-05-14 | 2014-11-20 | Tencent Technology (Shenzhen) Company Limited | Method, system and server for downloading installation package |
CN104679561A (zh) * | 2015-02-15 | 2015-06-03 | 福建天晴数码有限公司 | 一种动态链接库文件加载的方法及系统 |
CN106897080A (zh) * | 2015-12-18 | 2017-06-27 | 北京国双科技有限公司 | 动态链接库的处理方法及装置 |
CN105843640A (zh) * | 2016-03-21 | 2016-08-10 | 武汉斗鱼网络科技有限公司 | 一种动态链接库的注入方法及装置 |
CN108431767A (zh) * | 2016-09-29 | 2018-08-21 | 华为技术有限公司 | 一种加载软件程序的方法、用户终端及存储介质 |
CN108170491A (zh) * | 2017-12-26 | 2018-06-15 | 五八有限公司 | App动态链接库的配置方法、终端及计算机可读存储介质 |
CN108279947A (zh) * | 2018-01-03 | 2018-07-13 | 深圳怡化电脑股份有限公司 | 金融自助设备sp安装包适配的方法及装置 |
Non-Patent Citations (3)
Title |
---|
FU JIANMING 等: "Dynamic detection of component loading vulnerability", JOURNAL OF TSINGHUA UNIVERSITY (SCIENCE AND TECHNOLOGY), 1 August 2013 (2013-08-01) * |
王仁塘;王仁斌;: "预加载共享动态链接库算法在桌面Linux环境下的设计与实现", 干旱气象, no. 01, 25 April 2006 (2006-04-25) * |
范勇, 马梅, 杨大鉴: "可扩展机群资源监控系统的设计与实现", 计算机工程与应用, no. 26, 11 September 2003 (2003-09-11) * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116170448A (zh) * | 2023-04-20 | 2023-05-26 | 河北先见软件科技股份有限公司 | 一种跨组织的数据共享的方法和存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109814856B (zh) | 数据录入方法、装置、终端及计算机可读存储介质 | |
CN102227901B (zh) | 点滴式同步协议 | |
CN108491236A (zh) | 一种插件加载方法、装置及计算机可读存储介质 | |
CN106372465A (zh) | 一种动态链接库安全管理方法、系统和电子设备 | |
CN103905293A (zh) | 一种获取表情信息的方法及装置 | |
CN109672580A (zh) | 全链路监控方法、装置、终端设备及存储介质 | |
CN112445868B (zh) | 业务报文处理方法和装置 | |
CN103577180B (zh) | 数据处理方法及装置 | |
CN109992284A (zh) | 一种热更新程序的提供方法、装置及电子设备 | |
KR101255137B1 (ko) | 콘텐츠 검증 정책 배포 관리 방법 | |
CN112596720A (zh) | 业务运行方法、装置、电子设备和计算机存储介质 | |
CN106357791A (zh) | 业务处理方法、装置及系统 | |
CN110046000A (zh) | 小程序运行方法和装置 | |
CN107329916A (zh) | 一种usb设备控制方法、装置及计算设备 | |
CN107479798A (zh) | 多屏互动方法及装置 | |
CN109656571A (zh) | 加载方法、装置、终端及计算机可读存储介质 | |
CN112346758B (zh) | 一种数字基建业务更新平台、更新方法及电子设备 | |
CN116700907B (zh) | 服务调用需求文档存储方法、装置、电子设备和可读介质 | |
CN106161075A (zh) | 业务处理方法、装置及系统 | |
US11573808B2 (en) | Methods of providing an integrated interface that includes a virtual mobile device | |
US11823071B2 (en) | System and method for implementing an assessment tool for converting a regulation into a series of questions | |
CN115220716A (zh) | 代码生成方法、装置、电子设备和存储介质 | |
CN114238585A (zh) | 基于5g消息的查询方法、装置、计算机设备和存储介质 | |
US8374593B2 (en) | Method of providing mobile application | |
CN106648795A (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 |