具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。
目前,用户可以在电子设备上开启装有NFC公交卡、NFC门禁卡等NFC卡片的钱包功能,用于在公交地铁出行或小区公司门禁等场景。由于不同场景对应的NFC卡片不同,因此在各个场景下需要唤醒钱包并手动切换公交卡或门禁卡才能刷卡成功。而且如果不切换成场景对应的指定卡片,会刷卡失败,然后又需要用户打开钱包主动切换到指定卡片后再重新刷卡,导致操作过程复杂繁琐。
发明人经过长期的研究发现并提出了本申请实施例提供的卡片确定方法、装置、电子设备以及存储介质,可以根据用户的刷卡习惯,预测用户在当前环境下需要使用的卡片类型,以进行提前切换,从而用户到达刷卡环境时可以直接使用电子设备刷卡,而无需关注电子设备当前钱包中使用的卡片是公交卡还是门禁卡,提高了卡片的近场通信交互效率的同时,也提升了用户使用电子设备刷卡体验。具体的卡片确定方法在后续的实施例中进行详细的说明。
请参阅图1,图1示出了本申请一个实施例提供的卡片确定方法的流程示意图。在具体的实施例中,该卡片确定方法可应用于如图10所示的卡片确定装置700以及配置有所述卡片确定装置700的电子设备(图11)。下面将针对图1所示的流程进行详细的阐述,所示卡片确定方法具体可以包括以下步骤:
步骤S110:获取当前时刻所处的当前环境数据。
在本申请实施例中,电子设备可以获取当前时刻所处的当前环境数据,以根据当前环境数据预测当前需要使用的卡片类型。其中,该环境数据可以是电子设备当前的时间信息和空间信息。时间信息可以是指电子设备内当前的系统时间,空间信息可以是指电子设备当前所处的位置,其可以是经纬度坐标等绝对位置信息,也可以是海拔高度信息,还可以是地理标识等位置信息,其中地理标识可以为街道名称、楼宇名称、小区名称、商场名称,甚至城市名称等。
在一些实施例中,电子设备可以是通过GPS(Global Positioning System,全球定位系统)定位,获取到电子设备的当前GPS位置作为电子设备当前时刻所处的当前环境数据,其中,该GPS位置中可以包括海拔高度信息。在另一些实施例中,电子设备也可以是通过网络定位,获取到电子设备的当前网络位置作为电子设备当前时刻所处的当前环境数据。作为一种方式,网络定位可以是WIFI(Wireless Fidelity,无线保真)小区定位,其可以是根据WIFI路由器所在位置进行定位。作为另一种方式,网络定位也可以是基站定位。
在还一些实施例中,电子设备也可以是通过电子设备内装有的气压传感器,获取到电子设备的当前所处的海拔高度信息,作为电子设备当前时刻所处的当前环境数据。
可以理解的是,上述获取环境数据的方式仅为举例,具体的获取环境数据的方式在本申请中并不作限定。例如,可以是上述多种获取的方式的任意租户。
步骤S120:获取卡片集中每张卡片对应的历史交互数据。
在本申请实施例中,电子设备可以获取卡片集中每张卡片对应的历史交互数据,以结合该历史交互数据预测当前需要使用的卡片类型。其中,卡片集可以是支持近场通信的一张或多张卡片集合,也即NFC卡片集合,该卡片可以是公交卡、地铁卡、门禁卡、银行卡、电子身份证卡等。可以理解的是,NFC卡片就是将具有NFC功能的电子设备模拟成一张非接触卡,其在商场、交通、安防等非接触刷卡场景中,用户只要将电子设备靠近NFC读卡器,即可实现刷卡交互。
在一些实施例中,上述历史交互数据可以包括历史调用卡片进行近场通信时,电子设备所处的历史环境数据。其中,调用卡片进行近场通信,可以理解为NFC卡片与NFC读卡器之间成功进行了一次数据交互,也即成功刷卡一次。电子设备可以在每次成功刷卡时,就将电子设备当前所处的环境数据进行记录,从而后续预测时,可以获取到历史每次成功刷卡时电子设备所处的环境数据。
在一些实施例中,上述历史交互数据也可以包括历史调用卡片进行近场通信时,每次调用的卡片类型。从而后续可以准确获取每张卡片对应的历史交互数据。
由于在地铁交通场景中,出站和进站都需要刷卡,因此,在一些实施例中,上述历史交互数据还可以包括历史调用卡片进行近场通信时,具体的出入信息。该出入信息可以用来指示本次刷卡为进站刷卡,也可以用来指示本次刷卡为出站刷卡,以使电子设备在获取到某条交互数据历史记录时,可以确定该记录是出站时产生的,还是进站时产生的。
可以理解是,上述历史交互数据的内容仅为举例,具体的历史交互数据在本申请中并不作限定。
步骤S130:根据所述当前环境数据以及所述历史交互数据,生成所述每张卡片的偏好得分。
在本申请实施例中,在获取到当前时刻所处的当前环境数据和卡片集中每张卡片对应的历史交互数据时,可以根据当前环境数据以及每张卡片的历史交互数据,生成每张卡片的偏好得分,从而可根据该偏好得分来预测当前需要使用的卡片类型。其中,一张卡片的偏好得分大小可用于表征在当前环境下需要使用该卡片刷卡的可能性大小。在一些实施例中,可以是偏好得分的数值越高时,表示在当前环境下需要使用该卡片刷卡的可能性越大。在另一些实施例中,也可以是偏好得分的数值越低时,表示在当前环境下需要使用该卡片刷卡的可能性越大。具体不作限定。
在一些实施例中,可以是根据当前环境数据,在每张卡片的历史交互数据的出现频次,来生成每张卡片的偏好得分,从而可以根据当前环境数据在一张卡片的历史交互数据的出现频次,来预测当前需要使用该卡片刷卡的可能性大小。例如,可以是历史交互数据中出现当前环境数据的次数越高时,其对应卡片的偏好得分就越高,从而当前需要使用该卡片刷卡的可能性就越高。
在一些实施例中,也可以是根据当前环境数据与每张卡片的历史交互数据的相似度高低,来生成每张卡片的偏好得分,从而可以根据当前环境数据与一张卡片的历史交互数据的相似度高低,来预测当前需要使用该卡片刷卡的可能性大小。例如,可以是历史交互数据与当前环境数据越相似时,其对应卡片的偏好得分就越高,从而当前需要使用该卡片刷卡的可能性就越高。
步骤S140:基于所述每张卡片的偏好得分,确定当前待激活的卡片。
在本申请实施例中,在获取到每张卡片的偏好得分后,可以根据基于每张卡片的偏好得分,确定当前待激活的卡片。进而后续可以执行该该卡片的激活操作。从而用户无需手动选择激活的卡片,直接将手机贴近闸机即可刷卡成功。
可以理解的是,对NFC卡片执行激活操作,可以是将NFC卡片从非激活状态调整为激活状态。其中,NFC卡片处于激活状态可以是指NFC卡片当前处于可被使用的状态或可读状态,或者说是电子设备可以通过该NFC卡片与NFC读卡器进行数据交互的状态。
在一些实施例中,若卡片的偏好得分越高,表示在当前环境下需要使用该卡片刷卡的可能性越大,则可以将根据偏好得分较高的卡片,确定为当前待激活的卡片。作为一种方式,可以是将偏好得分最高的卡片,确定为当前待激活的卡片。
在另一些实施例中,若卡片的偏好得分越低,表示在当前环境下需要使用该卡片刷卡的可能性越大,则可以将根据偏好得分较低的卡片,确定为当前待激活的卡片。作为一种方式,可以是将偏好得分最低的卡片,确定为当前待激活的卡片。
在一些实施例中,在确定出当前待激活的卡片后,可以是在用户手动唤醒钱包或电子设备自动唤醒钱包时,电子设备直接激活上述确定出的待激活的卡片,从而NFC卡片无需一直处于激活状态,节省电子设备功耗。在另一些实施例中,NFC卡片也可以一直处于激活状态,从而在每次确定出当前待激活的卡片后,可以提前切换激活该确定出的卡片。
可以理解的是,在一些场景中,电子设备虽然存在多张卡片,但为了节省设备功耗,通常只能保持一张卡片处于激活状态,从而需要准确预测出待激活的卡片,以减少用户手动切换卡片的操作。而本申请通过当前环境数据以及每张卡片的历史交互数据,可以较为准确的预测出在当前环境下需要使用的卡片类型,以提前进行切换激活,使得用户到达刷卡环境时可以直接拿出手机刷卡,使用户在大部分场景下都无需关注当前钱包中使用卡片是公交还是门禁,直接手机贴闸机即可刷卡成功。
本申请实施例提供的卡片确定方法,通过获取当前时刻所处的当前环境数据,以及获取卡片集中每张卡片对应的历史交互数据,以根据当前环境数据以及历史交互数据,生成每张卡片的偏好得分,然后基于每张卡片的偏好得分,确定出当前待激活的卡片。其中,卡片集为支持近场通信的卡片集合,历史交互数据包括历史调用卡片进行近场通信时所处的历史环境数据。由此,本申请可根据卡片的历史交互数据自动确定待激活的卡片,避免了用户手动选择的繁琐操作,提高了卡片的近场通信交互效率。
请参阅图2,图2示出了本申请另一个实施例提供的卡片确定方法的流程示意图。下面将针对图2所示的流程进行详细的阐述,所示卡片确定方法具体可以包括以下步骤:
步骤S210:获取当前时刻所处的当前环境数据。
步骤S220:获取卡片集中每张卡片对应的历史交互数据,所述卡片集为支持近场通信的卡片集合,所述历史交互数据包括历史调用所述卡片进行近场通信时所处的历史环境数据。
在本申请实施例中,步骤S210和步骤S220可以参阅前述实施例的内容,此处不再赘述。
由于存在用户误唤醒钱包的情况,因此,如果仅根据用户触发卡片。来判断该卡片已成功刷卡一次,那么得到的历史交互数据的准确性比较低,后续预测结果的准确性也比较低。因此,在一些实施例中,可以是根据NFC设备与电子设备NFC卡片之前的成功交易事件,来准确判定是否产生了一次刷卡的有效行为,从而在判定产生了有效刷卡行为后,可以得到准确性比较高的历史交互数据。具体地,请参阅图3,在步骤S210之前,本申请的卡片确定方法还可以包括:
步骤S201a:在检测到指定卡片被激活时,判断是否检测到主机控制接口HCI事件。
对于在公交、地铁等支付应用场景中的NFC读卡器(如地铁闸机)而言,如果电子设备中的NFC卡片与NFC读卡器之间成功进行了一次数据交互,即NFC卡片成功刷卡一次,则会生成主机控制接口HCI事件,该HCI事件可以用于表征NFC卡片交易成功。因此,可以通过判断是否检测到HCI事件,来准确判定是否产生了一次刷卡的有效行为。具体地,在检测到指定卡片被激活时,电子设备可以判断是否检测到主机控制接口HCI事件。从而可以确定该指定卡片是否成功刷卡一次。其中,指定卡片可以是卡片集中的任一卡片。
由于仅是电子设备中的交通卡与交通应用场景中的NFC读卡器之间成功通信时,会存在HCI事件,对应门禁卡而言,是没有明确的HCI事件的。因此,在一些实施例中,指定卡片可以为公交卡、地铁卡等交通卡中的任一卡片。
作为一种实施方式,指定卡片可以是电子设备可以是自动唤醒钱包并自动激活的,然后电子设备可以通过判断是否检测到HCI事件,来确定该指定卡片是否成功刷卡。具体地,可以是电子设备在检测到场强信号时,自动执行对指定卡片的激活操作。可以理解的是,NFC读卡器设备可通过发射天线发送一定频率的射频信号,使得在NFC读卡器设备的周围一定范围内存在射频信号(也即场强信号),当电子设备进入该场强范围时可以接收该场强信号,从而可以自动激活NFC卡片,进而与NFC读卡器设备之间实现数据交互。
进一步地,由于电子设备当前自动激活的卡片可能是没有HCI事件的门禁卡,因此,在电子设备自动激活卡片时,可以进行卡片类型的判断,以在判断出是公交卡或地铁卡等存在HCI事件的卡片时,再执行上述的HCI事件的检测。
作为另一种实施方式,指定卡片也可以是用户手动选择后电子设备激活的,然后电子设备可以通过判断是否检测到HCI事件,来确定该指定卡片是否成功刷卡。具体地,可以是电子设备在检测到作用于指定卡片的触发操作时,执行对该指定卡片的激活操作。其中,作用于指定卡片的触发操作,可以是用户通过任一操作方式(如双击唤醒、桌面图标等)触发打开钱包并唤醒卡片页面,此时默认用于刷卡的卡片为指定门槛;也可以是用户通过卡片页面中的卡片列表,从多张卡片中主动触发选择指定卡片;还可以是用户直接通过指定卡片的功能入口触发进入,具体不作限定。
步骤S202a:当检测到所述HCI事件时,获取所处的环境数据。
步骤S203a:将获取的环境数据作为一次记录,存储为所述指定卡片的历史交互数据。
如果检测到HCI事件,可以认为指定卡片与NFC读卡器之间成功进行了一次数据交互,即指定卡片成功刷卡一次。从而电子设备可以获取当前所处的环境数据,并将获取的环境数据作为一次记录,存储为指定卡片的历史交互数据。从而后续进行卡片预测时,可以获取到各自卡片的历史交互数据。
如果未检测到HCI事件,可以认为指定卡片与NFC读卡器之间未成功进行数据交互,指定卡片并没有使用或者刷卡失败,也即本次为无效刷卡行为,电子设备可以不用记录当前所处的环境数据,作为指定卡片的历史交互数据。
在一些实施例中,也可以是在检测到HCI事件时,再确定当前激活的卡片,从而将获取到的当前所处的环境数据作为该卡片的的历史交互数据。
由于门禁卡与NFC读卡器之间进行数据交互时,是没有明确的HCI事件的,因此,在另一些实施例中,可以根据具体的用户行为,来判定是否产生了一次刷指定卡片的有效行为。具体的,请参阅图4,在步骤S210之前,本申请的卡片确定方法还可以包括:
步骤S201b:在检测到指定卡片被激活时,判断第一时长内是否切换激活其他卡片。
由于无法判断当前NFC读卡器设备是门禁场景还是公交场景的,如果仅根据当前激活的指定卡片,来确定是否产生了一次刷指定卡片的有效行为,那比较大可能就是错误的。因此,在一些实施例中,可以判断一段时间内,激活的指定卡片是否发生变化,来确定是否产生了一次刷指定卡片的有效行为。具体地,在检测到指定卡片被激活时,可以判断第一时长内是否切换激活其他卡片。其中,第一时长可以是用于评估指定卡片是否成功刷卡的时间段长度。其可以根据后台动态配置下发,可以根据具体场景合理设定。指定卡片为所述卡片集中的任一卡片。在一些实施例中,由于公交卡、地铁卡可以通过前述的HCI事件确定有效刷卡行为,因此,此处的指定卡片也可以是指没有HCI事件的其他卡片中的任一卡片。
可以理解的是,若当前指定卡片被激活,且在第一时长内切换激活至其他卡片,则可以认为当前真正使用的是其他卡片,而非指定卡片,也即指定卡片并未刷卡。此时可以判定产生了一次刷指定卡片的无效行为。而若当前指定卡片被激活,且在第一时长内并未切换激活至其他卡片,仍激活的是指定卡片,则可以认为当前很可能使用的就是指定卡片,也即指定卡片很可能会成功刷卡。此时可以大概率地判定产生了一次刷指定卡片的有效行为。
作为一种实施方式,指定卡片可以是电子设备可以是自动唤醒钱包并自动激活的,然后电子设备可在检测到指定卡片被自动激活时,判断第一时长内是否切换激活其他卡片。具体地,指定卡片的自动激活,可以是在检测到场强信号时,执行对指定卡片的激活操作。具体描述卡参阅前述实施例,此处不再赘述。
作为另一种实施方式,指定卡片也可以是用户手动选择后电子设备激活的,然后电子设备可在检测到指定卡片被手动激活时,判断第一时长内是否切换激活其他卡片。具体地,指定卡片的手动激活,可以是在检测到作用于指定卡片的触发操作时,执行对所述指定卡片的激活操作。具体描述卡参阅前述实施例,此处不再赘述。
步骤S202b:当所述第一时长内未切换激活其他卡片时,获取所处的环境数据。
步骤S203b:将获取的环境数据作为一次记录,存储为所述指定卡片的历史交互数据。
如果在检测到指定卡片被激活时,且第一时长内未切换激活其他卡片,那么可以认为指定卡片与NFC读卡器之间成功进行了一次数据交互,即指定卡片成功刷卡一次。从而电子设备可以获取当前所处的环境数据,并将获取的环境数据作为一次记录,存储为指定卡片的历史交互数据。从而后续进行卡片预测时,可以获取到各自卡片的历史交互数据。
如果在检测到指定卡片被激活时,且第一时长内已切换激活至其他卡片,那么认为指定卡片与NFC读卡器之间未成功进行数据交互,指定卡片并没有使用,也即本次为无效刷卡行为,电子设备可以不用记录当前所处的环境数据,作为指定卡片的历史交互数据。
由于用户可能会误唤醒钱包,使得指定卡片长时间处于激活状态,如果仅根据第一时长来判断是否产生有效刷卡行为,也会存在一定的错误数据。因此,在一些实施例中,还可以通过判断是否处于场强范围内,来进一步得到较为准确的指定卡片的历史交互数据。具体地,请参阅图5,步骤S201b可以包括:
步骤S2011:当检测到所述指定卡片被激活时,判断第一时长内是否感应到场强信号。
作为一种方式,当检测到指定卡片被手动激活时,可以判断第一时长内是否感应到场强信号,以确定电子设备是否在一定时间内进入了NFC读卡器设备的场强范围,从而可以大概率确定当前用户是否有刷卡需求。
如果在检测到指定卡片被手动激活时,第一时长内感应到场强信号,可以大概率地确定当前用户有刷卡需求,可认为用户很有可能是提前唤醒了钱包,以为即将到来的刷卡做准备,并非是误唤醒钱包。可以理解的是,由于存在用户提前唤醒前后,其后才进入场强范围的情况,因此,在该实施方式下,第一时长的时间长度可以是比较长的,例如,10分钟。
相反地,如果在检测到指定卡片被手动激活时,第一时长内并未感应到场强信号,可以大概率地确定当前用户没有刷卡需求,可认为是误唤醒钱包。
步骤S2012:当所述第一时长内感应到场强信号时,判断所述第一时长内是否切换激活其他卡片。
在一些实施方式中,若检测到指定卡片被手动激活,且在第一时长内感应到场强信号,则可以判断该第一时长内是否切换激活其他卡片,以确定电子设备在一定时间内进入了NFC读卡器设备的场强范围时,在该时间内当前被激活的卡片是否仍是指定卡片。从而可准确判定出是否产生了一次刷卡的有效行为。
可以理解的是,若指定卡片在第一时长内进入场强范围且电子设备当前激活的卡片仍然为指定卡片,可以大概率地认为当前使用了指定卡片,产生了一次刷卡的有效行为,此时电子设备可以获取当前所处的环境数据,并将获取的环境数据作为一次记录,存储为指定卡片的历史交互数据。而若指定卡片在第一时长内进入场强范围但电子设备当前激活的卡片已经切换至指定卡片,可以大概率地认为,指定卡片并未使用,使用的很可能是其他卡片,也即对于指定卡片而言,本次为无效刷卡行为,电子设备可以不用记录当前所处的环境数据,作为指定卡片的历史交互数据。
在一些实施例,由于指定卡片也可以是因为在检测到其他设备的场强信号自动激活,例如,用户过安检门或其他误唤醒场景时,也可能会因为处于场强范围内误唤醒刷卡页面,如果仅根据第一时长来判断是否产生有效刷卡行为,也会存在一定的错误数据。因此,在一些实施例中,可以通过判断随后的一定时间段内是否有预设卡片的刷卡行为,来进一步得到较为准确的指定卡片的历史交互数据。具体地,请参阅图6,步骤S202b可以包括:
步骤S2021:当所述第一时长内未切换激活其他卡片时,判断第二时长内是否检测到调用预设卡片进行近场通信,其中,所述第二时长大于所述第一时长。
步骤S2022:当所述第二时长内未检测到调用预设卡片进行近场通信时,获取所处的环境数据。
作为一种方式,若指定卡片是在检测到场强范围自动激活且第一时长内未切换激活其他卡片,可以判断第二时长内是否检测到调用预设卡片进行近场通信,以确定是否是过安检门或其他误唤醒场景。其中,该第二时长大于第一时长。预设卡片可以是公交卡、地铁卡。
可以理解的是,NFC读卡器的场强范围比较小(大概10厘米),因此,不论是指定卡片在场强范围进行刷卡,还是切换至其他卡片进行刷卡的时间都比较短,因此,判断是否在第一时长内切换激活其他卡片,其中的第一时长的时间长度通常比较短,例如,可以是30S等。而由于用户过安检到进站点刷卡,还有一段距离行走时长或者还有一段排队等候时长,因此,第二时长的时间长度通常比较长,例如,可以是5分钟等。
可以理解的是,在指定卡片是在检测到场强范围自动激活且第一时长内未切换激活其他卡片时,如果第二时长内检测到调用预设卡片进行近场通信,可以认为前面更大概率可能只是类似用户过安检门或其他误唤醒场景。可以大概率地认为,指定卡片并未使用,也即对于指定卡片而言,本次为无效刷卡行为,电子设备可以不用记录当前所处的环境数据,作为指定卡片的历史交互数据。
而如果第二时长内并未检测到调用预设卡片进行近场通信,可以大概率地认为当前使用了指定卡片,产生了一次刷卡的有效行为,此时电子设备可以获取当前所处的环境数据,并将获取的环境数据作为一次记录,存储为指定卡片的历史交互数据。
例如,由于门禁卡没有刷卡事件,因此如果因检测到场强范围而主动唤醒了刷卡页面并激活了门禁卡,且比如在30秒内没有任何切卡行为,可以比较大概率地确定使用了门禁卡刷卡。但是假如过了2分钟,发生了一次公交卡或地铁卡刷卡,那可以说明前面更大概率可能只是类似用户过安检门或其他误唤醒场景,此时可以认为未门禁卡刷卡。
在一些实施例中,可以是在指定卡片是在检测到场强范围自动激活且第一时长内未切换激活其他卡片时,先将本次初次判定为有效刷卡行为,然后如果判断出第二时长内检测到调用预设卡片进行近场通信,再将该初次判定的有效刷卡行为清除,而如果判断出第二时长内未检测到调用预设卡片进行近场通信,再将该初次判定的有效刷卡行为最终确定为有效刷卡行为。
步骤S230:分别从每张卡片对应的所述历史交互数据中,确定与所述当前环境数据匹配的目标交互数据。
在一些实施例中,可以先根据卡片类型,确定每张卡片对应的历史交互数据。从而分别从每张卡片对应的历史交互数据中,确定与当前环境数据匹配的目标交互数据。
在一些实施例中,与当前环境数据匹配的目标交互数据可以存在误差范围,例如时间的误差范围可以是正负10分钟内,海拔调式可以是正负5米内,地理位置可以是偏移100米内。只要在该误差范围内,都可认为历史交互数据与当前环境数据匹配。
在一些实施例中,请参阅图7,步骤S230可以包括:
步骤S231:将每张卡片对应的所述历史交互数据,分别与所述当前环境数据进行匹配,得到每个交互数据与所述当前环境数据的匹配值。
步骤S232:从每张卡片对应的所述历史交互数据中,获取所述匹配值大于预设值的目标交互数据。
由于环境数据通常都会存在或大或小的差异,因此,在一些实施例中,将每张卡片对应的所述历史交互数据,分别与所述当前环境数据进行匹配,得到每个交互数据与当前环境数据的匹配值,以从每张卡片对应的所述历史交互数据中,获取所述匹配值大于预设值的目标交互数据,从而得到每张卡片与当前环境数据比较相似的目标交互数据。从而可以根据每张卡片的目标交互数据确定每张卡片的偏好得分。其中,预设值可以是90%、95%等。此处不作限定。
在一些实施例中,当前环境数据也可以包括多个环境特征,从而可以根据不同的环境特征进行单独匹配,具体地,可以是从目标卡片对应的历史交互数据中,分别确定与每个环境特征匹配的目标交互数据。其中,目标卡片为卡片集中的任一卡片。从而可以得到每张卡片的历史交互数据中,与每个环境特征匹配的目标交互数据。从而可以根据与每个环境特征匹配的目标交互数据,确定每张卡片的偏好得分。
步骤S240:根据每张卡片的所述目标交互数据,生成所述每张卡片的偏好得分。
在一些实施例中,在确定出根据每张卡片的与当前环境数据匹配的目标交互数据后,可以根据每张卡片的目标交互数据,生成所述每张卡片的偏好得分。其中,可以是每张卡片的与当前环境数据匹配的目标交互数据越多,偏好得分就越高,也可以是每张卡片的与当前环境数据匹配的目标交互数据的匹配度越相似,偏好得分就越高,此处不作限定。
作为一种方式,可以是每张卡片的与当前环境数据匹配的目标交互数据的数据条数越多,偏好得分就越高。具体地,请参阅图8,步骤S240可以包括:
步骤S241:确定每张卡片的所述目标交互数据所对应的记录条数。
步骤S242:根据每张卡片的所述记录条数,生成所述每张卡片的偏好得分。
在一些实施例中,电子设备可以确定每张卡片的与当前环境数据匹配的目标交互数据所对应的记录条数,以根据记录条数,生成所述每张卡片的偏好得分。
作为一种方式,在当前环境数据包括多个环境特征时,可以是根据上述与每个环境特征匹配的目标交互数据所对应的记录条数,生成所述每张卡片的偏好得分。
示例性的,可以是每张卡片的历史交互数据中,若有一条与当前相同时间段内的历史交互数据,则可以每条加a1分,也可以是每张卡片的历史交互数据中,若有一条与当前相同海拔内的历史交互数据,则可以每条加a2分,还可以是每张卡片的历史交互数据中,若有一条与当前相同地理位置范围内的历史交互数据,则可以每条加a3分。从而可以得到各种卡片的偏好得分。
进一步地,在一些实施例中,也可以是根据每个环境特征的权重,以及上述与每个环境特征匹配的目标交互数据,生成目标卡片的偏好得分。其中,每个环境特征的权重大小可以反映到每个环境特征的目标交互数据所加的分值大小。具体的每个环境特征的权重大小可以根据具体应用场景合理设定,此处不作限定。例如,若有一条与当前相同海拔内的历史交互数据,则可以每条加a2分,其中,a2的分值比较小。而若有一条与当前相同时间段内的历史交互数据,则可以每条加a1分,其中,a1的分值比较大。
在另一些实施例中,也可以结合最近的刷卡记录,来生成偏好得分。具体的,请参阅图9,步骤S240可以包括:
步骤S243:获取距离所述当前时刻最近的指定交互数据。
步骤S244:根据所述指定交互数据以及每张卡片的所述目标交互数据,生成所述每张卡片的偏好得分。
在一些实施例中,也可以通过判断最近的指定交互数据是否为指定记录,来确定是否加分。例如,若最近的指定交互数据为地铁进站记录,则可加a4分,而若最近的指定交互数据不为地铁进站记录,则可不加分。
在一些实施例中,可以对最近的指定交互数据,以及每张卡片的目标交互数据分别设置权重。其中,可以是最近的指定交互数据的权重比较大,每张卡片的目标交互数据的权重比较小。
示例性地,若最近的指定交互数据为地铁进站记录,则可表示下一次用户极大概率是会地铁出站,因此可以将a4的分值设置得更大,而对于海拔这个,在不同时间获取到的数据可能存在一定偏差,比重就可以设置更小。
在又一些实施例中,当目标交互数据为上述匹配值大于预设值的多个交互数据时,也可以是根据每张卡片的目标交互数据对应的匹配值,生成每张卡片的偏好得分。作为一种方式,可以是根据每张卡片的多个目标交互数据的匹配值,确定每张卡片的目标交互数据的匹配平均值,以根据匹配平均值来确定每张卡片的偏好得分。作为另一种方式,也可以是根据每张卡片的多个目标交互数据的匹配值,确定每张卡片的目标交互数据的最大匹配值,以根据最大匹配值来确定每张卡片的偏好得分。从而可以根据与当前环境数据最相似的历史交互数据,来确定每张卡片的偏好得分。
步骤S250:基于所述每张卡片的偏好得分,获取最高偏好得分所对应的卡片,作为当前待激活的卡片。
在一些实施例中,电子设备在获取到每张卡片的偏好得分,可以获取最高偏好得分所对应的卡片,此处可认为在当前环境下需要使用该卡片刷卡的可能性越大,从而可以将该最高偏好得分所对应的卡片作为当前待激活的卡片。从而实现了用户在当前环境下需要使用的卡片类型的预测,进而可以进行提前切换激活。
在一些实施例中,也可以是根据用户最近一段时间(如一个月或或300条)的历史交互数据来生成偏好得分,以使预测结果更贴合当前用户的使用习惯。
在一些实施例中,也可以还是电子设备后台定时对当前环境下的卡片类型进行预测。其中,可以是不同时间段的预测时间间隔不同。示例性地,可以配置两个时间段,代表闲时或忙时,比如[0,6]表示0点到6点间,此阶段内大概率是不会外出乘车或刷卡行为的,那就每60分钟检测一次,[6,24)为6点到24点,一般是用户活跃活动时间,可以设定为每5分钟检测一次。具体地,实际服务端下发的数据可以是0-6-60、6-24-5格式,前两位是小时区间,后一位是检测间隔。从而电子设备可以根据服务端下发的预测时间,来合理预测当前环境下的卡片类型。
本申请实施例提供的卡片确定方法,通过获取当前时刻所处的当前环境数据,以及获取卡片集中每张卡片对应的历史交互数据,以根据当前环境数据以及历史交互数据,生成每张卡片的偏好得分,然后基于每张卡片的偏好得分,确定出当前待激活的卡片。其中,卡片集为支持近场通信的卡片集合,历史交互数据包括历史调用卡片进行近场通信时所处的历史环境数据。由此,本申请可根据卡片的历史交互数据自动确定待激活的卡片,避免了用户手动选择的繁琐操作,提高了卡片的近场通信交互效率。
请参阅图10,其示出了本申请实施例提供的一种卡片确定装置700的结构框图,该卡片确定装置700包括:当前环境获取模块710、历史数据获取模块720、偏好得分生成模块730以及激活卡片确定模块740。其中,当前环境获取模块710用于获取当前时刻所处的当前环境数据;历史数据获取模块720用于获取卡片集中每张卡片对应的历史交互数据,所述卡片集为支持近场通信的卡片集合,所述历史交互数据包括历史调用所述卡片进行近场通信时所处的历史环境数据;偏好得分生成模块730用于根据所述当前环境数据以及所述历史交互数据,生成所述每张卡片的偏好得分;激活卡片确定模块740用于基于所述每张卡片的偏好得分,确定当前待激活的卡片。
在一些实施例中,偏好得分生成模块730可以包括:数据匹配单元以及分数生成单元。其中,数据匹配单元用于分别从每张卡片对应的所述历史交互数据中,确定与所述当前环境数据匹配的目标交互数据;分数生成单元用于根据每张卡片的所述目标交互数据,生成所述每张卡片的偏好得分。
在一些实施例中,上述分数生成单元可以具体用于:确定每张卡片的所述目标交互数据所对应的记录条数;根据每张卡片的所述记录条数,生成所述每张卡片的偏好得分。
在一些实施例中,上述数据匹配单元可以具体用于:将每张卡片对应的所述历史交互数据,分别与所述当前环境数据进行匹配,得到每个交互数据与所述当前环境数据的匹配值;从每张卡片对应的所述历史交互数据中,获取所述匹配值大于预设值的目标交互数据。
在该实施例下,上述分数生成单元可以具体用于:根据每张卡片的所述目标交互数据对应的所述匹配值,生成所述每张卡片的偏好得分。
在一些实施例中,上述当前环境数据可以包括多个环境特征,上述数据匹配单元可以具体用于:从目标卡片对应的所述历史交互数据中,分别确定与每个所述环境特征匹配的目标交互数据,所述目标卡片为所述卡片集中的任一卡片。
在该实施例下,上述分数生成单元可以具体用于:根据每个所述环境特征的权重,以及与每个所述环境特征匹配的所述目标交互数据,生成所述目标卡片的偏好得分。
在一些实施例中,上述分数生成单元也可以具体用于:获取距离所述当前时刻最近的指定交互数据;根据所述指定交互数据以及每张卡片的所述目标交互数据,生成所述每张卡片的偏好得分。
在一些实施例中,该卡片确定装置700还可以包括:切换判断模块、环境获取模块以及环境记录模块。其中,切换判断模块用于在检测到指定卡片被激活时,判断第一时长内是否切换激活其他卡片,所述指定卡片为所述卡片集中的任一卡片;环境获取模块用于当所述第一时长内未切换激活其他卡片时,获取所处的环境数据;环境记录模块用于将获取的环境数据作为一次记录,存储为所述指定卡片的历史交互数据。
在一些实施例中,该卡片确定装置700还可以包括:主动激活模块,用于在检测到场强信号时,执行对指定卡片的激活操作。
在该实施例下,上述环境获取模块可以具体用于:当所述第一时长内未切换激活其他卡片时,判断第二时长内是否检测到调用预设卡片进行近场通信,其中,所述第二时长大于所述第一时长;当所述第二时长内未检测到调用预设卡片进行近场通信时,获取所处的环境数据。
在一些实施例中,该卡片确定装置700还可以包括:被动激活模块,用于在检测到作用于指定卡片的触发操作时,执行对所述指定卡片的激活操作。
在该实施例下,上述切换判断模块可以具体用于:当检测到所述指定卡片被激活时,判断第一时长内是否感应到场强信号;当所述第一时长内感应到场强信号时,判断所述第一时长内是否切换激活其他卡片。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述装置和模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,模块相互之间的耦合可以是电性,机械或其它形式的耦合。
另外,在本申请各个实施例中的各功能模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。
综上所述,本申请实施例提供的卡片确定装置用于实现前述方法实施例中相应的卡片确定方法,并具有相应的方法实施例的有益效果,在此不再赘述。
请参考图11,其示出了本申请实施例提供的一种电子设备的结构框图。该电子设备100可以是PC电脑、移动终端等能够运行应用程序的终端设备。本申请中的电子设备100可以包括一个或多个如下部件:处理器110、存储器120以及一个或多个应用程序,其中,一个或多个应用程序可以被存储在存储器120中并被配置为由一个或多个处理器110执行,一个或多个应用程序配置用于执行如前述方法实施例所描述的方法。
处理器110可以包括一个或者多个处理核。处理器110利用各种接口和线路连接整个电子设备100内的各个部分,通过运行或执行存储在存储器120内的指令、程序、代码集或指令集,以及调用存储在存储器120内的数据,执行电子设备100的各种功能和处理数据。可选地,处理器110可以采用数字信号处理(Digital Signal Processing,DSP)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)、可编程逻辑阵列(Programmable LogicArray,PLA)中的至少一种硬件形式来实现。处理器110可集成中央处理器(CentralProcessing Unit,CPU)、图形处理器(Graphics Processing Unit,GPU)和调制解调器等中的一种或几种的组合。其中,CPU主要处理操作系统、用户界面和应用程序等;GPU用于负责显示内容的渲染和绘制;调制解调器用于处理无线通信。可以理解的是,上述调制解调器也可以不集成到处理器110中,单独通过一块通信芯片进行实现。
存储器120可以包括随机存储器(Random Access Memory,RAM),也可以包括只读存储器(Read-Only Memory)。存储器120可用于存储指令、程序、代码、代码集或指令集。存储器120可包括存储程序区和存储数据区,其中,存储程序区可存储用于实现操作系统的指令、用于实现至少一个功能的指令(比如触控功能、声音播放功能、图像播放功能等)、用于实现下述各个方法实施例的指令等。存储数据区还可以存储电子设备100在使用中所创建的数据(比如电话本、音视频数据、聊天记录数据)等。
可以理解,图11所示结构仅为示例,电子设备100还可以包括比图11所示更多或更少的组件,或是具有与图11所示完全不同的配置。本申请实施例对此没有限制。
请参考图12,其示出了本申请实施例提供的一种计算机可读存储介质的结构框图。该计算机可读介质800中存储有程序代码,所述程序代码可被处理器调用执行上述方法实施例中所描述的方法。
计算机可读存储介质800可以是诸如闪存、EEPROM(电可擦除可编程只读存储器)、EPROM、硬盘或者ROM之类的电子存储器。可选地,计算机可读存储介质800包括非易失性计算机可读介质(non-transitory computer-readable storage medium)。计算机可读存储介质800具有执行上述方法中的任何方法步骤的程序代码810的存储空间。这些程序代码可以从一个或者多个计算机程序产品中读出或者写入到这一个或者多个计算机程序产品中。程序代码810可以例如以适当形式进行压缩。
最后应说明的是:以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不驱使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。