识别码解析方法、装置、电子设备及计算机可读介质与流程

文档序号:33015299发布日期:2023-01-20 15:25阅读:27来源:国知局
识别码解析方法、装置、电子设备及计算机可读介质与流程

1.本技术涉及终端技术领域,更具体地,涉及一种识别码解析方法、装置、电子设备及计算机可读介质。


背景技术:

2.随着互联网的发展和移动通信网络的发展,同时也伴随着终端的处理能力和存储能力的迅猛发展,海量的应用程序得到了迅速传播和使用。条形码、二维码、序列码等各种识别码越来越融入人们的生活。在实际使用中,由于各个平台之间的限制,用户必须使用对应平台的应用app扫描某个识别码,才能执行该识别码对应的操作。


技术实现要素:

3.本技术提出了一种识别码解析方法、装置、电子设备及计算机可读介质,以改善上述缺陷。
4.第一方面,本技术实施例提供了一种识别码解析方法,所述方法包括:扫描识别码得到所述识别码对应的字符串信息;若确定支持所述字符串信息的解析,则解析所述字符串信息以得到解析结果;基于所述解析结果确定所述识别码对应的应用平台;调用所述应用平台执行所述识别码对应的预设操作。
5.第二方面,本技术实施例还提供了一种识别码解析装置,所述装置包括:识别单元、解析单元、确定单元和调用单元。识别单元,用于扫描识别码得到所述识别码对应的字符串信息。解析单元,用于若确定支持所述字符串信息的解析,则解析所述字符串信息以得到解析结果。确定单元,用于基于所述解析结果确定所述识别码对应的应用平台。调用单元,用于调用所述应用平台执行所述识别码对应的预设操作。
6.第三方面,本技术实施例还提供了一种电子设备,包括:一个或多个处理器;存储器;一个或多个应用程序;其中,所述的一个或多个应用程序被存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个应用程序配置用于执行上述方法。
7.第四方面,本技术实施例还提供了一种计算机可读介质,所述可读介质存储有处理器可执行的程序代码,所述程序代码被所述处理器执行时使所述处理器执行上述方法。
8.本技术提供的识别码解析方法、装置、电子设备及计算机可读介质,扫描识别码得到所述识别码对应的字符串信息;若确定支持所述字符串信息的解析,则解析所述字符串信息以得到解析结果;基于所述解析结果确定所述识别码对应的应用平台;调用所述应用平台执行所述识别码对应的预设操作。因此,本技术通过对识别码的解析能够确定该识别码对应的应用平台,且能够调用对应的应用平台执行该识别码对应的预设操作,使得本技术能够识别不同平台的识别码,且能调用应用平台执行该识别码对应的预设操作。
9.本技术实施例的其他特征和优点将在随后的说明书阐述,并且,部分地从说明书中变得显而易见,或者通过实施本技术实施例而了解。本技术实施例的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。
附图说明
10.为了更清楚地说明本技术实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
11.图1示出了本技术一实施例提供的支付界面的示意图;
12.图2示出了本技术一实施例提供的各个应用平台扫描二维码的示意图;
13.图3示出了本技术一实施例提供的智能扫码客户端扫描二维码的示意图;
14.图4示出了本技术一实施例提供的识别码解析方法的方法流程图;
15.图5示出了本技术另一实施例提供的识别码解析方法的方法流程图;
16.图6示出了本技术一实施例提供的第一映射表和第二映射表的存储方式的示意图;
17.图7示出了本技术一实施例提供的缓存机制的示意图;
18.图8示出了本技术一实施例提供的两种不同的匹配规则的示意图;
19.图9示出了本技术又一实施例提供的识别码解析方法的方法流程图;
20.图10示出了本技术一实施例提供的识别码解析装置的模块框图;
21.图11示出了本技术一实施例提供的电子设备的结构框图;
22.图12示出了本技术一实施例提供的计算机可读介质的结构框图;
23.图13示出了本技术一实施例提供的计算机程序产品的结构框图。
具体实施方式
24.为了使本技术领域的人员更好地理解本技术方案,下面将结合本技术实施例中附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本技术实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本技术的实施例的详细描述并非旨在限制要求保护的本技术的范围,而是仅仅表示本技术的选定实施例。基于本技术的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本技术保护的范围。
25.应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本技术的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
26.随着互联网的发展和移动通信网络的发展,同时也伴随着终端的处理能力和存储能力的迅猛发展,海量的应用程序得到了迅速传播和使用。条形码、二维码、序列码等各种识别码越来越融入人们的生活。人们出门使用共享单车、绿码出行、购买商品扫描商家收款码付款、扫描别人分享的信息等都会用到二维码。
27.具体地,二维码的扫描的过程为,智能终端通过摄像头扫描二维码,解析得到该二维码的二维码信息,该二维码信息通常包括应用标识和文本,通过解析该应用标识能够确定该二维码对应的应用程序。如图1所示,该支付界面为智能终端扫描支付二维码之后,通过解析该支付二维码的二维码信息确定该二维码对应的应用程序为指定支付程序,然后,
支付程序打开该支付界面,并且在该支付界面所显示的文本内容中的至少部分内容是基于该二维码信息中的文本而生成的,例如,该支付二维码的二维码信息包括“http://abc.com”,指定支付程序扫描该二维码信息,通过识别到该abc.com,能够确定该abc.com对应的是指定支付程序,然后,指定支付程序打开图1所示的支付界面,从而用户可以在该支付界面上完成支付操作。
28.然而,发明人在研究中发现,在实际使用中,如图2所示,由于各个平台之间的限制,用户必须使用对应平台的应用app扫描某个识别码,才能执行该识别码对应的操作。例如,a平台提供的共享单车,必须使用a平台的应用程序去扫描该共享单车上的二维码才能够显示该共享单车的解锁界面,从而通过解锁界面将该共享单车解锁并使用该共享单车,而如果使用b平台的应用程序扫描该a平台对应的二维码,无法打开该a平台的共享单车解锁界面,例如,会显示一段文本“请使用a平台扫描”。所以,由于各个平台之间的隔离,即用户必须使用对应平台的应用app扫描该二维码,才能使用平台的能力,导致用户使用体验过差。
29.因此,本技术为了解决上述缺陷,提供了一种识别码解析方法、装置、电子设备及计算机可读介质,如图3所示,本技术的智能扫码客户端通过对识别码的解析能够确定该识别码对应的应用平台,且能够调用对应的应用平台执行该识别码对应的预设操作,智能扫码客户端作为识别码与应用平台之间的桥梁,使得智能扫码客户端能够识别不同平台的识别码,且能调用应用平台执行该识别码对应的预设操作。
30.请参阅图4,图4示出了本技术实施例提供的一种识别码解析方法,应用于智能扫码客户端,该方法包括:s401至s404。
31.s401:扫描识别码得到所述识别码对应的字符串信息。
32.于本技术实施例中,识别码可以为二维码(如qr码)、条形码等。以qr(quick response,快速响应码)为例,其可以存储丰富的信息,可以对文字、网址和其他类型的数据进行加密。作为一维码也就是条形码,条形码实际上就是一串数字,它上面存储了商品的序列号,二维码其实与条形码类似,只不过它存储的不知是数字还可以是任何的字符串。一个二维码实际上就是一个字符串。智能扫码客户端调用电子设备的摄像头扫描该识别码,就能够解析得到该识别码的字符串信息。
33.s402:若确定所述智能扫码客户端支持所述字符串信息的解析,则解析所述字符串信息以得到解析结果。
34.可以理解的是,识别码是一种通过加密的形成存储有识别码信息的图形,例如,该识别码为二维码,则该识别码能够存储文本信息和标识信息中的至少一种,即识别码信息包括文本信息和标识信息中的至少一种,其中,该标识信息可以是该识别码对应的统一资源标识符(uniform resource identifie,uri)或统一资源定位符(uniform resource locator,url)。具体地,不论是统一资源标识符还是统一资源定位符都包含有能够表征应用平台的身份的信息,例如,abc表示应用程序a,egf表示应用程序b。而统一资源标识符可以理解为统一资源定位符的上位概念,具体地,二者的区别在于,uri表示请求访问的服务器的路径,而url同时说明要如何访问这个资源,通常情况下,如果以http协议访问该服务器,则在uri之前添加协议名称就可以变成url,例如,uri为abc.com,则url为http://abc.com,当然,也可以换一个协议,比如,ftp://abc.com,这依然是一个url。所以,一个url
中包含有uri,而uri又能够表征出该url所要访问的服务器对应的应用平台的身份,例如,abc.com中的abc可以表征该url对应的服务器为应用程序a的服务器,则自然能够确定该识别码对应的应用平台为应用程序a。
35.于本技术实施例中,确定智能扫码客户端是否支持所述字符串信息的解析的实施方式可以是,尝试解析该字符串信息,如果能够成功得到解析结果,就表示该智能扫码客户端支持所述字符串信息的解析,如果无法成功得到解析结果,例如,解析后得到的是乱码,则表示该智能扫码客户端不支持所述字符串信息的解析。另外,还可以通过确定该二维码是否为私有码的方式,确定智能扫码客户端是否支持所述字符串信息的解析。具体地,私有码是指未公开解码方式的识别码,如果确定该识别码为私有码,则确定智能扫码客户端不支持所述字符串信息的解析,否则,确定该智能扫码客户端支持所述字符串信息的解析。具体地,私有码的实施方式在后续实施例中介绍。
36.因此,如果确定智能扫码客户端支持所述字符串信息的解析,则表示智能扫码客户端知晓该识别码的字符串信息的编码方式,就能够通过该编码方式对应的解码策略将该字符串信息解码以得到解析结果。具体地,对于一些应用平台来说,应用平台生成的有些二维码的编码规则会共享给智能扫码客户端,从而,智能扫码客户端就支持该二维码的字符串的解析,而对于有些二维码,该二维码的应用平台并未将该二维码的编码规则共享给智能扫码客户端,则该智能扫码客户端就不支持该二维码的字符串的解析。
37.s403:基于所述解析结果确定所述识别码对应的应用平台。
38.在成功得到解析结果之后,该解析结果内可以包括上述的文本信息和标识信息中的至少一种。基于前述分析可知,该标识信息可以表征该识别码对应的应用平台的身份,因此,通过该标识信息能够确定该识别码对应的应用平台,具体地,在后续实施例中阐述。另外,还可以通过文本信息确定识别码对应的应用平台。具体地,该文本信息可以是指示该识别码对应的应用平台执行预设操作时的信息,具体地,该预设操作可以包括显示该识别码对应的指定界面,也可以是下载某个内容,该下载的过程可以在前台运行也可以在后台运行,当然,也可以是其他的操作,在此不做限定。具体地,该文本信息可以是在识别码对应的应用平台显示指定界面的时候,在该执行界面上显示的内容,而通过分析该文本信息,检测是否能够提取出与该识别码对应的应用平台的身份标识匹配的分词,例如,文本信息为“欢迎使用应用a”,则检测该文本信息,检测到该文本信息内存在“应用a”,而该“应用a”为应用程序a的身份标识,从而就能够确定该识别码对应的应用平台为应用程序a。
39.s404:调用所述应用平台执行所述识别码对应的预设操作。
40.在智能扫码客户端确定该识别码对应的应用平台(命名为目标应用)之后,将该解析结果发送至该目标应用,该解析结果内包括url或uri,则该目标应用访问该识别码所存储的网络链接地址,访问该网络链接地址对应的服务器以得到与该预设操作相关的数据,以便执行该预设操作。例如,该识别码对应的预设操作为启动指定界面,则与该预设操作相关的数据可以是界面特征数据,该界面特征数据为目标应用显示该识别码对应的界面(即指定界面)的数据,以便应用程序基于该界面特征数据渲染并显示该界面,例如,该界面特征数据则可以为启动待启动界面时所需传递的数据,比如,可以包括待启动界面的界面特征标识、启动方式、需要传入的参数等。
41.需要说明的是,调用所述应用平台执行所述识别码对应的预设操作的实施方式可
以是,电子设备内还设置有路由客户端,该路由客户端与智能扫码客户端连接,二者能够互相传输数据。智能扫码客户端在确定识别码对应的应用平台之后,发送第一信息至路由客户端,该第一信息用于告知该路由客户端,识别码对应的应用平台的标识,具体地,该第一信息可以是解析对象,该解析对象表征智能扫码客户端成功解析该字符串信息并且确定了该识别码对应的应用平台,路由客户端获取到该第一信息之后,基于该第一信息调用告知对应的应用平台基于该识别码的字符串信息的解析结果执行预设操作。
42.因此,本技术的智能扫码客户端通过对识别码的解析能够确定该识别码对应的应用平台,且能够调用对应的应用平台执行该识别码对应的预设操作,智能扫码客户端作为识别码与应用平台之间的桥梁,使得智能扫码客户端能够识别不同平台的识别码,且能调用应用平台执行该识别码对应的预设操作,从而使得智能扫码客户端可以识别多个应用平台的二维码,并且控制该识别码对应的应用平台执行该识别码对应的操作。
43.请参阅图5,图5示出了本技术实施例提供的一种识别码解析方法,应用于智能扫码客户端,该方法包括:s501至s504。
44.s501:扫描识别码得到所述识别码对应的字符串信息。
45.s502:若确定所述智能扫码客户端支持所述字符串信息的解析,则解析所述字符串信息以得到解析结果。
46.作为一种实施方式,解析结果内包括应用标识,该应用标识可以是前述的uri或url,具体地,该解析结果内可以包括url,该识别码对应的应用平台通过访问该url可以获取到该预设操作相关的数据,具体地,可以参考前述实施例,在此不再赘述。
47.示例性地,假设识别码所包含的信息包括url地址,例如,http://www.abc.com,则在解析该识别码对应的字符串信息之后,得到的解析结果内包括该url,即http://www.abc.com,然后,则从该url中提取出uri,即www.abc.com,作为应用标识。当然,也可以通过其他的方式得到应用标识,例如,前述的通过解析结果内的文本信息提取到应用标识。
48.s503:获取预设的第一映射表,所述第一映射表包括多个应用平台的标识和每个标识对应的至少一个参考标识。
49.s504:在所述第一映射表的所有参考标识中,查找是否存在与所述应用标识匹配的参考标识。
50.作为一种实施方式,可以预先设置第一映射表,该第一映射表包括多个应用平台的标识和每个标识对应的至少一个参考标识。如下表1所示:
51.表1
52.应用平台的标识参考标识应用awww.abc.com;abc.com;应用bwww.vx.com;vx.com;应用cwww.md.com;md.com;
53.然后,将解析结果内的uri作为应用标识与该表1所示的第一映射表内的各个参考标识匹配,例如,使用正则匹配查找与应用标识匹配的参考标识,例如,uri为www.abc.com,与该uri匹配的参考标识为应用a的参考标识。
54.需要说明的是,解析结果内也可以包括url,则可以直接把url作为应用标识,则上述表1变为:
55.表2
56.应用平台的标识参考标识应用a(http:|https:)//.www.abc.com/;(http:|https:)//.abc.com/;应用b(http:|https:)//.www.vx.com/;(http:|https:)//.vx.com/;应用c(http:|https:)//.www.md.com/;(http:|https:)//.md.com/;
57.可以理解的是,(http:|https:)//.www.abc.com/的含义是,该参考标识同时包括http://.www.abc.com/和https://.www.abc.com/两种标识,即应用标识与http://.www.abc.com/和https://.www.abc.com/的任意一个匹配,都可以判定为该应用标识与该参考标识匹配,其他的参考标识同理。因此,在解析该字符串信息得到url之后,将该url作为应用标识,将该url与上述表2所示的第一映射表中的各个参考标识匹配。
58.需要说明的是,上述表1和表2所示的第一映射表仅仅是举例说明各个应用平台对应的参考标识,而不作为第一映射表的限定。
59.作为一种实施方式,用户还可以对该第一映射表更新,以便及时更新已存在的参考标识或者添加新的参考标识,具体地,用户输入更新请求,智能扫码客户端检测到该更新请求,该更新请求包括待更新的预设标识,智能扫码客户端响应该更新请求,在所述第一映射表中添加所述预设标识或将所述第一映射表中的至少一个参考标识修改为预设标识。具体地,若该更新请求是为了添加一个新的参考标识,则该更新请求包括预设标识和该预设标识对应的应用平台的标识,智能扫码客户端在第一映射表中查找到该更新请求内的应用平台的标识所对应的标识,在该标识所对应的参考标识的集合中添加该预设标识。另外,若该更新请求是为了对某个已经存在的参考标识更新,则该更新请求包括预设标识和该预设标识对应的应用平台的标识以及对应的目标参考标识,智能扫码客户端在第一映射表中查找到该更新请求内的应用平台的标识所对应的标识以及该标识对应的目标参考标识,将该目标参考标识更新为预设标识。
60.s505:将匹配的参考标识对应的应用平台作为所述识别码对应的应用平台。
61.如果能够在第一映射表内,查找到与解析结果内的应用标识匹配的参考标识,则将该匹配的参考标识对应的应用平台作为与识别码对应的应用平台,即执行s505。
62.s506:基于所述应用标识发起网络请求。
63.如果不能够在第一映射表内,查找到与解析结果内的应用标识匹配的参考标识,则表示无法通过第一映射表的方式确定该识别码对应的应用平台,也就是说,有可能该解析结果内的url并非是各个应用平台对应的常规的url或者说,该解析结果内的url与各个应用平台对应的常规的url不匹配。然而,考虑到如果该识别码能够被正常访问,则理论上,能够通过该识别码访问到该识别码对应的应用平台的服务器,从而通过该服务器返回的响应内容就可以确定该服务器所对应的应用平台。
64.示例性地,假设解析结果内的uri为www.123.com,该www.123.com与前述的第一映射表内的参考标识均不同,从而可以判定在所述第一映射表的所有参考标识中,未查找到与所述应用标识匹配的参考标识,则基于该www.123.com发起http请求,例如,访问http://www.123.com,然后等待该网络请求对应的响应内容。
65.s507:获取所述网络请求对应的指定服务器返回的响应内容。
66.作为一种实施方式,该网络请求用于访问一个服务器,将该服务器命名为指定服
务器,示例性地,该识别码对应的应用平台通过扫描该识别码,解析该识别码内的url地址,发起一个网络请求,就能够从该网络请求对应的服务器获取到指定参数,应用平台基于给指定参数执行预设操作。例如,假设该预设操作为显示一个界面,则应用平台通过扫描识别码得到的url地址,访问该指定服务器以获取到界面特征参数,从而显示该界面。通常,基于识别码的url生成的网络请求对应的服务器,为该识别码对应的应用平台的服务器,例如,该识别码对应的应用平台为应用a,则该识别码内的url用于访问应用a对应的服务器。
67.示例性地,该响应内容可以是该网络请求对应的response body,该response body通常会包括指定服务器返回的网络地址,该网络地址的作用是告知网络请求的发送端通过该网络地址可以获取到该相应的数据,例如,该数据可以是界面特征数据,即用于界面显示的数据,因此,该网络地址内包含指定服务器的标识,而指定服务器的标识往往能够表征该指定服务器对应的应用平台的标识,即服务器的标识与应用平台的标识存在一定的关联性,该关联性可以是名称的关联性或者语义的关联性,所以,在获取到该响应内容之后,可以执行s508,通过该响应内容确定该应用标识对应的预设应用平台。
68.s508:基于所述响应内容确定所述应用标识对应的预设应用平台。
69.作为一种实施方式,可以预先设置第二映射表,第二映射表包括多个应用平台的标识和每个标识对应的至少一个参考信息,其中,该参考信息可以是预先统计的各个应用平台的网络请求返回的响应内容中曾出现过的网络地址中的能够表征应用平台的标识的信息,具体地,以应用a为例,统计在一定时间长度内,应用a发送的访问应用a的服务器的网络请求返回的响应内容,并且统计该响应内容中包含的各个网络地址,从而得到该应用a对应的参考信息。在所述第二映射表的所有参考信息中,查找是否存在与所述网络地址匹配的参考信息,若存在,将匹配的所述参考信息对应的应用平台作为应用标识对应的预设应用平台,从而就可以找到与解析结果中的url或uri对应的应用平台,即预设应用平台。
70.另外,考虑到参考信息太多的时候,可能会造成数据的冗余,所以,该参考信息可以是应用平台对应的服务器响应网络请求时返回的网络地址的域名,即该参考信息为参考域名,然后,在所述第二映射表的所有参考信息中,查找是否存在与所述网络地址匹配的参考信息的实施方式为,提取所述网络地址的域名;在所述第二映射表的所有参考信息中,查找是否存在与所述域名匹配的参考信息。
71.需要说明的是,在智能扫码客户端基于该识别码内的url地址发起网络请求之后,智能扫码客户端可以通过该网络请求访问指定服务器,指定服务器返回的响应内容内的网络地址可以是该url地址重定向的dns服务的地址。例如,假设url地址为http://www.123.com,通过前述的第一映射表可以知道,智能扫码客户端无法在第一映射表内查找到与该url地址匹配的参考标识,所以无法识别出该url地址对应的应用平台,然后,发送该http://www.123.com,通过网络地址的重定向,智能扫码客户端访问到指定服务器,该指定服务器的网络地址为http://g.vxin.com,所以在指定服务器返回的响应内容中包括这个域名,例如,返回的网络地址为http://g.vxin.com/123/as25,通过该http://g.vxin.com/123/as25可以获取到数据a,因此,即使通过http://www.123.com无法确定应用平台,但是,通过网络地址http://g.vxin.com/123/as25,可以确定出应用平台,例如,所确定的应用平台为应用b。因此,即使识别码内的url地址未采用第一映射表内的参考标识的方式,只要听过该url发起的http请求能够成功访问到服务器并能够获取到该服务器返回的响应内容,
就能够基于该响应内容中的网络地址确定该url对应的应用平台。
72.作为另一种实施方式,考虑到服务器针对网络请求返回的响应内容中,可能包括一些文本内容,该文本内容可以是该网络请求所请求访问的网页的操作说明,例如,该操作说明用于展示针对该网络的参考方式,例如,按下某某快捷键可以进入某某阅读模式等,而该操作说明中有可能包括应用平台的标识,例如,该操作说明为“欢迎使用应用a,按下某某快捷键可以进入某某阅读模式”,所以,在响应内容中查找文本内容,并且在文本内容中查找应用标识的关键词,基于查找到的关键词确定该应用标识对应的预设应用平台。
73.作为又一种实施方式,响应内容用于指示所述网络请求的发送端使用指定应用平台访问所述网络地址。具体地,智能客户端基于识别码内的url地址发起网络请求,该网络请求的服务器能够检测到该网络请求的发送端是否为该服务器对应的应用平台。例如,该服务器为应用a的服务器,如果服务器判断该网络请求的发送端不是应用a,则在返回响应内容的时候,会在响应内容中写入指定文本,该指定文本用于指示所述网络请求的发送端使用指定应用平台访问所述网络地址,例如,该指定文本为“请使用应用a访问网络地址http://g.vxin.com/123/as25”,因此,解析该指定文本,查找该指定文本中属于应用标识的内容,将该内容对应的应用作为应用标识对应的预设应用平台,即将指定应用平台作为所述应用标识对应的预设应用平台。
74.s509:将所述预设应用平台作为所述识别码对应的应用平台。
75.本技术实施例能够在通过第一映射表无法确定识别码对应的应用平台的时候,通过基于解析该识别码得到的url地址发起网络请求,基于该网络请求的响应内容确定识别码对应的应用平。
76.s510:调用所述应用平台执行所述识别码对应的预设操作。
77.另外,考虑到第一映射表和第二映射表的数据比较庞大,放在本地的话,可能导致本地的存储压力较大,因此,可以将第一映射表和第二映射表存储在云端,如图6所示,原始数据匹配规则为第一映射表,因为是适应解析结果内的应用标识匹配得到对应的应用平台,可以看作是对原始数据的匹配,因此,可以命名为原始数据匹配规则。也就是说,将在所述第一映射表的所有参考标识中查找是否存在与所述应用标识匹配的参考标识的方式命名为原始数据匹配规则匹配,将在所述第二映射表的所有参考信息中查找是否存在与所述网络地址匹配的参考信息的方式命名为请求内容匹配规则匹配。http请求内容匹配规则是第二映射表,因为是对网络请求的响应内容的匹配,所以命名为http请求内容匹配规则。需要说明的是,本地数据库中的原始数据匹配规则和http请求内容匹配规则为数据库结构,即本地所存储的时候各个应用平台的标识与参考标识或参考信息的对应关系,而参考标识和参考信息的实际内容在云端存储。
78.再者,考虑到当原始数据匹配规则失败后的超链接会执行一次http请求内容匹配一次,当用户连续多次扫描同一个二维码时会多次重复发起http请求,导致时间和资源的浪费。因此,如图7所示,可以在基于url的http请求的响应内容确定该url对应的预设应用平台之后,可以将该url与预设应用平台的标识的对应关系存储在缓存内,且存储的试时长为预设时间段,具体地,将所述应用标识与所述预设应用平台的对应关系存储预设时间段。
79.因此,在该预设时间段内,智能扫码客户端再次扫描该识别码之后,如果在第一映射表内无法确定该识别码的url对应的应用平台的时候,可以先在缓存内确定是否存在该
url对应的应用平台,如果存在,则将所述应用平台标识对应的应用平台作为所述识别码对应的应用平台。具体地,如果在所述第一映射表的所有参考标识中,查找未存在与所述应用标识匹配的参考标识,确定是否存储有所述应用标识对应的应用平台标识;若存储有所述应用标识对应的应用平台标识,将所述应用平台标识对应的应用平台作为所述识别码对应的应用平台;若未存储有所述应用标识对应的应用平台标识,基于所述应用标识发起网络请求。
80.需要说明的是,在缓存内查找是否存储有所述应用标识对应的应用平台标识的实施方式,除了采用上述的方式,还可以是在执行原始数据匹配规则匹配之前,即在解析所述字符串信息以得到解析结果之后,该解析结果内包括应用标识,确定是否存储有所述应用标识对应的应用平台标识;若存储有所述应用标识对应的应用平台标识,将所述应用平台标识对应的应用平台作为所述识别码对应的应用平台;若未存储有所述应用标识对应的应用平台标识,获取预设的第一映射表,所述第一映射表包括多个应用平台的标识和每个标识对应的至少一个参考标识;在所述第一映射表的所有参考标识中,查找是否存在与所述应用标识匹配的参考标识;若存在,将匹配的参考标识对应的应用平台作为所述识别码对应的应用平台。具体地,在此不做限定。
81.如图8所示,本技术实施例提供了两种不同的不同方式,即原始数据匹配规则匹配以及请求内容匹配规则匹配,其中,原始数据匹配规则匹配以及请求内容匹配规则匹配各自具有的实施方式可以参考前述实施例。于本技术实施例中,针对原始数据匹配规则匹配以及请求内容匹配规则匹配的执行顺序可以不做限制,具体地,可以是先执行原始数据匹配规则匹配,若原始数据匹配规则匹配无法成功匹配,则再执行请求内容匹配规则匹配,当然,也可以是先执行请求内容匹配规则匹配,若请求内容匹配规则无法成功匹配,则再执行原始数据匹配规则匹配,具体的执行顺序在此不做限定。
82.因此,本技术实施例通过原始数据匹配规则匹配以及请求内容匹配规则匹配的方式,能够更加准确的确定识别码对应的应用平台。
83.请参阅图9,图9示出了本技术实施例提供的一种识别码解析方法,应用于智能扫码客户端,该方法包括:s901至s909。
84.s901:扫描识别码得到所述识别码对应的字符串信息。
85.s902:基于所述字符串信息确定所述识别码是否为私有码。
86.s903:基于所述指定字符串确定所述识别码对应的应用平台。
87.需要说明的是,该私有码是指识别码的解码规则未公开,即智能扫码客户端无法获知该私有码的解码规则,从而无法成功解析该私有码。通常,扫描私有码得到的字符串信息中包含指定字符串,该私有码对应的应用平台通过该指定字符串能够知晓该识别码为私有码,并且基于该指定字符串能够确定解码规则,而私有码对应的应用平台之外的应用,即不知晓私有码的解码规则的应用,通过识别到该指定字符串能够确定该识别码为私有码。因此,智能扫码客户端检测该识别码的字符串信息中是否包括指定字符串,若所述字符串信息中包括指定字符串,则确定所述识别码为私有码;若所述字符串信息中不包括指定字符串,则确定所述识别码非私有码。如果确定识别码为私有码,则执行s903,如果确定识别码不是私有码,则执行s905,即执行前述的解锁字符串信息并确定识别码对应的应用平台的过程。
88.需要说明的是,该指定字符串通常包括该私有码对应的应用平台的标识的信息,例如,私有码的字符串信息中包括的指定字符串信息为,abc private,则通过该abc private可以明确知晓该识别码为私有码,则通过检测到“abc”可以判定该识别码对应的应用平台为应用a。
89.s904:控制所述应用平台识别所述识别码,以执行所述识别码对应的预设操作。
90.针对私有码,智能扫码客户端无法解析该私有码,所以,需要基于所述指定字符串确定所述识别码对应的应用平台,然后控制应用平台识别所述识别码。具体地,可以智能扫码客户端在电子设备的屏幕上显示第一提示信息,该第一提示信息用于提示用户使用该识别码对应的应用平台扫描该识别码,例如,假设该私有码的应用平台是应用a,则在屏幕上显示“请使用应用a扫描再次扫码”。当然,还可以是直接在电子设备的前台运行应用a,并打开该应用a的扫码界面,然后,在该扫码界面上显示第二提示信息,该第二提示信息用于提示用户扫码该识别码。在应用a成功扫描该识别码之后,可以执行该识别码对应的预设操作。
91.s905:解析所述字符串信息。
92.s906:判断是否成功获取到解析结果。
93.s907:基于所述解析结果确定所述识别码对应的应用平台。
94.s908:调用所述应用平台执行所述识别码对应的预设操作。
95.s909:输出文本对象。
96.如果在智能扫码客户端无法成功解析该字符串信息得到解析结果的情况下,可以输出文本对象,该文本对象用于指示识别码无法被成功识别。作为另一种实施方式,该成功获取到解析结果是指,能够在识别码的字符串信息中成功解析得到应用标识,具体地,该应用标识为uri或url,另外,该字符串信息内还包括文本信息,该文本信息的描述可以参考前述实施例,则输出文本对象的实施方式为显示该文本信息。具体地,针对一些识别码,该识别码不包括uri或url,但是包括文本信息,则表示该识别码是一个纯文本的识别码,则在扫描该识别码之后,将文本信息作为文本对象显示即可。
97.因此,本技术实施例的智能扫码客户端在扫描识别码之后,如果确定该识别码为私有码,则通知该识别码的应用平台再次扫描该识别码,如果该识别码为非私有码,且能够成功解析得到uri或url,则基于该uri或url确定该识别码对应的应用平台,并通知该应用平台执行该识别码对应的操作,如果无法成功解析到该uri或url,而仅得到文本信息,则表征该识别码的内容为纯文本内容,将该文本信息显示。
98.请参阅图10,其示出了本技术实施例提供的一种识别码解析装置1000的结构框图,该装置可以包括:识别单元1001、解析单元1002、确定单元1003和调用单元1004。
99.识别单元1001,用于扫描识别码得到所述识别码对应的字符串信息。
100.进一步的,识别单元1001还用于基于所述字符串信息确定所述识别码是否为私有码;若为私有码,则确定不支持所述字符串信息的解析;若非私有码,则确定支持所述字符串信息的解析。
101.进一步的,识别单元1001还用于若所述字符串信息中包括指定字符串,则确定所述识别码为私有码;若所述字符串信息中不包括指定字符串,则确定所述识别码非私有码。
102.进一步的,识别单元1001还用于基于所述指定字符串确定所述识别码对应的应用
平台;控制所述应用平台识别所述识别码,以执行所述识别码对应的预设操作。
103.解析单元1002,用于若支持所述字符串信息的解析,则解析所述字符串信息以得到解析结果。
104.确定单元1003,用于基于所述解析结果确定所述识别码对应的应用平台。
105.进一步的,解析结果包括应用标识,确定单元1003还用于获取预设的第一映射表,所述第一映射表包括多个应用平台的标识和每个标识对应的至少一个参考标识;在所述第一映射表的所有参考标识中,查找是否存在与所述应用标识匹配的参考标识;若存在,将匹配的参考标识对应的应用平台作为所述识别码对应的应用平台。
106.进一步的,所述应用标识为url地址,确定单元1003还用于若不存在,基于所述应用标识发起网络请求;获取所述网络请求对应的服务器返回的响应内容,其中,所述响应内容包括所述服务器返回的网络地址;基于所述响应内容确定所述应用标识对应的预设应用平台;将所述预设应用平台作为所述识别码对应的应用平台。
107.进一步的,确定单元1003还用于获取预设的第二映射表,所述第二映射表包括多个应用平台的标识和每个标识对应的至少一个参考信息;在所述第二映射表的所有参考信息中,查找是否存在与所述网络地址匹配的参考信息;若存在,将匹配的所述参考信息对应的应用平台作为应用标识对应的预设应用平台。
108.进一步的,确定单元1003还用于提取所述网络地址的域名;在所述第二映射表的所有参考信息中,查找是否存在与所述域名匹配的参考信息。
109.进一步的,响应内容用于指示所述网络请求的发送端使用指定应用平台访问所述网络地址,确定单元1003还用于将所述指定应用平台作为所述应用标识对应的预设应用平台。
110.进一步的,确定单元1003还用于若不存在,确定是否存储有所述应用标识对应的应用平台标识;若存储有所述应用标识对应的应用平台标识,将所述应用平台标识对应的应用平台作为所述识别码对应的应用平台;若未存储有所述应用标识对应的应用平台标识,基于所述应用标识发起网络请求。
111.进一步的,确定单元1003还用于将所述应用标识与所述预设应用平台的对应关系存储预设时间段。
112.进一步的,确定单元1003还用于检测到更新请求,所述更新请求包括待更新的预设标识;响应于所述更新请求,在所述第一映射表中添加所述预设标识或将所述第一映射表中的至少一个参考标识修改为预设标识。
113.调用单元1004,用于调用所述应用平台执行所述识别码对应的预设操作。
114.所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述装置和模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
115.在本技术所提供的几个实施例中,模块相互之间的耦合可以是电性,机械或其它形式的耦合。
116.另外,在本技术各个实施例中的各功能模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。
117.请参考图11,其示出了本技术实施例提供的一种电子设备的结构框图。该电子设
备100可以是智能手机、平板电脑、电子书等能够运行应用程序的电子设备。本技术中的电子设备100可以包括一个或多个如下部件:处理器110、存储器120、以及一个或多个应用程序,其中一个或多个应用程序可以被存储在存储器120中并被配置为由一个或多个处理器110执行,一个或多个程序配置用于执行如前述方法实施例所描述的方法。
118.处理器110可以包括一个或者多个处理核。处理器110利用各种接口和线路连接整个电子设备100内的各个部分,通过运行或执行存储在存储器120内的指令、程序、代码集或指令集,以及调用存储在存储器120内的数据,执行电子设备100的各种功能和处理数据。可选地,处理器110可以采用数字信号处理(digital signal processing,dsp)、现场可编程门阵列(field-programmable gate array,fpga)、可编程逻辑阵列(programmable logic array,pla)中的至少一种硬件形式来实现。处理器110可集成中央处理器(central processing unit,cpu)、图像处理器(graphics processing unit,gpu)和调制解调器等中的一种或几种的组合。其中,cpu主要处理操作系统、用户界面和应用程序等;gpu用于负责显示内容的渲染和绘制;调制解调器用于处理无线通信。可以理解的是,上述调制解调器也可以不集成到处理器110中,单独通过一块通信芯片进行实现。
119.存储器120可以包括随机存储器(random access memory,ram),也可以包括只读存储器(read-only memory)。存储器120可用于存储指令、程序、代码、代码集或指令集。存储器120可包括存储程序区和存储数据区,其中,存储程序区可存储用于实现操作系统的指令、用于实现至少一个功能的指令(比如触控功能、声音播放功能、图像播放功能等)、用于实现下述各个方法实施例的指令等。存储数据区还可以存储终端100在使用中所创建的数据(比如电话本、音视频数据、聊天记录数据)等。
120.请参考图12,其示出了本技术实施例提供的一种计算机可读存储介质的结构框图。该计算机可读介质1200中存储有程序代码,所述程序代码可被处理器调用执行上述方法实施例中所描述的方法。
121.计算机可读存储介质1200可以是诸如闪存、eeprom(电可擦除可编程只读存储器)、eprom、硬盘或者rom之类的电子存储器。可选地,计算机可读存储介质1200包括非易失性计算机可读介质(non-transitory computer-readable storage medium)。计算机可读存储介质1200具有执行上述方法中的任何方法步骤的程序代码1210的存储空间。这些程序代码可以从一个或者多个计算机程序产品中读出或者写入到这一个或者多个计算机程序产品中。程序代码1210可以例如以适当形式进行压缩。
122.请参考图13,其示出了本技术实施例提供的一种计算机程序产品1300的结构框图。计算机程序产品包括计算机程序/指令1310,该计算机程序/指令被处理器执行时实现上述方法。
123.最后应说明的是:以上实施例仅用以说明本技术的技术方案,而非对其限制;尽管参照前述实施例对本技术进行了详细的说明,本领域的普通技术人员当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不驱使相应技术方案的本质脱离本技术各实施例技术方案的精神和范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1