CN107894901A - 一种传统金融应用向智能终端平台迁移的方法及系统 - Google Patents
一种传统金融应用向智能终端平台迁移的方法及系统 Download PDFInfo
- Publication number
- CN107894901A CN107894901A CN201711060506.1A CN201711060506A CN107894901A CN 107894901 A CN107894901 A CN 107894901A CN 201711060506 A CN201711060506 A CN 201711060506A CN 107894901 A CN107894901 A CN 107894901A
- Authority
- CN
- China
- Prior art keywords
- target
- request bag
- remote services
- services end
- terminal server
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/76—Adapting program code to run in a different environment; Porting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/547—Remote procedure calls [RPC]; Web services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/54—Indexing scheme relating to G06F9/54
- G06F2209/541—Client-server
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/54—Indexing scheme relating to G06F9/54
- G06F2209/545—Gui
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/54—Indexing scheme relating to G06F9/54
- G06F2209/549—Remote execution
Abstract
本发明公开一种传统金融应用向智能终端平台迁移的系统,包括源应用、进程间通信模块及目标UI;所述源应用于目标UI通过进程间通信模块连接,所述进程间通信模块传输控制命令、交互用户输入输出内容及反馈用户操作。通过远程调用方式,实现了不同编程语言之间的通信与调用,解决了不同开发语言运行环境的兼容问题。
Description
技术领域
本发明涉及POS技术领域,尤其涉及一种传统金融应用向智能终端平台迁移的方法及系统。
背景技术
随着新的技术不断涌现,传统终端已经越来越无法维系支撑新的业务形态,于是越来越多的厂商引入安卓平台作为基础OS平台。
当各个POS厂商都转向安卓平台开发后发现,安卓平台与传统POS平台上的应用开发模式差异较大,使用原生方案无法解决在安卓平台上直接运行存量的传统POS应用原因如下:
1、传统POS应用的UI体系基于原先点阵式屏幕,应用中更多的是直接调用驱动层接口将需要显示的内容直接写入帧缓存中这种同步调用模式。而安卓平台上所有现实的操作都通过UI层上封装不同UI模块进行调用。UI操作基于异步事件机制;
2、安卓应用基于Java语言进行开发,而传统POS应用基于C语言开发,开发语言的巨大差异也导致应用无法兼容;
大量传统POS的存量应用面临无法向新平台迁移的问题,而新平台也面临应用短缺,重建工作量大的问题。
发明内容
本发明的目的在于,提出一种能够实现不同编程语言之间的通信与调用,解决不同开发语言运行环境的兼容问题。
为了实现上述目的,本发明所采用的技术方案为:
一种传统金融应用向智能终端平台迁移的系统,包括源应用、进程间通信模块及目标UI;所述源应用与目标UI通过进程间通信模块连接,所述进程间通信模块传输控制命令、交互用户输入输出内容及反馈用户操作。
其中,所述控制命令包括操作请求,所述操作请求包括对象名称及方法名称。
其中,所述反馈用户操作为目标UI接收的用户输入。
其中,所述进程间通信模块包括UI代理对象、UI远程客户端、UI远程服务端;
所述源应用向UI代理对象发起显示操作请求,所述显示操作请求包括对象名称和参数方法名称,发送操作请求后源应用被阻塞;
UI代理对象将所述对象名称和参数方法名称依据远程调用协议打包封装形成请求包,并将所述请求包发送给UI远程客户端;
所述UI远程客户端接收所述请求包并发送给UI远程服务端;
所述UI远程服务端接收所述请求包,依据所述请求包内的对象名称及参数方法名称调用目标UI的接口,并使得目标UI显示;
所述目标UI接收用户输入并返回给UI远程服务端,所述UI远程服务端将用户输入通过远程调用协议打包成数据包并将数据包返回给UI远程客户端;
所述UI远程客户端接收数据包并返回给UI代理对象;
UI代理对象接收数据包并返回给被阻塞的源应用。
其中,所述源应用为传统金融应用,所述目标UI为安卓UI模块或基于web技术的UI模块。
本发明还公开一种传统金融应用向智能终端平台迁移的方法,包括如下步骤:源应用向UI代理对象发起显示操作请求,所述显示操作请求包括对象名称和参数方法名称,发送操作请求后源应用被阻塞;
UI代理对象将所述对象名称和参数方法名称依据远程调用协议打包封装形成请求包,并将所述请求包发送给UI远程客户端;
所述UI远程客户端接收所述请求包并发送给UI远程服务端;
所述UI远程服务端接收所述请求包,依据所述请求包内的对象名称及参数方法名称调用目标UI的接口,并使得目标UI显示;
所述目标UI接收用户输入并返回给UI远程服务端,所述UI远程服务端将用户输入通过远程调用协议打包成数据包并将数据包返回给UI远程客户端;
所述UI远程客户端接收数据包并返回给UI代理对象;
UI代理对象接收数据包并返回给被阻塞的源应用。
本发明的有益效果为:
一、通过远程调用方式,实现了不同编程语言之间的通信与调用,解决了不同开发语言运行环境的兼容问题;
二、将代理对象暴露给传统金融应用调用,解决了接口适配的问题,如果有任何协议的变更,只需要在代理对象背后打包操作中做相应的修改即可,而不需要修改传统金融应用,对未来的扩展性留下了一定的空间。
三、将传统金融应用与目标UI分别运行在不同的服务进程空间中,可方便实现独立变化的设计:
传统金融应用主要负责金融应用的流程控制;目标UI主要负责显示UI提示信息,提供用户更好的UI体验;两者间职责更为分立,方便未来各自模块进行独立变化,同样的金融业务流程,可以对应多套不同的目标UI的UI显示流程,同样的UI显示流程,可以通过参数指定执行不同的金融交易的流程。
附图说明
图1为本发明传统金融应用向智能终端平台迁移的系统的结构框图;
图2为本发明传统金融应用向智能终端平台迁移的方法流程图。
具体实施方式
以下将结合附图所示的具体实施方式对本发明进行详细描述。但这些实施方式并不限制本发明,本领域的普通技术人员根据这些实施方式所做出的结构、方法、或功能上的变换均包含在本发明的保护范围内。
远程过程调用(RPC)是Windows操作系统使用的一个协议。RPC提供了一种进程间通信机制,通过这一机制,在一台计算机上运行的程序可以顺畅地执行某个远程系统上的代码。该协议本身是从OSF(开放式软件基础)RPC协议衍生出来的,只是增加了一些Microsoft特定的扩展。
本发明的实施方式中所述的UI远程客户端为UI PRC客户端,UI远程服务端为UIPRC服务端。
参阅图1、图2所示本发明的一实施方式中提供一种传统金融应用向智能终端平台迁移的系统,包括源应用、进程间通信模块及目标UI;所述源应用与目标UI通过进程间通信模块连接,所述进程间通信模块传输控制命令、交互用户输入输出内容及反馈用户操作。通过所述进程间通信模块,实现了远程调用的目的,实现了不同编程语言之间的通信与调用,解决了不同开发语言环境的兼容问题。在某些具体的实施方式中,所述控制命令包括操作请求,所述操作请求包括对象名称及方法名称。所述反馈用户操作为目标UI接收的用户输入。
所述进程间通信模块包括UI代理对象、UI远程客户端、UI远程服务端;所述源应用、UI代理对象、UI远程客户端、UI远程服务端及目标UI
所述源应用向UI代理对象发起显示操作请求,所述显示操作请求包括对象名称和参数方法名称,发送操作请求后源应用被阻塞;
UI代理对象将所述对象名称和参数方法名称依据远程调用协议打包封装形成请求包,并将所述请求包发送给UI远程客户端;
所述UI远程客户端接收所述请求包并发送给UI远程服务端;
所述UI远程服务端接收所述请求包,解析所述请求包内的对象名称及参数方法名称调用目标UI的接口,并使得目标UI显示;
所述目标UI接收用户输入并返回给UI远程服务端,所述UI远程服务端将用户输入通过远程调用协议打包成数据包并将数据包返回给UI远程客户端;
所述UI远程客户端接收数据包并返回给UI代理对象;
UI代理对象接收数据包并返回给被阻塞的源应用。
以上所述的源应用为传统金融应用,所述的目标UI为安卓UI模块或基于web技术的UI模块。
本发明一实施方式还公开一种传统金融应用向智能终端平台迁移的系统,其工作方法如下:
源应用向UI代理对象发起显示操作请求,所述显示操作请求包括对象名称和参数方法名称,发送操作请求后源应用被阻塞;
UI代理对象将所述对象名称和参数方法名称依据远程调用协议打包封装形成请求包,并将所述请求包发送给UI远程客户端;
所述UI远程客户端接收所述请求包并发送给UI远程服务端;
所述UI远程服务端接收所述请求包,解析所述请求包内的对象名称及参数方法名称调用目标UI的接口,并使得目标UI显示;
所述目标UI接收用户输入并返回给UI远程服务端,所述UI远程服务端将用户输入通过远程调用协议打包成数据包并将数据包返回给UI远程客户端;
所述UI远程客户端接收数据包并返回给UI代理对象;
UI代理对象接收数据包并返回给被阻塞的源应用。
所述系统,通过远程调用方式,实现了不同编程语言之间的通信与调用,解决了不同开发语言运行环境的兼容问题;将代理对象暴露给传统金融应用调用,解决了接口适配的问题,如果有任何协议的变更,只需要在代理对象背后打包操作中做相应的修改即可,而不需要修改传统金融应用,对未来的扩展性留下了一定的空间。将传统金融应用与目标UI分别运行在不同的服务进程空间中,可方便实现独立变化的设计:传统金融应用主要负责金融应用的流程控制;目标UI主要负责显示UI提示信息,提供用户更好的UI体验;两者间职责更为分立,方便未来各自模块进行独立变化,同样的金融业务流程,可以对应多套不同的目标UI的UI显示流程,同样的UI显示流程,可以通过参数指定执行不同的金融交易的流程。
应当理解,虽然本说明书按照实施方式加以描述,但并非每个实施方式仅包含一个独立的技术方案,说明书的这种叙述方式仅仅是为清楚起见,本领域技术人员应当将说明书作为一个整体,各实施方式中的技术方案也可以经适当组合,形成本领域技术人员可以理解的其他实施方式。
上文所列出的一系列的详细说明仅仅是针对本发明的可行性实施方式的具体说明,它们并非用以限制本发明的保护范围,凡未脱离本发明技艺精神所作的等效实施方式或变更均应包含在本发明的保护范围之内。
Claims (6)
1.一种传统金融应用向智能终端平台迁移的系统,其特征在于:包括源应用、进程间通信模块及目标UI;
所述源应用于目标UI通过进程间通信模块连接,所述进程间通信模块传输控制命令、交互用户输入输出内容及反馈用户操作。
2.根据权利要求1所述的传统金融应用向智能终端平台迁移的系统,其特征在于:所述控制命令包括操作请求,所述操作请求包括对象名称及方法名称。
3.根据权利要求1所述的传统金融应用向智能终端平台迁移的系统,其特征在于:所述反馈用户操作为目标UI接收的用户输入。
4.根据权利要求1至3任意一项所述的传统金融应用向智能终端平台迁移的系统,其特征在于:所述进程间通信模块包括UI代理对象、UI远程客户端、UI远程服务端;
所述源应用向UI代理对象发起显示操作请求,所述显示操作请求包括对象名称和参数方法名称,发送操作请求后源应用被阻塞;
UI代理对象将所述对象名称和参数方法名称依据远程调用协议打包封装形成请求包,并将所述请求包发送给UI远程客户端;
所述UI远程客户端接收所述请求包并发送给UI远程服务端;
所述UI远程服务端接收所述请求包,解析所述请求包内的对象名称及参数方法名称调用目标UI的接口,并使得目标UI显示;
所述目标UI接收用户输入并返回给UI远程服务端,所述UI远程服务端将用户输入通过远程调用协议打包成数据包并将数据包返回给UI远程客户端;
所述UI远程客户端接收数据包并返回给UI代理对象;
UI代理对象接收数据包并返回给被阻塞的源应用。
5.根据权利要求1所述的传统金融应用向智能终端平台迁移的系统,其特征在于:所述源应用为传统金融应用,所述目标UI为安卓UI模块或基于web技术的UI模块。
6.一种传统金融应用向智能终端平台迁移的方法,其特征在于,包括如下步骤:源应用向UI代理对象发起显示操作请求,所述显示操作请求包括对象名称和参数方法名称,发送操作请求后源应用被阻塞;
UI代理对象将所述对象名称和参数方法名称依据远程调用协议打包封装形成请求包,并将所述请求包发送给UI远程客户端;
所述UI远程客户端接收所述请求包并发送给UI远程服务端;
所述UI远程服务端接收所述请求包,解析所述请求包内的对象名称及参数方法名称调用目标UI的接口,并使得目标UI显示;
所述目标UI接收用户输入并返回给UI远程服务端,所述UI远程服务端将用户输入通过远程调用协议打包成数据包并将数据包返回给UI远程客户端;
所述UI远程客户端接收数据包并返回给UI代理对象;
UI代理对象接收数据包并返回给被阻塞的源应用。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711060506.1A CN107894901A (zh) | 2017-11-01 | 2017-11-01 | 一种传统金融应用向智能终端平台迁移的方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711060506.1A CN107894901A (zh) | 2017-11-01 | 2017-11-01 | 一种传统金融应用向智能终端平台迁移的方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN107894901A true CN107894901A (zh) | 2018-04-10 |
Family
ID=61804107
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711060506.1A Pending CN107894901A (zh) | 2017-11-01 | 2017-11-01 | 一种传统金融应用向智能终端平台迁移的方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107894901A (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101939736A (zh) * | 2007-08-31 | 2011-01-05 | M·阿纳 | 远程计算设备的开发富互联网应用的系统和方法 |
CN102098296A (zh) * | 2010-12-29 | 2011-06-15 | 北京新媒传信科技有限公司 | 一种实现远程调用的方法和系统 |
CN105868111A (zh) * | 2016-03-29 | 2016-08-17 | 网易(杭州)网络有限公司 | 移动终端游戏自动测试方法和装置 |
CN106204968A (zh) * | 2016-07-25 | 2016-12-07 | 无锡酷银科技有限公司 | 一种基于pos机的多硬件适配装置及其适配方法 |
KR20170112171A (ko) * | 2016-03-31 | 2017-10-12 | 주식회사 티맥스 소프트 | 다중 플랫폼 위에서 실행되는 클라이언트 애플리케이션 개발용 프레임워크를 지원하기 위한 장치 및 이를 사용한 방법 |
-
2017
- 2017-11-01 CN CN201711060506.1A patent/CN107894901A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101939736A (zh) * | 2007-08-31 | 2011-01-05 | M·阿纳 | 远程计算设备的开发富互联网应用的系统和方法 |
CN102098296A (zh) * | 2010-12-29 | 2011-06-15 | 北京新媒传信科技有限公司 | 一种实现远程调用的方法和系统 |
CN105868111A (zh) * | 2016-03-29 | 2016-08-17 | 网易(杭州)网络有限公司 | 移动终端游戏自动测试方法和装置 |
KR20170112171A (ko) * | 2016-03-31 | 2017-10-12 | 주식회사 티맥스 소프트 | 다중 플랫폼 위에서 실행되는 클라이언트 애플리케이션 개발용 프레임워크를 지원하기 위한 장치 및 이를 사용한 방법 |
CN106204968A (zh) * | 2016-07-25 | 2016-12-07 | 无锡酷银科技有限公司 | 一种基于pos机的多硬件适配装置及其适配方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9479614B2 (en) | Method for distributing computing between server and client | |
Yu et al. | A framework for rapid integration of presentation components | |
CN103927163B (zh) | 插件框架处理装置及插件系统 | |
US7030890B1 (en) | Displaying graphical objects | |
CA2557111C (en) | System and method for building mixed mode execution environment for component applications | |
US20100146505A1 (en) | Multi-monitor, multi-JVM Java GUI infrastructure with layout via XML | |
JPH10171672A (ja) | クライアントプログラムキャッシュを有するクライアント−サーバーのためのオブジェクト指向システム、方法及び製品 | |
CA2511916A1 (en) | System and method of building wireless component applications | |
CN102138122A (zh) | 组合壳应用和子应用的界面 | |
CN107247544A (zh) | 使用交互图像优化软件应用用户界面性能 | |
CN103150198B (zh) | 一种组态软件的显示方法 | |
CN102364434B (zh) | 一种整合Wine与Android鼠标输入的方法 | |
EP0996058A1 (en) | Improved presentation scheme for communication between user stations and application programs | |
CN112235357A (zh) | 跨平台应用开发系统 | |
US6735767B1 (en) | Installation planning window | |
US20050108650A1 (en) | Server visualization and control | |
CN107894901A (zh) | 一种传统金融应用向智能终端平台迁移的方法及系统 | |
CN109683875B (zh) | 分布式环境下mvc模式的应用框架系统及其方法 | |
CN101431569A (zh) | 可自定制和面向网络服务的手机桌面环境的实现方法 | |
CN110764779B (zh) | 封装方法、注册方法、装置和渲染设备 | |
US7685258B2 (en) | Disconnectible applications | |
CN103870280A (zh) | 基于flex与jsp的网页无缝结合处理方法 | |
CN115185709A (zh) | 输入法应用在Web操作系统上的跨平台实现方法及系统 | |
CN102109953B (zh) | 终端及其进行业务处理的方法 | |
CN107291561A (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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20180410 |