数据处理方法、终端设备及存储介质与流程

文档序号:29629077发布日期:2022-04-13 15:23阅读:99来源:国知局
数据处理方法、终端设备及存储介质与流程

1.本技术属于计算机技术领域,尤其涉及一种数据处理方法、终端设备及存储介质。


背景技术:

2.在一些情况下,销售终端(point of sale,pos)的应用软件需要重新改写。在目前的销售终端的应用开发平台中,上层应用直接调用各种机型的销售终端的底层api(application programming interface,应用程序编程接口),然后向销售终端写入数据。
3.由于销售终端的应用的需求方众多,同时需求方又都要遵守行业规范,一旦行业规范发生变动,不同需求方就会提出相同的改动需求。在目前的应用开发平台,需要将每个应用代码跟标准版代码比对,然后将改动移植到需求方的个性化应用中去,导致上层应用的开发难度很大。


技术实现要素:

4.本技术的实施例提供一种数据处理方法、终端设备及存储介质,能降低上层应用的开发难度。
5.第一方面,本技术的实施例提供一种数据处理方法,包括:
6.上层应用调用中间层库的库接口;
7.所述中间层库调用底层应用程序编程接口,以实现与所述库接口对应的功能。
8.在第一方面的一种可能的实现方式中,所述数据处理方法还包括:
9.获取指定功能数据;
10.对所述指定功能数据进行功能模块封装,生成所述库接口。
11.在第一方面的一种可能的实现方式中,所述获取指定功能数据,包括:
12.获取功能数据;
13.对所述功能数据分类,得到指定功能数据。
14.在第一方面的一种可能的实现方式中,所述对所述指定功能数据进行功能模块封装,生成所述库接口,包括:
15.通过宏定义多个所述指定功能数据的差异;
16.针对宏定义的多个所述指定功能数据,生成对应的所述库接口。
17.在第一方面的一种可能的实现方式中,所述生成对应的所述库接口,包括:
18.通过脚本工具分别编译生成对应的所述库接口。
19.在第一方面的一种可能的实现方式中,在所述生成所述库接口之后,还包括:
20.适配调试所述库接口,使得所述库接口适配设备。
21.在第一方面的一种可能的实现方式中,所述对所述指定功能数据进行功能模块封装,生成所述库接口,包括:
22.对所述指定功能数据设置参数调节项并进行功能模块封装,生成所述库接口。
23.在第一方面的一种可能的实现方式中,所述上层应用调用中间层库的目标库接
口,包括:
24.上层应用按顺序依次调用中间层库的多个库接口;
25.或者,上层应用直接调用中间层库的一个库接口。
26.第二方面,本技术的实施例提供一种终端设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述第一方面中任一项所述的数据处理方法。
27.第三方面,本技术的实施例提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述第一方面中任一项所述的数据处理方法。
28.第四方面,本技术的实施例提供一种计算机程序产品,当计算机程序产品在终端设备上运行时,使得终端设备执行上述第一方面中任一项所述的数据处理方法。
29.本技术的实施例与现有技术相比存在的有益效果是:
30.在本技术的实施例中,上层应用调用中间层库的库接口,中间层库调用底层应用程序编程接口,以实现与库接口对应的目标功能;如此,通过介于上层应用与底层应用程序编程接口之间的中间层库,兼容各种设备之间的差异,能降低上层应用的开发难度。
31.本技术的实施例的一些可能的实现方式具有如下有益效果:
32.通过宏定义多个指定功能数据的差异,针对宏定义的多个指定功能数据,在中间层库生成对应的目标库接口;如此,可以通过宏来区分不同型号的目标设备,实现将上层应用的不同点下放到中间层库,上层应用则只暴露出一个接口,能减少重复的开发测试工作,从而缩短上层应用开发的周期。
附图说明
33.为了更清楚地说明本技术的实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
34.图1是本技术一实施例提供的终端设备的系统架构示意图;
35.图2是本技术一实施例提供的数据处理方法的流程示意图;
36.图3是本技术一实施例提供的数据处理方法所适用于的软件架构示意图;
37.图4是本技术另一实施例提供的数据处理方法的流程示意图;
38.图5是本技术一实施例提供的数据处理方法的步骤b1的流程示意图;
39.图6是本技术一实施例提供的数据处理方法的步骤b2的流程示意图;
40.图7是本技术又一实施例提供的数据处理方法的流程示意图;
41.图8是本技术一实施例提供的终端设备的结构示意图。
具体实施方式
42.为了使本技术所要解决的技术问题、技术方案及有益效果更加清楚明白,以下结合附图1至8及实施例,对本技术进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本技术,并不用于限定本技术。
43.以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本技术的实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本技术。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本技术的描述。
44.应当理解,当在本技术说明书和所附权利要求书中使用时,术语“包括”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
45.还应当理解,在本技术说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
46.如在本技术说明书和所附权利要求书中所使用的那样,术语“如果”可以依据上下文被解释为“当...时”或“一旦”或“响应于确定”或“响应于检测到”。类似地,短语“如果确定”或“如果检测到[所描述条件或事件]”可以依据上下文被解释为意指“一旦确定”或“响应于确定”或“一旦检测到[所描述条件或事件]”或“响应于检测到[所描述条件或事件]”。
[0047]
另外,在本技术说明书和所附权利要求书的描述中,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
[0048]
在本技术说明书中描述的参考“一个实施例”或“一些实施例”等意味着在本技术的一个或多个实施例中包括结合该实施例描述的特定特征、结构或特点。由此,在本说明书中的不同之处出现的语句“在一个实施例中”、“在一些实施例中”、“在其他一些实施例中”、“在另外一些实施例中”等不是必然都参考相同的实施例,而是意味着“一个或多个但不是所有的实施例”,除非是以其他方式另外特别强调。术语“包括”、“包含”、“具有”及它们的变形都意味着“包括但不限于”,除非是以其他方式另外特别强调。
[0049]
本技术的实施例提供一种数据处理方法,可以应用于终端设备的应用运行或者应用开发。
[0050]
前述终端设备可以是销售终端设备、手机、平板电脑、可穿戴设备、车载设备、增强现实(augmented reality,ar)/虚拟现实(virtual reality,vr)设备、笔记本电脑、超级移动个人计算机(ultra-mobile personal computer,umpc)、上网本、个人数字助理(personal digital assistant,pda)等终端设备上,本技术实施例对终端设备的具体类型不作任何限制。
[0051]
图1是本技术一实施例提供的终端设备的系统架构示意图。参考图1,本技术的实施例提供的终端设备包括上层应用100和中间层库200。
[0052]
图2是本技术一实施例提供的数据处理方法的流程示意图。参考图2,本技术的实施例提供的数据处理方法包括步骤a1和步骤a2。
[0053]
步骤a1、上层应用调用中间层库的库接口。
[0054]
中间层库200是一组对应于不同终端设备的静态库,以库接口(比如库文件)的形式存在。前述静态库可以是.a库。
[0055]
库接口具有一个或多个接口函数。一个库接口是一个功能模块。
[0056]
在一些实施例中,中间层库200包括通讯功能模块、调试功能模块、显示功能模块、emv(europay mastercard visa)功能模块、iso8583功能模块、参数设置功能模块、密码键盘功能模块、打印功能模块、公共基础功能模块、系统功能模块、以及远程更新功能模块等
库接口。
[0057]
通讯功能模块:支持wifi(无线网络通信)、gprs(general packet radio service,通用分组无线服务)、cdma(code division multiple access,码分多址)、4g、以太网、串口、以及拨号等各种通讯方式,能根据设备是否支持该种通讯功能自动连接通讯。
[0058]
在上述通讯功能模块中,之前的应用代码针对不同的通讯方式单独封装socket连接、发送、接收等功能的接口。实际上不同模块的socket通讯是可以通用的,因此在socket通讯前增加一个comm_init接口;通过一个结构体入参传入不同通讯方式下对应的参数,实现通讯前的准备工作;示例的,gprs要先进行基站连接,wifi要先进行热点连接。
[0059]
调试功能模块:通过串口或usb(universal serial bus,通用串行总线)口或显示、打印等手段输出调试日志;设置有多个(比如5个)级别的日志输出能力,提供手动或函数调用方式设置日志输出方式的接口。
[0060]
之前的应用程序没有固定的用来调试的接口,都是在需要的时候临时写一个简单的调试接口,通过串口或者屏幕显示出想要的调试信息,然后在发布前删除调试代码或者使用宏关闭调试代码。本技术的实施例在中间层库新增调试功能模块,可以通过调用debug_setdebuginfo来设置调试输出的方式及级别,也可以在发布版的程序中通过在参数设置菜单里调用debug_setdebugport手动打开日志、选择日志信息输出方式及日志级别,方便在生产中排查问题原因。
[0061]
显示功能模块:提供清屏、清除单行、指定行显示、指定位置显示、指定像素点位置显示、二维码或条码显示、大小字体、彩色字体及返现等功能。
[0062]
emv功能模块:提供pboc和qpboc功能,支持插卡和非接卡功能。
[0063]
iso8583功能模块:提供iso8583打包功能。各类底层应用程序编程接口1
[0064]
参数设置功能模块:提供设置布尔值、数字、中英文字符串等功能;通过配置参数类型结构体数组,配置参数。
[0065]
在上述参数设置功能模块中,之前的上层应用所有的参数均为字符串格式,需要在使用时转为需要的格式,然后在设置时再转回字符串格式。本技术的实施例在中间层库中增加布尔值、数字、中英文字符串等格式,可以方便的以想要的格式进行存储和读取,能简化代码逻辑。
[0066]
密码键盘功能模块:提供pin(personal identification number,个人身份识别码)输入、工作密钥、主密钥、des(data encryption standard,美国数据加密标准)密钥下载、加解密等功能。
[0067]
打印功能模块:提供图片、二维码打印、字符串打印、打印机走纸等功能。
[0068]
公共基础功能模块:提供电子签名、各种转码功能、文件操作等基础功能。
[0069]
系统功能模块:提供系统初始化、获取终端型号、屏幕大小、日期时间、电池电量、打印机模式、休眠、sn(serial number,序列号)号等功能。
[0070]
远程更新功能模块:提供应用远程更新、参数远程下载等功能。
[0071]
上层应用100为实现目标业务逻辑而调用的库接口为目标库接口。具体的,上层应用100通过调用中间层库200的目标库接口提供的接口函数,实现上层应用100的目标业务逻辑。
[0072]
上层应用可以直接调用中间层库的一个目标库接口。对于独立功能,上层应用可
以直接调用与该独立功能对应的目标库接口。
[0073]
上层应用也可以按顺序依次调用中间层库的多个目标库接口。对于非独立功能,上层应用需要按顺序依次调用中间层库的多个目标库接口,比如:对于通讯打印功能,上层应用先调用与通讯功能对应的目标库接口,然后再调用与打印功能对应的目标库接口,从而实现通讯打印功能。
[0074]
步骤a2、中间层库调用底层应用程序编程接口,以实现与库接口对应的功能。
[0075]
终端设备具有底层应用程序编程接口。
[0076]
图3是本技术一实施例提供的数据处理方法所适用于的软件架构示意图。参考图3,上层应用100与各类底层应用程序编程接口之间存在中间层库200。上层应用100的所有功能均调用中间层库200提供的接口实现。
[0077]
中间层库200通过调用终端设备的目标底层应用程序编程接口,实现中间层库200的目标库接口提供的接口函数功能,从而实现与目标库接口对应的目标功能,比如实现wifi通讯功能。其中,各类机型的底层应用程序编程接口的差异由中间层库进行兼容和屏蔽。上层应用通过调用中间层库基于各类终端设备产出的库接口进行编译,生成适用于各类终端设备的程序文件。
[0078]
根据上述内容可知,上层应用调用中间层库的库接口,中间层库调用底层应用程序编程接口,以实现与库接口对应的功能;如此,通过介于上层应用与底层应用程序编程接口之间的中间层库,兼容各种设备之间的差异,能降低上层应用的开发难度,能实现用一套应用代码编译适用于各种设备的应用。
[0079]
图4是本技术另一实施例提供的数据处理方法的流程示意图。参考图4,在一些实施例中,在步骤a1和步骤a2之前,数据处理方法还包括步骤b1和步骤b2。
[0080]
步骤b1、获取指定功能数据。
[0081]
图5是本技术一实施例提供的数据处理方法的步骤b1的流程示意图。参考图5,在一些实施例中,步骤b1(获取指定功能数据)包括步骤b11和步骤b12。
[0082]
步骤b11、获取功能数据。
[0083]
功能数据是代表设备的基本功能的数据。设备的基本功能可以是wifi通讯方式、pin输入或者二维码打印。
[0084]
不同型号的设备的基本功能可能不同,这些基本功能代表不同需求方的需求。示例的,设备a采用wifi通讯方式,设备b则采用以太网通讯方式;那么,对应的功能数据也就不同。
[0085]
步骤b12、对功能数据分类,得到指定功能数据。
[0086]
获取到的功能数据可能是属于同一类的,比如wifi通讯方式和以太网通讯方式属于通讯功能,因此,可以对所有的功能数据分类,得到指定功能数据。
[0087]
指定功能数据代表一类功能,包括一个或多个功能数据。
[0088]
示例的,指定功能数据可以是通讯功能数据、调试功能数据、显示功能数据、emv功能数据、iso8583功能数据、参数设置功能数据、密码键盘功能数据、打印功能数据、公共基础功能数据、系统功能数据、以及远程更新功能数据等。
[0089]
步骤b2、对指定功能数据进行功能模块封装,生成库接口。
[0090]
获取到指定功能数据之后,对所有的指定功能数据进行功能模块封装,编译成库
文件,从而得到库接口,比如得到通讯功能模块、调试功能模块、显示功能模块、emv功能模块、iso8583功能模块、参数设置功能模块、密码键盘功能模块、打印功能模块、公共基础功能模块、系统功能模块、以及远程更新功能模块等库接口。
[0091]
应当理解,库接口(比如库文件)是基于各类型号的设备(比如销售终端)的功能数据生成的,可以适用于各类型号的设备。
[0092]
根据上述内容可知,将来自不同需求方的需求进行整合,然后合并同类项,将相同或类似的需求下降至中间层库实现,完成对上层应用个性化需求的整合和积淀。
[0093]
基于上述需求的整合和积淀以及统一的中间层库服务接口,一旦有新产品出现,只需在中间层库针对新产品进行各接口功能的调试,即可支持市场上已发布的上层应用,不需要再使用每个已发布的上层应用对此新产品进行重复适配,可大幅度减少各类上层应用开发的工期,能加快新产品导入速度。
[0094]
在一些实施例中,步骤b2(对指定功能数据进行功能模块封装,生成库接口)具体包括:对指定功能数据设置参数调节项并进行功能模块封装,生成库接口。
[0095]
具体而言,对所有的功能需求进行整合分析,将其中相同或类似的功能在各个涉及到的功能模块中实现,再使用不同的参数进行个性化区分。
[0096]
示例的,功能s是以字符串的形式获取当前键盘输入的信息,该功能是一个基础功能,每个上层应用都要用到;其中的字母输入,默认是通过【功能】键进行大小写及字母的选择切换,但有些需求是通过多次按同一个按键进行切换,而且按键间隔时间也略有不同。为此,对功能s对应的指定功能数据设置切换方式调节项和间隔时间调节项并进行功能模块封装,生成对应的库接口,如此,上层应用可根据自己的需要来设置不同的切换方式和间隔时间,实现使用不同的参数进行个性化区分。
[0097]
图6是本技术一实施例提供的数据处理方法的步骤b2的流程示意图。参考图6,在一些实施例中,步骤b2(对指定功能数据进行功能模块封装,生成库接口)包括步骤b21和步骤b22。
[0098]
步骤b21、通过宏定义多个指定功能数据的差异。
[0099]
对各个硬件平台不同型号的设备,不同设备对应的指定功能数据的差异使用宏进行区分,具体是通过宏定义多个指定功能数据的差异。
[0100]
采用宏控制的方式可以屏蔽不同机型之间的差异,这样,上层应用通过中间层库可以适用于更多的设备。
[0101]
步骤b22、针对宏定义的多个指定功能数据,生成对应的库接口。
[0102]
具体而言,通过宏定义多个指定功能数据之后,可以通过脚本工具分别编译生成对应的库接口。
[0103]
如此,通过宏来区分不同型号的终端设备,实现将上层应用的不同点下放到中间层库,上层应用则只暴露出一个接口,能减少重复的开发测试工作,从而缩短上层应用开发的周期。
[0104]
在实际使用时,不同型号的终端设备实现相同功能时需要调用的接口函数不同,由中间层库采用宏定义不同型号的终端设备之间的差异。
[0105]
以不同型号的终端设备实现功能l为例。功能l为:在终端设备的屏幕上画一条线。
[0106]
入参:起始像素点位(beginx,beginy)、结束像素点位(endx,endy)和指示正返显
标志位(color)。对应的代码为:int disp_drawline(int beginx,int beginy,int endx,int endy,char color)。
[0107]
对于a系列的终端设备而言,由于存在不支持彩屏的机型,上层应用调用接口函数scrplot;对于其他机型而言则只有彩屏,适用接口函数clcddrawpixel。
[0108]
接口函数scrplot对于正返显的要求是0表示白线,1表示黑线;接口函数clcddrawpixel则相反,0表示黑线,0xffffff表示白线。此外,终端设备本身不支持画斜线,需在接口函数中加以控制。
[0109]
下面是中间层库的接口函数的实现原型。
[0110]
int disp_drawline(int beginx,int beginy,int endx,int endy,char color)
[0111]
{
[0112]
//int iret;
[0113]
int tmp,i;
[0114]
int plotcolor;
[0115]
terminalinfo stinfo;
[0116]
memset((char*)&stinfo,0,sizeof(terminalinfo));
[0117]
sys_getterminalinfo(&stinfo);//获取设备信息
[0118]
if(beginx!=endx&&beginy!=endy){
[0119]
return disp_fail;//不支持画斜线
[0120]
}
[0121]
if(color==0){//着色黑点
[0122]
#ifdef sxx
[0123]
plotcolor=1;//系统api非0画点
[0124]
#else
[0125]
plotcolor=color_black;
[0126]
#endif
[0127]
}else{
[0128]
#ifdef sxx
[0129]
plotcolor=0;//0擦点
[0130]
#else
[0131]
plotcolor=color_white;
[0132]
#endif
[0133]
}
[0134]
if(beginx==endx){//x轴坐标相同,表示画竖线if(beginy》endy){//起始位置大于结束位置,则调转坐标
[0135]
tmp=beginy;
[0136]
beginy=endy;
[0137]
endy=tmp;
[0138]
}
[0139]
for(i=beginy;i《endy;i++){//开始画竖线
[0140]
#ifndef sxx
[0141]
clcddrawpixel(beginx,i,plotcolor);
[0142]
#else
[0143]
scrplot(beginx,i,plotcolor);
[0144]
#endif
[0145]
}
[0146]
}
[0147]
if(beginy==endy){//y轴坐标一致,表示为横线if(beginx》endy){//起始位置大于结束位置,则调转坐标
[0148]
tmp=beginx;
[0149]
beginx=beginy;
[0150]
beginy=tmp;
[0151]
}
[0152]
for(i=beginx;i《endx;i++){//开始画横线
[0153]
#ifndef sxx
[0154]
clcddrawpixel(i,beginy,plotcolor);
[0155]
#else
[0156]
scrplot(i,beginy,plotcolor);
[0157]
#endif
[0158]
}
[0159]
}
[0160]
return disp_success;
[0161]
}
[0162]
可见,采用宏控制的方式可以很好地屏蔽此类机型间的差异。
[0163]
图7是本技术又一实施例提供的数据处理方法的流程示意图。参考图7,在一些实施例中,生成库接口之后执行步骤c1。
[0164]
步骤c1、适配调试库接口,使得库接口适配设备。
[0165]
具体而言,在生成库接口(即功能模块)之后,对每个功能模块进行各设备的适配调试,确保每个功能模块的接口功能正常,使得功能模块能适配目标终端设备。
[0166]
目前的销售终端的应用开发平台中,上层应用直接调用各种机型的销售终端的底层api(application programming interface,应用程序编程接口),既要处理需求方的个性化需求,又要针对不同机型进行各种差异化处理,使得代码中大量宏定义和条件判断,导致代码可读性很差,进而导致移植很困难。此外,由于应用需求方众多,同时需求方又都需遵守行业规范,一旦行业规范发生变动,不同需求方极大可能会提出相同的改动需求,需要将每个应用代码跟标准版代码比对,然后将改动移植到需求方个性化应用中去,开发量巨大且工作任务重复,大量浪费开发力量。
[0167]
本技术的实施例提供的数据处理方法能有效解决上述技术问题:上层应用通过调用中间层库提供的接口实现其业务逻辑,中间层库通过调用各机型底层api实现其提供的接口功能;同时,针对不同机型,中间层库能兼容其功能差异,使得上层应用的通用性更强,
能减少上层应用为兼容机型而引入大量宏定义和条件判断的情况;将上层应用通用的一些功能及需求下放至中间层库实现,针对不同需求方的相同需求,只需在中间层库调整其功能,能大量减少总开发工作量,能避免应用开发过程中适配新机型以及不同项目但相同需求改动时的大量重复工作;一旦出现相同需求改动(比如行业规范发生变化)时,只需一位开发人员针对此需求在中间层库代码中做相应调整,然后将改动后的库接口分发给其他负责具体项目的开发人员即可完成大多数此类需求功能的开发。
[0168]
综上所述,本技术的实施例提供的数据处理方法能将上层应用重复需求的开发工作收拢归一,大量减少开发调试的工作量;能将适配新产品的工作收拢归一,能减少开发调试的工作量;能减少上层应用代码的冗余,能增加代码可读性和可移植性。
[0169]
图8为本技术一实施例提供的终端设备的结构示意图。如图8所示,该实施例的终端设备8包括:至少一个处理器80(图8中仅示出一个)处理器、存储器81以及存储在存储器81中并可在至少一个处理器80上运行的计算机程序82;处理器80执行计算机程序82时实现上述任意各方法实施例中的步骤。
[0170]
终端设备8可以是销售终端设备、桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。该终端设备可包括,但不仅限于,处理器80和存储器81。本领域技术人员可以理解,图8仅仅是终端设备的举例,并不构成对终端设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如还可以包括输入输出设备、网络接入设备、总线等。
[0171]
处理器80可以是中央处理单元(central processing unit,cpu),该处理器80还可以是其他通用处理器、数字信号处理器(digital signal processor,dsp)、专用集成电路(application specific integrated circuit,asic)、现成可编程门阵列(field-programmable gate array,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
[0172]
存储器81在一些实施例中可以是终端设备8的内部存储单元,例如终端设备的硬盘或内存。存储器81在另一些实施例中也可以是终端设备的外部存储设备,例如终端设备上配备的插接式硬盘,智能存储卡(smart media card,smc),安全数字(secure digital,sd)卡,闪存卡(flash card)等。进一步地,存储器81还可以既包括终端设备的内部存储单元也包括外部存储设备。存储器81用于存储操作系统、应用程序、引导装载程序(boot loader)、数据以及其他程序等,例如计算机程序的程序代码等。存储器81还可以用于暂时地存储已经输出或者将要输出的数据。
[0173]
示例性的,计算机程序82可以被分割成一个或多个模块/单元,一个或者多个模块/单元被存储在存储器81中,并由处理器80执行,以完成本技术。一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述计算机程序82在终端设备8中的执行过程。
[0174]
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本技术实施例的实施过程构成任何限定。
[0175]
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功
能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本技术的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
[0176]
前述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术实现上述实施例方法中的全部或部分流程,可以通过计算机程序来指令相关的硬件来完成,该计算机程序可存储于计算机可读存储介质中;该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,计算机程序包括计算机程序代码,计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。计算机可读介质包括:能够将计算机程序代码携带到装置/终端设备的任何实体或装置、记录介质、计算机存储器、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、电载波信号、电信信号以及软件分发介质。例如u盘、移动硬盘、磁碟或者光盘等。在某些司法管辖区,根据立法和专利实践,计算机可读介质不可以是电载波信号和电信信号。
[0177]
本技术的实施例还提供一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,该计算机程序被处理器执行时实现可实现上述各个方法实施例中的步骤。
[0178]
本技术的实施例提供一种计算机程序产品,当计算机程序产品在终端设备比如销售终端设备上运行时,使得销售终端设备可实现上述各个方法实施例中的步骤。
[0179]
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
[0180]
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本技术的范围。
[0181]
在本技术所提供的实施例中,应该理解到,所揭露的装置/设备和方法,可以通过其它的方式实现。例如,以上所描述的装置/设备实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
[0182]
前述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
[0183]
以上所述实施例仅用以说明本技术的技术方案,而非对其限制;尽管参照前述实
施例对本技术进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本技术各实施例技术方案的精神和范围,均应包含在本技术的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1