CN108628620A - Pos应用开发的实现方法、装置、计算机设备和存储介质 - Google Patents
Pos应用开发的实现方法、装置、计算机设备和存储介质 Download PDFInfo
- Publication number
- CN108628620A CN108628620A CN201711320447.7A CN201711320447A CN108628620A CN 108628620 A CN108628620 A CN 108628620A CN 201711320447 A CN201711320447 A CN 201711320447A CN 108628620 A CN108628620 A CN 108628620A
- Authority
- CN
- China
- Prior art keywords
- interface
- application
- equipment
- management
- service
- 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.)
- Granted
Links
Classifications
-
- 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
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07G—REGISTERING THE RECEIPT OF CASH, VALUABLES, OR TOKENS
- G07G1/00—Cash registers
- G07G1/0009—Details of the software in the checkout register, electronic cash register [ECR] or point of sale terminal [POS]
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Stored Programmes (AREA)
- Telephone Function (AREA)
Abstract
本发明提供一种POS应用开发的实现方法,该方法包括:确定待开发应用的应用类型;根据应用类型调用对应的设备接口;设备接口通过Android接口定义语言AIDL访问对应的服务;服务通过调用系统接口使得POS终端实现设备接口对应的功能。此外,还提供了一种POS应用开发的实现装置,一种计算机设备和存储介质。
Description
技术领域
本发明涉及计算机技术领域,特别是涉及一种POS应用开发的实现方法、装置、计算机设备和存储介质。
背景技术
传统技术,POS(point of sale,支付终端)的应用对终端的硬件配置以及系统版本依赖很强,当硬件或版本升级时常常也需要应用的升级改造。通常,POS的应用开发都是直接调用系统API(Application Programming Interface,应用程序编程接口)插件的接口,但是当系统API插件发现缺陷时,会导致应用都需要重新编译并升级,工作量巨大而且应用开发效率不高。
发明内容
基于此,有必要针对上述问题,提供一种能够屏蔽POS的系统和硬件配置的差异从而提高应用开发效率的POS应用开发的实现方法、装置、计算机设备和存储介质。
一种POS应用开发的实现方法,该方法包括:
确定待开发应用的应用类型;
根据应用类型调用对应的设备接口;
设备接口通过Android接口定义语言AIDL访问对应的服务;
服务通过调用系统接口使得POS终端实现设备接口对应的功能。
在其中一个实施例中,根据应用类型调用对应的设备接口,包括:检测应用类型是否是非管理应用类型;当应用类型为非管理应用时,则调用设备操作接口,设备操作接口用于为非管理应用提供第一级别权限的接口;当应用类型为管理应用时,则调用设备管理接口,设备管理接口用于为管理应用提供第二级别权限的接口。
在其中一个实施例中,接口通过Android接口定义语言AIDL访问对应的服务,服务通过调用系统接口使得POS终端实现设备接口对应的功能,包括:当调用的是设备操作接口时,则设备操作接口通过Android接口定义语言AIDL访问设备操作服务,设备操作服务通过调用系统接口使得POS终端实现设备操作接口对应的功能;当调用的是设备管理接口时,则设备管理接口通过AIDL访问设备管理服务,设备管理接口通过调用系统接口使得POS终端实现管理接口对应的功能。
在其中一个实施例中,该POS应用开发的实现方法还包括:根据待开发应用对应的目标功能,根据目标功能调用公共库中对应的目标封装功能接口,目标封装功能接口用于实现目标功能。
在其中一个实施例中,设备接口位于应用层,服务位于系统层,该POS应用开发的实现方法还包括:当POS终端的至少一个系统接口发生改变时,更新位于系统层中的系统接口对应的服务。
一种POS应用开发的实现装置,该装置包括:
应用类型确定模块,用于确定待开发应用的应用类型;
设备接口调用模块,用于根据应用类型调用对应的设备接口;
功能实现模块,用于接口通过Android接口定义语言AIDL访问对应的服务,服务通过调用系统接口使得POS终端实现设备接口对应的功能。
在其中一个实施例中,设备接口调用模块包括:应用类型检测单元,用于检测应用类型是否为非管理应用类型;设备操作接口调用单元,用于当应用类型为非管理应用时,则调用设备操作接口,设备操作接口用于为非管理应用提供第一级别权限的接口;设备管理接口调用单元,用于当应用类型为管理应用时,则调用设备管理接口,设备管理接口用于为管理应用提供第二级别权限的接口。
在其中一个实施例中,功能实现模块包括:设备操作接口功能实现单元,用于当调用的是设备操作接口时,则设备操作接口通过Android接口定义语言AIDL访问设备操作服务,设备操作服务通过调用系统接口使得POS终端实现设备操作接口对应的功能;设备管理接口功能实现单元,用于当调用的是设备管理接口时,则设备管理接口通过所述AIDL访问设备管理服务,设备管理接口通过调用系统接口使得POS终端实现管理接口对应的功能。
一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,该处理器执行所述程序时实现以下步骤:
确定待开发应用的应用类型;
根据应用类型调用对应的设备接口;
设备接口通过Android接口定义语言AIDL访问对应的服务;
服务通过调用系统接口使得POS终端实现设备接口对应的功能。
一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现以下步骤:
确定待开发应用的应用类型;
根据应用类型调用对应的设备接口;
设备接口通过Android接口定义语言AIDL访问对应的服务;
服务通过调用系统接口使得POS终端实现设备接口对应的功能。
上述POS应用开发的实现方法、装置、计算机设备和存储介质,通过不同类型的待开发应用调用不同的设备接口,该设备接口通过Android接口定义语言AIDL访问不同的服务,服务再通过调用系统接口使得POS终端实现设备接口对应的功能。因此,不同机型的POS终端的待开发应用可根据应用类型通过调用统一的设备接口访问同一服务,通过服务将设备接口与POS系统隔离,不仅能够屏蔽POS终端的硬件和POS终端的系统之间的差异从而提高应用开发效率,而且如果需要开发新的定制化应用,则可在待开发应用的基础上直接少量修改就可以快速完成定制化应用的开发。
附图说明
图1为一个实施例中POS应用开发的实现方法的流程图;
图2为另一个实施例中POS应用开发的实现方法的流程图;
图3为又一个实施例中POS应用开发的实现方法的流程图;
图4为一个实施例中POS应用开发的实现方法的示意图;
图5为一个实施例中POS应用开发的实现装置的结构框图;
图6为一个实施例中设备接口调用模块的结构框图;
图7为一个实施例中功能实现模块的结构框图;
图8为一个实施例中计算机设备的内部的结构图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
如图1所示,在一个实施例中,提供了一种POS应用开发的实现方法,该方法以应用于终端中进行举例说明。包括:
步骤102,确定待开发应用的应用类型。
具体地,这里的待开发应用是指POS(point of sale,支付终端)上的应用开发模板,其中,应用类型是指待开发应用的类型,包括但不限于管理应用或者非管理应用。由于POS终端上的待开发应用在开发之前,则可根据待开发应用所要实现的功能或者作用等确定待开发应用的应用类型。通常,待开发应用可同时为单个或者多个。其中,当第三方平台可根据用户的需求进行开发定制化应用时,可在待开发应用上直接进行少量修改即可完成定制化应用的开发,开发成功后的定制化应用也可作为待开发应用。
步骤104,根据应用类型调用对应的设备接口。
具体地,这里的设备接口指的是API(Application Programming Interface,应用程序编程接口),API是一些预先定义的函数,提供应用程序与开发人员基于某软件或硬件得以访问一组例程的能力。由于待开发应用的应用类型不同,因此需根据不同的应用类型调用与应用类型对应的设备接口。其中,该设备接口是以Jar包(Java Archive,Java归档文件)的形式集成在待开发应用中,包括但不限于设备操作接口和设备管理接口。
步骤106,设备接口通过Android接口定义语言AIDL访问对应的服务。
具体地,所谓Android接口定义语言AIDL是用来定义接口的一种语言,提供应用与服务之间的通信,也就是说可允许不同应用可以访问同一个服务。其中,这里的服务是指Android的四大组件之一,用于提供需要在后台长期运行的服务。由于待开发应用可同时为多个,因此多个待开发应用根据各个待开发应用的应用类型来调用与应用类型对应的设备接口,该设备接口可通过AIDL来访问对应的服务。或待开发应用为单个时,通过待开发应用的应用类型来调用与应用类型对应的设备接口,设备接口通过AIDL访问与设备接口对应的服务。通常,包括但不限于,服务可以是设备操作服务和设备管理服务。
步骤108,服务通过调用系统接口使得POS终端实现设备接口对应的功能。
具体地,由于可通过不同设备接口实现不同待开发应用的通信或者获得不同待开发应用之间的数据,通常,不同的设备接口都有对应的功能。由于POS终端的系统有多个的系统接口,因此服务通过调用系统接口来使得POS终端能够实现设备接口对应的功能。其中,功能可以是打印功能、扫码功能、通信功能等等,具体的功能需依据设备接口对应的功能而定。
本实施例中,通过不同类型的待开发应用调用不同的设备接口,该设备接口通过Android接口定义语言AIDL访问不同的服务,服务再通过调用系统接口使得POS终端实现设备接口对应的功能。因此,不同POS机型的待开发应用可根据应用类型通过调用统一的设备接口访问同一服务,不仅能够屏蔽POS的硬件和POS系统的差异,而且如果需要开发新的定制化应用,则可在待开发应用的基础上直接修改就可以快速完成定制化应用的开发。
在一个实施例中,如图2所示,提供了一种POS应用开发的实现方法,该方法以应用于终端中进行举例说明。包括:
步骤202,确定待开发应用的应用类型。
由于待开发应用在应用的开发之前,可根据待开发应用所要实现的功能或者作用等确定待开发应用的应用类型。其中,应用类型可以是管理应用或者非管理应用。通常,待开发应用可为单个或者多个。进一步地,第三方平台需要根据用户的需求进行一些定制化应用的开发,可在待开发应用上直接进行少量修改即可完成定制化应用的开发,因此开发成功的定制化应用也可作为待开发应用。
步骤204,检测应用类型是否为非管理应用类型,若是,则进入步骤206,反之,则进入步骤212。
在检测待开发应用的应用类型后,由于待开发应用的应用类型可以是管理应用类型或者非管理应用类型,因此需要检测应用类型是否为非管理应用类型,若是,则进入步骤206,反之,则进入步骤212。
步骤206,调用设备操作接口,设备操作接口用于为非管理应用提供第一级别权限的接口。
当检测到待开发应用的应用类型是非管理应用类型时,说明待开发应用是普通应用,因此根据非管理应用类型调用与非管理应用类型对应的设备操作接口。其中,设备操作接口是专门为应用类型为非管理应用的待开发应用调用的。进一步的,设备操作接口是用于为非管理应用提供第一权限的接口。所谓第一级别权限是指限制除了非管理应用的其他应用访问。通常,设备操作接口都是以Jar包的形式集成在应用类型为非管理应用的待开发应用中,供待开发应用调用。其中,设备操作接口包括但不限于:用于刷卡的操作接口、用于打印的操作接口、用于扫码的操作接口、用于通讯的操作接口等等。也就是说,设备操作接口中有不同的功能对应的操作接口可供待开发应用调用。
步骤208,设备操作接口通过Android接口定义语言AIDL访问设备操作服务。
如上所述,Android接口定义语言AIDL是用来定义接口的一种语言,提供应用与服务之间的通信,也就是说可允许不同应用访问同一个服务。因此,设备操作接口通过AIDL访问与设备操作接口对应的设备操作服务。其中,设备操作服务不仅包含各个设备操作接口对应功能的具体实现,而且可通过该设备操作服务将设备操作接口与POS终端的系统分离。
步骤210,设备操作服务通过调用系统接口使得POS终端实现设备操作接口对应的功能。
具体地,由于POS终端的系统有多个系统接口,且设备操作接口也有不同功能的操作接口,因此设备操作服务需通过调用系统接口来使得POS终端能够实现与设备操作接口对应的功能。其中,系统接口是提供完善的信息安全机制,以实现对信息的全面保护,保证系统的正常运行,应防止大量访问,以及大量占用资源的情况发生。也就是说,POS终端的系统接口是POS终端的系统重要的组成部分,可通过系统接口实现与设备操作接口对应的功能。
步骤212,调用设备管理接口,设备管理接口用于为管理应用提供第二级别权限的接口。
当检测到待开发应用的应用类型是管理应用类型时,说明待开发应用是管理应用,需要提供比设备操作接口更高级别的权限的设备管理接口,因此需要根据应用类型为管理应用调用设备管理接口。其中,设备管理接口是为管理应用提供第二级别权限的接口。也就是说,设备管理接口的级别权限比设备操作接口的级别权限更高。同样的,设备管理应用是以Jar包的形式集成在应用类型为应用类型为管理应用的待开发应用中。其中,设备管理接口包括但不限于:用于应用安装、卸载、更新等管理接口、用于获取指定网络的总流量或者获取每个应用的流量使用情况的管理接口、用于禁止应用访问指定的IP地址、解除禁止访问的IP地址、获取禁止访问的IP地址列表等的管理接口等等。
步骤214,设备管理接口通过AIDL访问设备管理服务。
具体地,设备管理接口通过Android接口定义语言AIDL来访问与设备管理接口对应的设备管理服务。通常,设备管理服务是为设备管理接口的具体实现。进一步的,第三方平台需要将待开发应用进行定制化应用的开发也可在设备管理服务中实现。
步骤216,设备管理服务通过调用系统接口使得POS终端实现管理接口对应的功能。
如上所述,由于POS终端的系统有多个系统接口,且设备管理接口也有用于不同功能的管理接口,因此设备管理服务需要调用系统接口来使得POS终端能够实现与设备管理接口对应的功能。例如设备管理接口中有用于应用卸载的管理接口,因此设备管理服务可通过调用系统接口使得POS终端能够实现应用卸载的功能。
上述实施例,对设备操作接口与设备管理接口进行统一,也就是说,不同机型的应用只要是非管理应用都可以调用设备操作接口;同样的,不同机型的应用只要是管理应用都可以调用设备管理接口。通过设备操作接口和设备管理接口来访问对应的设备操作服务以及设备管理服务。不仅采用设备操作服务或设备管理服务将设备操作接口或设备管理接口和POS终端的系统进行隔离,而且一旦POS终端的系统发生缺陷需要更新时,则只需要更新设备操作服务或设备管理服务即可修复POS终端的系统缺陷。
在一个实施例中,该POS应用开发的实现方法还包括:根据待开发应用对应的目标功能,根据目标功能调用公共库中对应的目标封装功能接口,目标封装功能接口用于实现目标功能。
本实施例中,这里的公共库是可以运行在所有Android终端上的软件库,包括但不限于用于支付待开发应用常用的工具类、用于待开发应用过程中的常用算法的算法模块、用于提供文件压缩与解压功能的压缩模块等等。所谓目标功能是指待开发应用最终实现的功能,因此可根据待开发应用的目标功能调用公共库中对应的目标封装功能接口。目标封装功能接口是指将公共库中与目标功能对应接口进行封装,为了能够具体实现目标功能。具体的,待开发应用根据最终实现的目标功能调用公共库中对应的目标封装功能接口,用于待开发应用能够实现目标功能。如,待开发应用的目标功能是能够提供文件压缩与解压,因此待开发应用根据文件压缩与解压的目标功能调用公共库中用于提供文件压缩与解压的压缩模块的接口,则待开发应用通过调用公共库中用于提供文件压缩与解压的压缩模块的接口从而实现文件压缩与解压的功能。
在一个实施例中,设备接口位于应用层,服务位于系统层,该POS应用开发的实现方法还包括:当POS终端的至少一个系统接口发生改变时,更新位于系统层中的系统接口对应的服务。
本实施例中,设备接口可以是设备操作接口以及设备管理接口,服务可以是设备操作服务和设备管理服务。由于设备操作接口以及设备管理接口可通过Android接口定义语言AIDL分别访问设备操作服务和设备管理服务,因此设备操作接口以及设备管理接口都位于应用层。同样的,由于设备操作服务和设备管理服务可通过调用系统接口使得POS终端实现与设备接口对应的功能,则设备操作服务和设备管理服务位于系统层。进一步的,由于POS终端的系统存在多个系统接口,因此当POS终端中的至少一个系统接口发生改变时,对系统层中的系统接口对应的服务进行更新。例如,由于POS终端的系统接口A对应的服务是设备操作服务,因此当POS终端中的系统接口A进行更新时,则对调用系统接口A的设备操作服务进行更新,而不需要对访问设备操作服务的设备操作接口进行更新。也就是说,通过设备操作服务将设备操作接口和POS终端的系统隔离,因此当系统进行更新时,集成在待开发应用上的设备操作接口不需要进行更新,也就是应用类型为非管理应用的待开发应用不需要更新。同样的,通过设备管理服务将设备操作接口和POS终端的系统隔离,因此当系统进行更新时,集成在待开发应用上的设备管理接口不需要进行更新,也就是应用类型为管理应用的待开发应用不需要更新。
图3示出一个实施例中POS应用开发的实现方法的流程图,该方法以应用于终端中进行举例说明。包括:
步骤302,确定待开发应用的应用类型。
具体地,由于待开发应用在应用的开发之前,可根据待开发应用的功能或者作用等确定待开发应用的应用类型。通常,待开发应用可同时为单个或者多个,第三方平台需要根据用户的需求进行一些定制化应用的开发,可在待开发应用上直接进行少量修改即可完成定制化应用的开发,因此开发成功的定制化应用也可作为待开发应用。如图4所示,APPT(Application Template,应用开发模板)是待开发应用的其中一种,一般应用开发模板APPT都是以源码的形式提供。客制化应用1、客制化应用2都是第三方平台在应用开发模板上根据用户需求直接修改开发的得到,客制化应用1和客制化应用2开发成功后都可以作为待开发应用的其中一种。主控应用是第三方平台开发出来的管理应用,也可作为待开发应用的其中一种。因此,APPT、客制化应用1和客制化应用2的应用类型在开发前就确定为非管理应用,同样的,主控应用的应用类型在开发前就确定为管理应用。
步骤304,根据待开发应用对应的目标功能,根据目标功能调用公共库中对应的目标封装功能接口,目标封装功能接口用于实现目标功能。
如上所述,公共库就是可以运行在所有Android终端上的软件库,其中公共库中包括但不限于用于支付待开发应用常用的工具类、用于待开发应用过程中的常用算法的算法模块、用于提供文件压缩与解压功能的压缩模块等等。如图4所示,待开发应用APPT最后想成为一个支付应用,由于支付应用的开发需要支付应用开发常用的工具,且在公共库中用于支付待开发应用常用的工具类。因此待开发应用APPT调用公共库中用于支付待开发应用常用的工具类对应的封装接口从而获得支付应用开发常用的工具类。
步骤306,检测应用类型是否为非管理应用类型,若是,则进入步骤308;反之,则进入步骤314。
在确定待开发应用的应用类型后,待开发应用的应用类型可以是管理应用或者是非管理应用。由于管理应用和非管理应用调用需调用不同的设备接口,因此在调用设备接口之前需对待开发应用的应用类型进行检测,若待开发应用的应用类型是非管理应用时,则进入步骤308;若待开发应用的应用类型是管理应用时,则进入步骤314。应当说明的是,步骤304和步骤306并没有先后执行顺序,也可以同时执行,或者先执行步骤304再执行步骤306。在其它实施例中,也可只包括步骤304和步骤306中的一个步骤。
步骤308,调用设备操作接口,设备操作接口用于为非管理应用提供第一级别权限的接口。
当检测到待开发应用的应用类型是非管理应用类型时,则调用与非管理应用类型的设备操作接口。其中,设备操作接口是用于为非管理应用提供第一级别权限的接口。其中,第一级别权限是指限制除了非管理应用的其他应用访问。如图4所示,APPT、客制化应用1、客制化应用2的应用类型都是非管理应用类型,因此APPT、客制化应用1、客制化应用2调用设备操作接口。也就是说,统一设备操作接口专门用于为非管理应用调用,由于设备操作接口中有多个不同功能对应的操作接口,因此多个应用可调用同一个设备操作接口。
步骤310,设备操作接口通过Android接口定义语言AIDL访问设备操作服务。
如上所述,设备操作接口可通过AIDL访问同一个与设备操作接口对应的设备操作服务,也就是说,多个应用可通过调用设备操作接口访问同一设备操作服务。具体的,如图4所示,APPT、客制化应用1、客制化应用2调用设备操作接口,设备操作接口可通过Android接口定义语言AIDL访问设备操作服务,由于AIDL可允许应用于服务之间的通信,因此待开发应用为APPT、客制化应用1和客制化应用2之间可以通过AIDL访问同一设备操作服务。
步骤312,设备操作服务通过调用系统接口使得POS终端实现设备操作接口对应的功能。
具体地,由于POS终端的系统有多个系统接口,且设备操作接口中也有多个不同的操作接口,因此设备操作服务通过调用POS终端的系统接口来使得POS终端能够实现与设备操作接口对应的功能。如图4所示,由于POS终端使用的系统是PayDroid系统,所谓PayDroid系统是针对支付终端定制的Android系统。APPT、客制化应用1和客制化应用2调用设备操作接口中不同的功能对应的操作接口,设备操作接口通过AIDL访问与设备操作接口对应的设备操作服务,设备操作服务通过调用PayDroid系统接口使得POS终端能够实现与设备操作接口对应的功能。
步骤314,调用设备管理接口,设备管理接口用于为管理应用提供第二级别权限的接口。
具体地,在检测到待开发应用的应用类型是管理应用类型时,由于管理应用的权限比非管理应用的权限更高。因此需提供比设备操作接口更高级别的权限的设备管理接口。如图4所示,第三平台可根据用户需求在APPT应用模板直接开发完成得到主控应用,将主控应用作为待开发应用。其中主控应用的应用类型是管理应用类型。则主控应用调用与管理应用类型对应的设备管理接口。
步骤316,设备管理接口通过AIDL访问设备管理服务。
同样地,设备管理接口通过Android接口定义语言AIDL来访问与设备管理接口对应的设备管理服务。通常,设备管理服务是为设备管理接口对应的功能的具体实现。进一步地,第三方平台根据用户需求将待开发应用进行定制化应用的开发的具体实现都在设备管理服务中实现。
步骤318,设备管理服务通过调用系统接口使得POS终端实现管理接口对应的功能。
同样地,由于POS终端的系统有多个系统接口,且设备操作接口中也有多个不同的操作接口,因此设备管理服务通过调用POS终端的系统接口来使得POS终端能够实现与设备管理接口对应的功能。如图4所示,由于POS终端使用的系统是PayDroid系统,所谓PayDroid系统是针对支付终端定制的Android系统。应用类型为管理应用的主控类型调用设备管理接口中不同的功能对应的管理接口,设备管理接口通过AIDL访问与设备管理接口对应的设备管理服务,设备管理服务再通过调用PayDroid系统接口使得POS终端能够实现与设备管理接口对应的功能。如主控应用调用设备管理接口中用于应用卸载的管理接口,设备管理接口通过AIDL访问与设备管理服务,设备管理服务调用PayDroid系统接口使得POS终端能够实现应用卸载功能。
步骤320,当POS终端的至少一个系统接口发生改变时,更新位于系统层中的系统接口对应的设备操作服务。
具体地,由于POS终端的系统存在多个系统接口,因此当POS终端的至少一个系统接口发生改变时,对位于系统层的系统接口对应的设备操作服务进行更新。例如,POS终端的系统接口A是设备操作服务调用的,因此当系统接口A发生更新时,则对与系统接口A对应的设备操作服务进行更新。也就是说,采用设备操作服务将设备操作接口与系统隔离,当系统需要进行更新时,只需要更新设备操作服务,无需对设备操作接口进行更新。由于设备操作接口是以Jar包集成在待开发应用中,因此无需对开发成功的待开发应用进行更新。应当说明的是,步骤320和步骤312没有先后执行顺序,也可以同时执行,或者先执行步骤312再执行步骤320。在其它实施例中,当POS终端的系统不发生更新时,也可只包括步骤312。
步骤322,当POS终端的至少一个系统接口发生改变时,更新位于系统层中的系统接口对应的设备管理服务。
同样地,当POS终端至少一个系统接口发生改变时,对于位于系统层的与发生改变的系统接口对应的设备管理服务进行更新。例如,POS终端的系统接口B是设备管理服务调用的,因此当系统接口B发生改变时,则可对系统接口B对应的设备管理服务进行更新。也就是说,采用设备管理服务将设备管理接口与POS终端的系统进行隔离,当POS终端的系统因为缺陷进行更新时,只需要对设备管理服务进行更新,而无需对设备管理接口进行更新。由于设备管理接口是以Jar包的形式集成在应用类型为管理应用的待开发应用中,则当POS终端的系统需更新时,无需对待开发应用进行更新。应当说明的是,步骤322和步骤318没有先后执行顺序,也可以同时执行,或者先执行步骤318再执行步骤322。在其它实施例中,当POS终端的系统不发生更新时,也可只包括步骤318。
上述实施例,当POS终端的系统因缺陷发生更新时,由于服务将系统和应用隔离,因此无需对应用更新,只需对服务进行更新则可修复系统的缺陷,减少开发人员的工作量。由于待开发应用可通过调用公共库的接口获得与POS终端无关的公共资源,因此也能够有效避免在待开发应用的开发过程中代码拷贝导致功能重复实现的现象。
如图5所示,提供了一种POS应用开发的实现装置500,该装置包括:应用类型确定模块502,设备接口调用模块504,功能实现模块506,其中:
应用类型确定模块502,用于确定待开发应用的应用类型;
设备接口调用模块504,用于根据应用类型调用对应的设备接口;
功能实现模块506,用于接口通过Android接口定义语言AIDL访问对应的服务,服务通过调用系统接口使得POS终端实现设备接口对应的功能。
如图6所示,该设备接口调用模块504包括:应用类型检测单元602,设备操作接口调用单元604以及设备管理接口调用单元606,其中:
应用类型检测单元602,用于检测应用类型是否为非管理应用类型;
设备操作接口调用单元604,用于当应用类型为非管理应用时,则调用设备操作接口,设备操作接口用于为非管理应用提供第一级别权限的接口;
设备管理接口调用单元606,用于当应用类型为管理应用时,则调用设备管理接口,设备管理接口用于为管理应用提供第二级别权限的接口。
如图7所示,该功能实现模块506包括:设备操作接口功能实现单元702和设备管理接口功能实现单元704,其中:
设备操作接口功能实现单元702,用于当调用的是设备操作接口时,则设备操作接口通过Android接口定义语言AIDL访问设备操作服务,设备操作服务通过调用系统接口使得POS终端实现设备操作接口对应的功能;
设备管理接口功能实现单元704,用于当调用的是设备管理接口时,则设备管理接口通过AIDL访问设备管理服务,设备管理接口通过调用系统接口使得POS终端实现管理接口对应的功能。
在一个实施例中,该POS应用开发的实现装置500还包括目标封装功能接口调用模块(图中未示出),该目标封装功能接口调用模块用于根据待开发应用对应的目标功能,根据目标功能调用公共库中对应的目标封装功能接口,目标封装功能接口用于实现目标功能。
在一个实施例中,设备接口位于应用层,服务位于系统层,该POS应用开发的实现装置500还包括服务更新模块(图中未示出),该服务更新模块用于当POS终端的至少一个系统接口发生改变时,更新位于系统层中的系统接口对应的服务。
图8为一个实施例中计算机设备的内部结构示意图。该计算机设备可以是终端。如图8所述,该终端包括通过总线连接的处理器、存储器、网络接口、显示屏和输入装置。其中,该处理器用于提供计算和控制能力,支撑整个终端的运行。存储器包括非易失性存储介质和内存储器,该终端的非易失性存储介质存储有操作系统和一种POS应用开发的实现装置的计算机程序,该POS应用开发的实现装置的计算机程序被处理器执行时,用于实现一种POS应用开发的实现方法。该终端中的内存储器为非易失性存储介质中的POS应用开发的实现装置的运行提供了环境,该终端的网络接口用于通过网络进行通信,例如,确定待开发应用的应用类型。该输入装置可以是显示屏上覆盖的触摸层,也可以是外接的键盘、触控板或鼠标等,该显示屏用于显示应用界面等,该终端可以是液晶显示屏或者电子墨水显示屏,触摸层与显示屏构成触控屏。本领域技术人员可以理解,图8中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的终端的限定,具体的终端可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现以下步骤:确定待开发应用的应用类型;根据应用类型调用对应的设备接口;设备接口通过Android接口定义语言AIDL访问对应的服务;服务通过调用系统接口使得POS终端实现设备接口对应的功能。
在一个实施例中,根据应用类型调用对应的设备接口,包括:检测应用类型是否为非管理应用类型;当应用类型是非管理应用时,则调用设备操作接口,设备操作接口用于为非管理应用提供第一级别权限的接口;当应用类型为管理应用时,则调用设备管理接口,设备管理接口用于为管理应用提供第二级别权限的接口。
在一个实施例中,接口通过Android接口定义语言AIDL访问对应的服务,服务通过调用系统接口使得POS终端实现设备接口对应的功能,包括:当调用的是设备操作接口时,则设备操作接口通过Android接口定义语言AIDL访问设备操作服务,设备操作服务通过调用系统接口使得POS终端实现设备操作接口对应的功能;当调用的是设备管理接口时,则设备管理接口通过AIDL访问设备管理服务,设备管理接口通过调用系统接口使得POS终端实现管理接口对应的功能。
在一个实施例中,该POS应用开发的实现方法还包括:根据待开发应用对应的目标功能,根据目标功能调用公共库中对应的目标封装功能接口,目标封装功能接口用于实现目标功能。
在一个实施例中,设备接口位于应用层,服务位于系统层,该POS应用开发的实现方法还包括:当POS终端的至少一个系统接口发生改变时,更新位于系统层中的系统接口对应的服务。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一非易失性的计算机可读取存储介质中,如本发明实施例中,该程序可存储于计算机系统的非易失性存储介质中,并被该计算机系统中的至少一个处理器执行,以实现包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random Access Memory,RAM)等。
以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。
Claims (10)
1.一种POS应用开发的实现方法,所述方法包括:
确定待开发应用的应用类型;
根据所述应用类型调用对应的设备接口;
所述设备接口通过Android接口定义语言AIDL访问对应的服务;
所述服务通过调用系统接口使得POS终端实现所述设备接口对应的功能。
2.根据权利要求1所述的方法,其特征在于,所述根据所述应用类型调用对应的设备接口,包括:
检测所述应用类型是否是非管理应用类型;
当所述应用类型为非管理应用时,则调用设备操作接口,所述设备操作接口用于为非管理应用提供第一级别权限的接口;
当所述应用类型为管理应用时,则调用设备管理接口,所述设备管理接口用于为管理应用提供第二级别权限的接口。
3.根据权利要求2所述的方法,其特征在于,所述接口通过Android接口定义语言AIDL访问对应的服务,所述服务通过调用系统接口使得POS终端实现所述设备接口对应的功能,包括:
当调用的是设备操作接口时,则所述设备操作接口通过所述Android接口定义语言AIDL访问设备操作服务,所述设备操作服务通过调用系统接口使得POS终端实现所述设备操作接口对应的功能;
当调用的是设备管理接口时,则所述设备管理接口通过所述AIDL访问设备管理服务,所述设备管理服务通过调用系统接口使得POS终端实现所述管理接口对应的功能。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
根据待开发应用对应的目标功能,根据所述目标功能调用公共库中对应的目标封装功能接口,所述目标封装功能接口用于实现所述目标功能。
5.根据权利要求1所述的方法,其特征在于,所述设备接口位于应用层,所述服务位于系统层,所述方法还包括:当所述POS终端的至少一个系统接口发生改变时,更新位于所述系统层中的所述系统接口对应的所述服务。
6.一种POS应用开发的实现装置,所述装置包括:
应用类型确定模块,用于确定待开发应用的应用类型;
设备接口调用模块,用于根据所述应用类型调用对应的设备接口;
功能实现模块,用于所述接口通过Android接口定义语言AIDL访问对应的服务,所述服务通过调用系统接口使得POS终端实现所述设备接口对应的功能。
7.根据权利要求6所述的装置,其特征在于,所述设备接口调用模块包括:
应用类型检测单元,用于检测所述应用类型是否为非管理应用类型;
设备操作接口调用单元,用于当所述应用类型为非管理应用时,则调用设备操作接口,所述设备操作接口用于为非管理应用提供第一级别权限的接口;
设备管理接口调用单元,用于当所述应用类型为管理应用时,则调用设备管理接口,所述设备管理接口用于为管理应用提供第二级别权限的接口。
8.根据权利要求6所述的装置,其特征在于,所述功能实现模块包括:
设备操作接口功能实现单元,用于当调用的是设备操作接口时,则所述设备操作接口通过所述Android接口定义语言AIDL访问设备操作服务,所述设备操作服务通过调用系统接口使得POS终端实现所述设备操作接口对应的功能;
设备管理接口功能实现单元,用于当调用的是设备管理接口时,则所述设备管理接口通过所述AIDL访问设备管理服务,所述设备管理接口通过调用系统接口使得POS终端实现所述管理接口对应的功能。
9.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现权利要求1-5任意一项所述方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现权利要求1-5任意一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711320447.7A CN108628620B (zh) | 2017-12-12 | 2017-12-12 | Pos应用开发的实现方法、装置、计算机设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711320447.7A CN108628620B (zh) | 2017-12-12 | 2017-12-12 | Pos应用开发的实现方法、装置、计算机设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108628620A true CN108628620A (zh) | 2018-10-09 |
CN108628620B CN108628620B (zh) | 2021-11-23 |
Family
ID=63705797
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711320447.7A Active CN108628620B (zh) | 2017-12-12 | 2017-12-12 | Pos应用开发的实现方法、装置、计算机设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108628620B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109582312A (zh) * | 2018-12-04 | 2019-04-05 | 艾体威尔电子技术(北京)有限公司 | 一种智能pos的ui层和逻辑层分离开发方法 |
CN110865844A (zh) * | 2019-11-28 | 2020-03-06 | 安徽江淮汽车集团股份有限公司 | 基于车联网平台的应用配置系统及方法 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103176774A (zh) * | 2011-12-21 | 2013-06-26 | 中国移动通信集团广东有限公司 | 应用程序的编译方法、装置以及系统 |
CN103955482A (zh) * | 2014-04-03 | 2014-07-30 | 北京百度网讯科技有限公司 | 一种在移动终端中调用服务的方法和设备 |
CN104462949A (zh) * | 2014-10-27 | 2015-03-25 | 中国建设银行股份有限公司 | 一种插件的调用方法及装置 |
CN104618437A (zh) * | 2014-12-31 | 2015-05-13 | 成都卓影科技有限公司 | 一种与android终端设备系统设置接口的适配方法 |
CN104834530A (zh) * | 2015-05-27 | 2015-08-12 | 百富计算机技术(深圳)有限公司 | 一种pos应用程序的开发方法及云端服务器 |
CN106204968A (zh) * | 2016-07-25 | 2016-12-07 | 无锡酷银科技有限公司 | 一种基于pos机的多硬件适配装置及其适配方法 |
CN106250113A (zh) * | 2016-07-18 | 2016-12-21 | 百富计算机技术(深圳)有限公司 | 一种应用开发平台 |
US20170256000A1 (en) * | 2014-03-31 | 2017-09-07 | Monticello Enterprises LLC | System and method for providing a universal shopping cart |
-
2017
- 2017-12-12 CN CN201711320447.7A patent/CN108628620B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103176774A (zh) * | 2011-12-21 | 2013-06-26 | 中国移动通信集团广东有限公司 | 应用程序的编译方法、装置以及系统 |
US20170256000A1 (en) * | 2014-03-31 | 2017-09-07 | Monticello Enterprises LLC | System and method for providing a universal shopping cart |
CN103955482A (zh) * | 2014-04-03 | 2014-07-30 | 北京百度网讯科技有限公司 | 一种在移动终端中调用服务的方法和设备 |
CN104462949A (zh) * | 2014-10-27 | 2015-03-25 | 中国建设银行股份有限公司 | 一种插件的调用方法及装置 |
CN104618437A (zh) * | 2014-12-31 | 2015-05-13 | 成都卓影科技有限公司 | 一种与android终端设备系统设置接口的适配方法 |
CN104834530A (zh) * | 2015-05-27 | 2015-08-12 | 百富计算机技术(深圳)有限公司 | 一种pos应用程序的开发方法及云端服务器 |
CN106250113A (zh) * | 2016-07-18 | 2016-12-21 | 百富计算机技术(深圳)有限公司 | 一种应用开发平台 |
CN106204968A (zh) * | 2016-07-25 | 2016-12-07 | 无锡酷银科技有限公司 | 一种基于pos机的多硬件适配装置及其适配方法 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109582312A (zh) * | 2018-12-04 | 2019-04-05 | 艾体威尔电子技术(北京)有限公司 | 一种智能pos的ui层和逻辑层分离开发方法 |
CN109582312B (zh) * | 2018-12-04 | 2021-09-21 | 艾体威尔电子技术(北京)有限公司 | 一种智能pos的ui层和逻辑层分离开发方法 |
CN110865844A (zh) * | 2019-11-28 | 2020-03-06 | 安徽江淮汽车集团股份有限公司 | 基于车联网平台的应用配置系统及方法 |
CN110865844B (zh) * | 2019-11-28 | 2021-09-28 | 安徽江淮汽车集团股份有限公司 | 基于车联网平台的应用配置系统及方法 |
Also Published As
Publication number | Publication date |
---|---|
CN108628620B (zh) | 2021-11-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11552955B2 (en) | Data security across data residency restriction boundaries | |
US20070240171A1 (en) | Device, Method, And Computer Program Product For Accessing A Non-Native Application Executing In Virtual Machine Environment | |
US10996997B2 (en) | API-based service command invocation | |
US10558438B2 (en) | Context information based on type of routine being called | |
US10949221B2 (en) | Executing instructions to store context information based on routine to be executed | |
CN108959916A (zh) | 用于访问安全世界的方法、装置和系统 | |
CN109241731A (zh) | 一种基于虚拟应用的隐私信息保护方法、装置及存储介质 | |
CN109784039B (zh) | 移动终端安全运行空间的构建方法、电子设备、存储介质 | |
US20180165103A1 (en) | Marking external sibling caller routines | |
CN102902911A (zh) | 一种在Java虚拟机中安全运行第三方代码的方法 | |
US20180165091A1 (en) | Marking sibling caller routines | |
CN112685020A (zh) | 动态创建服务接口的方法、装置、电子设备及存储介质 | |
CN108628620A (zh) | Pos应用开发的实现方法、装置、计算机设备和存储介质 | |
US10180827B2 (en) | Suppressing storing of context information | |
CN104636154A (zh) | 应用程序安装方法及装置 | |
CN103309696B (zh) | 一种Java卡扩展库更新方法、装置和Java卡 | |
CN112835639B (zh) | 一种Hook实现方法、装置、设备、介质及产品 | |
CN110045952B (zh) | 代码调用方法与装置 | |
CN110719293A (zh) | 一种安全服务生成方法和相关设备 | |
CN115827049A (zh) | 基于配置的缓存切换方法、电子设备及存储介质 | |
US11593474B2 (en) | Container behavior representation | |
CN114371874A (zh) | 一种物联网设备的配置方法、系统、装置及介质 | |
CN112764729A (zh) | 应用软件开发方法、装置、计算机设备及可读存储介质 | |
CN113726855A (zh) | 服务聚合方法、装置、电子设备以及计算机可读存储介质 | |
CN107153542B (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 |