一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种信息处理方法、装置、设备及存储介质与流程

2022-03-02 03:13:19 来源:中国专利 TAG:


1.本技术涉及数据处理技术领域,涉及但不限于信息处理方法、装置、设备及存储介质。


背景技术:

2.随着计算机技术的飞速发展,越来越多的技术应用在金融领域,传统金融业正在逐步向金融科技(fintech)转变,但由于金融行业的安全性和实时性要求,也对技术提出了更高的要求。计算机技术不断发展,开发团队使用集成开发环境(integrated development environment,ide)软件来构建新的软件、网页、服务和应用程序。只需一个ide工具即可为开发人员提供所有需要的功能。
3.云ide可以实现不同地方的开发人员在编写代码时进行实时协作,简化了测试和部署代码的过程。云ide的快捷键配置包括两种方案,一种方案是用户根据自己的使用习惯,在云ide设备上进行人工配置;另一方案是用户直接使用云ide设备默认配置好的快捷键。对于第一种方案,人工配置过程较复杂,耗时较长;对于另一种方案,默认配置好的快捷键可能与用户的实际使用习惯不匹配。


技术实现要素:

4.本技术提供一种信息处理方法及装置、设备、存储介质,该方案既可以基于采集的第一信息集合,进行快捷键的自动配置,提高了快捷键的配置效率;又可以实现以用户为维度的快捷键自动配置;提高了用户体验。
5.本技术的技术方案是这样实现的:
6.本技术提供了一种信息处理方法,所述方法包括:
7.获得第一用户的用户标识,所述用户标识用于指向所述第一用户;
8.获得第一信息集合;所述第一信息集合包括至少一个第一信息子集合;所述第一信息子集合包括在一个采集周期内采集的所述第一用户输入的至少一个输入快捷键以及所述至少一个输入快捷键中每个所述输入快捷键对应的至少一个功能;
9.基于所述第一信息集合,确定第一输入快捷键对应的第一功能;所述第一信息集合包括的至少一个输入快捷键包括所述第一输入快捷键,所述第一信息集合包括的至少一个功能包括所述第一功能;
10.建立所述第一输入快捷键与所述第一功能之间的关联关系,并将所述关联关系与所述第一用户进行绑定;以使在监听到所述第一用户触发所述第一输入快捷键的情况下,执行所述第一功能对应的操作。
11.本技术提供了一种信息处理装置,所述装置包括:
12.第一获得单元,用于获得第一用户的用户标识,所述用户标识用于指向所述第一用户;
13.第二获得单元,用于获得第一信息集合;所述第一信息集合包括至少一个第一信
息子集合;所述第一信息子集合包括在一个采集周期内采集的所述第一用户输入的至少一个输入快捷键以及所述至少一个输入快捷键中每个所述输入快捷键对应的至少一个功能;
14.确定单元,用于基于所述第一信息集合,确定第一输入快捷键对应的第一功能;所述第一信息集合包括的至少一个输入快捷键包括所述第一输入快捷键,所述第一信息集合包括的至少一个功能包括所述第一功能;
15.配置单元,用于建立所述第一输入快捷键与所述第一功能之间的关联关系,并将所述关联关系与所述第一用户进行绑定;以使在监听到所述第一用户触发所述第一输入快捷键的情况下,执行所述第一功能对应的操作。
16.本技术还提供了一种电子设备,包括:存储器和处理器,所述存储器存储有可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述信息处理方法。
17.本技术还提供了一种存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述信息处理方法。
18.本技术所提供的信息处理方法、装置、设备及存储介质,包括:获得第一用户的用户标识,所述用户标识用于指向所述第一用户;获得第一信息集合;所述第一信息集合包括至少一个第一信息子集合;所述第一信息子集合包括在一个采集周期内采集的所述第一用户输入的至少一个输入快捷键以及所述至少一个输入快捷键中每个所述输入快捷键对应的至少一个功能;基于所述第一信息集合,确定第一输入快捷键对应的第一功能;所述第一信息集合包括的至少一个输入快捷键包括所述第一输入快捷键,所述第一信息集合包括的至少一个功能包括所述第一功能;建立所述第一输入快捷键与所述第一功能之间的关联关系,并将所述关联关系与所述第一用户进行绑定;以使在监听到所述第一用户触发所述第一输入快捷键的情况下,执行所述第一功能对应的操作。本技术提供的信息处理方法可以基于采集的第一信息集合,确定第一输入快捷键对应的第一功能,建立第一功能与第一输入快捷键之间的关联关系,并将该关联关系与第一用户标识进行绑定。这样,第一点、整个配置快捷键的过程由设备自动完成,无需人工参与,减少了人力资源与时间资源,提高了快捷键的配置效率;第二点、配置的快捷键是基于第一信息集合配置的,第一信息集合是基于用户的使用习惯采集得到的,所以配置的快捷键可以满足用户的使用习惯;第三点,将第一输入快捷键与第一功能之间的关联关系与第一用户标识绑定,可以实现,在第一用户输入第一输入快捷键的情况下,响应第一功能;对于其他用户输入第一快捷键则不响应;即同一个输入快捷键针对不同的用户,可能对应不同的功能,以适应不同用户的习惯,提高了用户的使用体验。
附图说明
19.图1为本技术实施例提供的信息处理系统的一种可选的结构示意图;
20.图2为本技术实施例提供的信息处理系统的一种可选的结构示意图;
21.图3为本技术实施例提供的信息处理方法的一种可选的流程示意图
22.图4为本技术实施例提供的信息处理方法的一种可选的流程示意图;
23.图5为本技术实施例提供的信息处理方法一种可选的流程示意图;
24.图6为本技术实施例提供的信息处理方法一种可选的流程示意图;
25.图7为本技术实施例提供的信息处理方法一种可选的流程示意图;
26.图8为本技术实施例提供的信息处理方法一种可选的流程示意图;
27.图9为本技术实施例提供的信息处理方法一种可选的流程示意图;
28.图10为本技术实施例提供的信息处理方法一种可选的流程示意图;
29.图11为本技术实施例提供的信息处理方法一种可选的流程示意图;
30.图12为本技术实施例提供的信息处理方法一种可选的流程示意图;
31.图13为本技术实施例提供的信息处理方法一种可选的流程示意图;
32.图14为本技术实施例提供的信息处理方法一种可选的流程示意图;
33.图15为本技术实施例提供的信息处理方法一种可选的流程示意图;
34.图16为本技术实施例提供的信息处理方法一种可选的流程示意图;
35.图17为本技术实施例提供的信息处理装置的一种可选的结构示意图;
36.图18为本技术实施例提供的电子设备的一种可选的结构示意图。
具体实施方式
37.为使本技术实施例的目的、技术方案和优点更加清楚,下面将结合本技术实施例中的附图,对申请的具体技术方案做进一步详细描述。以下实施例用于说明本技术,但不用来限制本技术的范围。
38.在以下的描述中,涉及到“一些实施例”,其描述了所有可能实施例的子集,但是可以理解,“一些实施例”可以是所有可能实施例的相同子集或不同子集,并且可以在不冲突的情况下相互结合。
39.在以下的描述中,所涉及的术语“第一\第二\第三”仅是为例区别不同的对象,不代表针对对象的特定排序,不具有先后顺序的限定。可以理解地,“第一\第二\第三”在允许的情况下可以互换特定的顺序或先后次序,以使这里描述的本技术实施例能够以除了在这里图示或描述的以外的顺序实施。
40.除非另有定义,本文所使用的所有的技术和科学术语与属于本技术的技术领域的技术人员通常理解的含义相同。本文中所使用的术语只是为了描述本技术实施例的目的,不是旨在限制本技术。
41.本技术实施例可提供信息处理方法及装置、设备和存储介质。实际应用中,信息处理方法可由信息处理装置实现,信息处理装置中的各功能实体可以由电子设备的硬件资源,如处理器等计算资源、通信资源(如用于支持实现光缆、蜂窝等各种方式通信)协同实现。
42.本技术实施例提供的信息处理方法应用于信息处理系统,信息处理系统包括电子设备。电子设备获得第一用户的用户标识,所述用户标识用于指向所述第一用户;获得第一信息集合;所述第一信息集合包括至少一个第一信息子集合;所述第一信息子集合包括在一个采集周期内采集的所述第一用户输入的至少一个输入快捷键以及所述至少一个输入快捷键中每个所述输入快捷键对应的至少一个功能;基于所述第一信息集合,确定第一输入快捷键对应的第一功能;所述第一信息集合包括的至少一个输入快捷键包括所述第一输入快捷键,所述第一信息集合包括的至少一个功能包括所述第一功能;建立所述第一输入快捷键与所述第一功能之间的关联关系,并将所述关联关系与所述第一用户进行绑定;以使在监听到所述第一用户触发所述第一输入快捷键的情况下,执行所述第一功能对应的操
作。
43.作为一示例,信息处理系统10的结构可如图1所示,包括:电子设备101、电子设备101支持第一服务1011。
44.电子设备101通过支持的第一服务1011,执行:获得第一用户的用户标识,所述用户标识用于指向所述第一用户;获得第一信息集合;所述第一信息集合包括至少一个第一信息子集合;所述第一信息子集合包括在一个采集周期内采集的所述第一用户输入的至少一个输入快捷键以及所述至少一个输入快捷键中每个所述输入快捷键对应的至少一个功能;基于所述第一信息集合,确定第一输入快捷键对应的第一功能;所述第一信息集合包括的至少一个输入快捷键包括所述第一输入快捷键,所述第一信息集合包括的至少一个功能包括所述第一功能;建立所述第一输入快捷键与所述第一功能之间的关联关系,并将所述关联关系与所述第一用户进行绑定;以使在监听到所述第一用户触发所述第一输入快捷键的情况下,执行所述第一功能对应的操作。
45.其中,第一服务1011可以为任一服务。示例性的第一服务1011可以为ide服务或者浏览器服务。
46.作为另一示例,信息处理系统10的结构可如图2所示,包括:电子设备101、电子设备101支持第一服务1011和第二服务1012。
47.电子设备在第一服务1011与第二服务的配合下,获得第一用户的用户标识,所述用户标识用于指向所述第一用户;获得第一信息集合;所述第一信息集合包括至少一个第一信息子集合;所述第一信息子集合包括在一个采集周期内采集的所述第一用户输入的至少一个输入快捷键以及所述至少一个输入快捷键中每个所述输入快捷键对应的至少一个功能;基于所述第一信息集合,确定第一输入快捷键对应的第一功能;所述第一信息集合包括的至少一个输入快捷键包括所述第一输入快捷键,所述第一信息集合包括的至少一个功能包括所述第一功能;建立所述第一输入快捷键与所述第一功能之间的关联关系,并将所述关联关系与所述第一用户进行绑定;以使在监听到所述第一用户触发所述第一输入快捷键的情况下,执行所述第一功能对应的操作。
48.其中,第一服务1011与第二服务1012不同。在一示例中,第一服务1011为ide服务;第二服务1012为浏览器服务。
49.电子设备101可以包括移动终端设备(例如手机、平板电脑等),或者非移动终端设备(例如台式电脑、服务器等)。
50.下面,结合图1或图2所示的信息处理系统的示意图,对本技术实施例提供的信息处理方法及装置、设备和存储介质的各实施例进行说明。
51.第一方面,本技术实施例提供一种信息处理方法,该方法应用于信息处理装置;其中,该信息处理装置可以部署于图1或图2中的电子设备101。下面,对本技术实施例提供的信息处理过程进行说明。
52.图3示意了一种可选的一种信息处理方法的流程示意图,本技术实施例提供的信息处理方法,该方法可以包括但不限于图3所示的s301至s304。
53.s301、电子设备获得第一用户的用户标识。
54.其中,该用户标识用于指向第一用户。本技术实施例对于用户标识的具体形式不作具体限定,可以根据实际需求进行配置。例如,用户标识可以为一个数字编号。再例如,用
户标识还可以为一个表征第一用户的具体信息。
55.本技术实施例对获得第一用户的用户标识的实现方式不做限定,可以根据实际需求进行配置。例如,可以根据用户设备的相关信息生成一个用户标识,也可以预先给不同的用户设备配置不同的标识,并告知用户设备,然后电子设备接收用户设备发送的第一用户的用户标识。
56.s302、电子设备获得第一信息集合。
57.第一信息集合包括至少一个第一信息子集合;第一信息子集合包括在一个采集周期内采集的第一用户输入的至少一个输入快捷键以及至少一个输入快捷键中每个输入快捷键对应的至少一个功能。
58.本技术实施例对第一信息集合包括的第一信息子集合的数量不作限定,可以根据实际需求进行配置。其中,第一信息集合包括的第一信息子集合的数量越多,配置的快捷键的准确度越高。
59.快捷键,可以指一个按键或者多个按键的组合。例如,可以将按键t作为一个快捷键,也可以将按键ctrl与按键s的组合作为一个快捷键。输入快捷键指采集到的用户输入的快捷键。
60.功能,可以通过功能表征电子设备执行的操作。例如,一个功能可以对应一个打开文件1的操作,或者一个功能可以对应保存文件1的操作。
61.示例1,电子设备获得第一信息集合包括5个第一信息子集合,分别为第一信息子集合1、第一信息子集合2、第一信息子集合3、第一信息子集合4和第一信息子集合5;第一信息集合为;第一信息子集合1依次包括:k1、a1、a2、a4、a6、a3、k3、a1、a2、a4、k2、a3;第一信息子集合2依次包括:k2、a3、a2、a4、k3、a4、k6、a1、a2、a4、k1、a2、a3、a1、k5、a4、k4、a3;第一信息子集合3依次包括:k3、a1、a2、a4、a6、k1、a2、a5、a4、a6;第一信息子集合依次4包括:k1、a1、a2、a5、a6、a3、k3、a1、a2、a4、k2、a3、a6;第一信息子集合依次5包括:k4、a3、a2、a4、a6、a3、k1、a3、a7、a4、k2、a3。其中,k加不同数字表示不同的快捷键;a加数字表示不同的功能。
62.s303、电子设备基于所述第一信息集合,确定第一输入快捷键对应的第一功能。
63.第一信息集合包括的至少一个输入快捷键包括第一输入快捷键,第一信息集合包括的至少一个功能包括第一功能。
64.电子设备计算第一输入快捷键与第一信息集合包括的至少一个功能中功能的关联程度,并基于该功能的关联程度确定第一输入快捷键对应的第一功能。
65.本技术实施例对确定第一功能的具体方法与条件不作限定,可以根据实际需求进行配置。
66.示例性的,第一信息集合包括3个功能,功能1、功能2和功能3,电子设备确定第一输入快捷键与功能1的关联程度最大,确定功能1为第一功能。
67.s304、电子设备建立所述第一输入快捷键与所述第一功能之间的关联关系,并将所述关联关系与所述第一用户进行绑定;以使在监听到所述第一用户触发所述第一输入快捷键的情况下,执行所述第一功能对应的操作。
68.本技术实施例对建立第一输入快捷键与第一功能之间的关联关系的方式不作具体限定,可以根据实际需求进行配置。例如,可以通过表格的形式将第一输入快捷键的标识与第一功能的标识之间建立关联关系。
69.本技术实施例提供的信息处理方案包括:获得第一用户的用户标识,所述用户标识用于指向所述第一用户;获得第一信息集合;所述第一信息集合包括至少一个第一信息子集合;所述第一信息子集合包括在一个采集周期内采集的所述第一用户输入的至少一个输入快捷键以及所述至少一个输入快捷键中每个所述输入快捷键对应的至少一个功能;基于所述第一信息集合,确定第一输入快捷键对应的第一功能;所述第一信息集合包括的至少一个输入快捷键包括所述第一输入快捷键,所述第一信息集合包括的至少一个功能包括所述第一功能;建立所述第一输入快捷键与所述第一功能之间的关联关系,并将所述关联关系与所述第一用户进行绑定;以使在监听到所述第一用户触发所述第一输入快捷键的情况下,执行所述第一功能对应的操作。本技术提供的信息处理方法可以基于采集的第一信息集合,确定第一输入快捷键对应的第一功能,建立第一功能与第一输入快捷键之间的关联关系,并将该关联关系与第一用户标识进行绑定。这样,第一点、整个配置快捷键的过程由设备自动完成,无需人工参与,减少了人力资源与时间资源,提高了快捷键的配置效率;第二点、配置的快捷键是基于第一信息集合配置的,第一信息集合是基于用户的使用习惯采集得到的,所以配置的快捷键可以满足用户的使用习惯;第三点,将第一输入快捷键与第一功能之间的关联关系与第一用户标识绑定,可以实现,在第一用户输入第一输入快捷键的情况下,响应第一功能;对于其他用户输入第一快捷键则不响应;即同一个输入快捷键针对不同的用户,可能对应不同的功能,以适应不同用户的习惯,提高了用户的使用体验。
70.本技术实施例提供的信息处理方法,还包括第一信息集合的采集过程。该采集过成可以包括但不限于下述实施方式1或实施方式2。
71.实施方式1、针对一个服务的应用场景,采集第一信息;
72.实施方式2、针对两个服务的应用场景,采集第一信息。
73.实施方式1可以实施为:电子设备在监听到输入快捷键的情况下,通过该一个服务按照时间先后顺序采集并记录在一个采集周期内的第一用户输入的输入快捷键以及功能,将采集的该一个采集周期内的第一用户输入的输入快捷键以及功能称为第一信息子集合,将采集的第一个输入快捷键与第二个输入快捷键之间的至少一个功能,作为第一个快捷键对应的至少一个功能。
74.可以理解的,在每次监听到输入快捷键的情况下,均可以采用与该输入快捷键同样的处理方法,得到一组第一信息子集合;这样,经过多次采集后,可以得到多个第一信息子集合。
75.在第一服务为浏览器服务;第二服务为集成开发环境ide服务的情况下,实施方式2可以实施为:在监听到第一用户输入的第二输入快捷键的情况下,针对第二输入快捷键,执行以下处理:若第二输入快捷键不属于第一服务支持的快捷键,通过第二服务在第一采集周期采集第一采集周期对应的第一信息子集合;若第二输入快捷键属于第一服务支持的快捷键,通过第一服务采集第二输入快捷键,并通过第二服务在第一采集周期采集信息;其中,第一服务采集的第二输入快捷键和第二服务采集的信息组成第一采集周期对应的第一信息子集合。
76.其中,第二输入快捷键为任一输入快捷键。
77.可以理解的,在每次监听到输入快捷键的情况下,均可以采用与第二输入快捷键同样的处理方法,得到一组第一信息子集合;这样,经过多次采集后,可以得到多个第一信
息子集合。
78.需要说明的是:在第二输入快捷键与第一服务的默认快捷键相同的情况下,由于第一服务的快捷键优先级比第二服务的快捷键的优先级高,第二服务无法采集第二输入快捷键,所以,由第一服务采集第二输入快捷键,并在第一服务采集到第二输入快捷键后,通知第二服务采集用户在第一采集周期内的信息。
79.下面,对s303电子设备基于所述第一信息集合,确定第一输入快捷键对应的第一功能的过程进行说明。
80.s303可以包括但不限于图4所示的s3031至s3034。
81.s3031、电子设备基于所述第一信息集合,确定所述第一输入快捷键对应的功能集合。
82.功能集合包括至少一个功能子集合,一个功能子集合包括一个第一信息子集合中第一输入快捷键对应的功能。
83.电子设备针对第一信息集合中的每个第一信息子集合,识别每个输入快捷键对应的至少一个功能,然后确定第一输入快捷键对应的功能集合。
84.基于示例1,示例2可以包括:在第一输入快捷键为k1的情况下,第一输入快捷键对应的功能集合可以包括5个功能子集合,分别为功能子集合1、功能子集合2、功能子集合3、功能子集合3和功能子集合5;功能子集合1依次包括a1、a2、a4、a6、a3,功能子集合2依次包括a2、a3、a1,功能子集合3依次包括a2、a5、a4、a6,功能子集合4依次包括a1、a2、a5、a6、a3,功能子集合5依次包括a3、a7、a4。
85.s3032、电子设备基于所述功能集合所包括的功能子集合,确定所述功能集合中每一功能对应的链表。
86.链表表征功能在功能集合中的出现位置。
87.现以第二功能的链表为例,电子设备基于功能集合所包括的功能子集合,确定第二功能在每个功能子集合中的出现位置,将该出现位置作为第二功能对应的链表。
88.其中,第二功能在每个功能子集合中的出现位置,可以通过步长来表示。
89.基于示例2,示例3可以包括:功能a2对应的链表,可以表示为第一步长、第二步长、第三步长和第四步长,第一步长表示功能a2在功能子集合1中的位置,第二步长表示功能a2在功能子集合2中的位置,第三步长表示功能a2在功能子集合3中的位置,第四步长表示功能a2在功能子集合4中的位置;且第一步长的取值可以为2,第二步长和第三步长的取值可以为3,第四步长的取值可以为2。
90.s3033、电子设备针对每个所述功能,计算所述功能对应的关联度。
91.功能对应的关联度表示功能与第一输入快捷键之间的关联程度。
92.本技术实施例对计算功能对应的关联度的具体方式不作限定,可以根据实际需求进行配置。
93.s3034、电子设备在第二功能的关联度与第三功能的关联度之差大于关联度差阈值的情况下,确定所述第二功能为所述第一功能。
94.第二功能的关联度大于功能集合包括的功能中除第二功能之外的功能的关联度;第三功能的关联度小于第二功能的关联度,且大于功能集合包括的功能中除第二功能与第三功能之外的功能的关联度。
95.电子设备遍历功能集合包括的所有功能的关联度,若第二功能(对应关联度最大的功能)的关联度与第三功能(对应关联度第二大的功能)的关联度之差大于关联度阈值,确定第二功能为第一功能。
96.本技术实施例对关联度阈值的具体取值不作限定,可以根据实际需求进行配置。例如,关联度阈值可以为0.3。
97.需要说明的是,若没有满足条件的第二功能,则说明第一信息集合包括的第一信息子集合的数量还不够多,则需进一步采集第一信息子集合,以确定满足条件的第二功能作为第一功能。
98.可以理解的,电子设备还可以将功能集合包括的功能中,对应的关联度最大的功能,确定为第一功能。
99.可选的,在执行s3031与s3032之间,本技术实施例提供的信息处理方法还可以包括但不限于下述所示的s3031a与s3031b。
100.s3031a、电子设备统计所述功能集合包括的每个功能的频率。
101.功能的频率为功能集合中功能的数量与功能子集合的数量之比。
102.基于2,示例4可以包括:功能a2在功能集合中的数量为4,能子集合的数量为5,所以功能a2的频率为0.8,采用同样的方法,可以计算得到功能a3的频率为0.8,功能a3的频率为0.8,功能a1的频率为0.6,功能a4的频率为0.6,功能a6的频率为0.6,功能a5的频率为0.4,功能a7的频率为0.2。
103.s3031b、电子设备将所述功能集合包括的功能子集合中的第四功能删除。
104.第四功能的频率小于频率阈值。
105.本技术实施例对频率阈值不作具体限定,可以根据实际需求进行配置。在一示例中,频率阈值为0.5。
106.基于示例2,示例5可以包括:在频率阈值为0.5的情况下,第四功能包括功能a5和功能a7,删除后的功能集合包括5个功能子集合,分别为功能子集合1、功能子集合2、功能子集合3、功能子集合3和功能子集合5;功能子集合1依次包括a1、a2、a4、a6、a3,功能子集合2依次包括a2、a3、a1,功能子集合3依次包括a2、a4、a6,功能子集合4依次包括a1、a2、a6、a3,功能子集合5依次包括a3、a4。
107.这样,删除了小于频率阈值的功能后,减少了功能集合的数据量,降低了后续处理的数据量,降低了处理的复杂度与时间;同时还可以提高第一功能的准确度。
108.下面,对s3033电子设备针对每个所述功能,计算所述功能对应的关联度进行说明。其中,计算每个功能对应的关联度的过程类似,现以一个功能为例,对该过程进行解释,可以包括但不限于下述s30331至s30333。
109.s30331、电子设备将所述功能对应的链表的长度除以参考长度,得到链表的长度比值。
110.链表的长度表征功能集合中包括功能的功能子集合的数量。
111.本技术实施例对参考长度的取值不做限定,可以根据实际需求进行配置。在一可能的实施方式中,可以将参考长度配置为一个经验值;在另一种可能的实施方式中,可以将功能集合中的一个功能对应的链表长度作为参考长度。
112.示例性的,可以将功能集合中的功能对应的链表的长度中,最大的长度作为参考
长度。
113.基于示例3,功能2对应的链表的长度为4,功能2对应的链表的长度为4。
114.s30332、电子设备将所述功能对应的链表的权重除以参考权重,得到权重比值。
115.链表的权重为与链表表征的出现位置相关。
116.在一种可能的实施方式中,链表的权重为多个步长对应的权重之和。其中,步长的取值越小,该步长对应的权重越大。
117.本技术实施例对参考权重的具体取值不作限定,可以根据实际需求进行配置。
118.在一可能的实施方式中,可以将参考权重配置为一个经验值;在另一种可能的实施方式中,可以将参考长度与最小步长对应的权重作为参考长度。
119.s30333、电子设备将所述链表的长度比值与所述权重比值相乘,得到所述功能对应的关联度。
120.可以理解的,还可以通过其他方式计算功能对应的关联度。其中,只需满足功能对应的关联度与功能出现的频率正相关,与功能对应的链表中的步长负相关即可。
121.下面,对s304电子设备建立所述第一输入快捷键与所述第一功能之间的关联关系的过程进行说明,该过程可以包括但不限于下述实施方式a1或者实施方式a2。
122.实施方式a1、针对一个服务的应用场景,建立关联关系;
123.实施方式a2、针对两个服务的应用场景,建立关联关系。
124.实施方式a1可以包括但不限于图5所示的s3041至s3044。
125.s3041、电子设备获取第一输入快捷键、以及所述第一功能对应的内置快捷键。
126.内置快捷键与第一功能之间存在第一关联关系。
127.可以理解的,电子设备通过内置快捷键以及第一关联关系,可以连接到第一功能。
128.s3042、电子设备将所述第一输入快捷键与扩展快捷键列表中的扩展快捷键做匹配。
129.扩展快捷键列表可以包括至少一个扩展快捷键。
130.电子设备将第一输入快捷键与扩展快捷键列表中的扩展快捷键进行一一匹配,判断是否存在与第一输入快捷的内容相同的扩展快捷键,若存在,认为命中扩展快捷键列表中的扩展快捷键,对应执行下述s3043,若不存在,认为没有命中扩展快捷键列表池中的扩展快捷键,执行下述s3044。
131.s3043、若命中所述扩展快捷键列表中的扩展快捷键,则电子设备建立命中的扩展快捷键与所述内置快捷键之间的第二关联关系。
132.若命中扩展快捷键列表中的扩展快捷键,则电子设备建立命中的扩展快捷键与内置快捷键之间的第二关联关系,以使可以通过该第二关联关系以及第一输入快捷键连接到该内置快捷键。
133.s3044、若没有命中所述扩展快捷键列表池中的扩展快捷键,则电子设备在所述扩展快捷键列表中增加所述第一输入快捷键;建立所述第一输入快捷键与所述内置快捷键之间的第三关联关系。
134.电子设备若没有命中所述扩展快捷键列表池中的扩展快捷键,则在扩展快捷键列表中增加与第一输入快捷键;建立第一输入快捷键与内置快捷键之间的第三关联关系;以使可以通过该第三关联关系以及第一输入快捷键连接到该内置快捷键。
135.需要说明的是,若没有内置快捷与第一功能之间的第一关联关系,则电子设备直接建立第一输入快捷键与第一功能之间的第四关联关系,以使通过第一输入快捷键以及该第四关联关系链接到第一功能。
136.在第一服务为浏览器服务;第二服务为集成开发环境ide服务的情况下,实施方式a2可以实施为:与实施方式a1的区别在于,通过浏览器的扩展模块配置扩展池列表中的扩展快捷键,针对浏览器的每一个默认快捷键均配置一个对应的扩展快捷键;且浏览器通过脚本的方式修改内置快捷键触发第一功能的触发事件,并将该触发事件发送给ide服务。
137.由于扩展模块配置的扩展快捷键的优先级高于浏览器的默认快捷键的优先级,可以在输入快捷键与浏览器的默认快捷键相同的情况下,浏览器的扩展模块可以监听到输入快捷键,并基于输入快捷键连接到对应的扩展快捷键,并通过扩展快捷键与内置快捷键之间的第二关联关系或者第三关联关系链接到对应的内置快捷键,ide服务通过接收的触发事件触发与输入快捷键对应的功能。
138.下面对s301电子设备获得第一用户的用户标识的过程进行说明,该过程可以包括但不限于下述s3011和s3012。
139.s3011、电子设备获取第一用户设备的至少一个维度的设备信息。
140.本技术实施例对获取的设备信息的维度的数量不作具体限定,可以根据实际需求进行配置。其中,获取的设备信息的维度的数量越大,确定的用户标识的准确度越高;用户标识的准确度用于表征通过用户标识识别第一用户的准确度。
141.在一示例中,电子设备获取至少一个维度的设备信息可以包括下述至少一项:设备的基础信息(第一维度的设备信息)、设备的配置信息。
142.示例性的,设备的基础信息可以包括下述一项或者多项:用户代理(user agent)信息、时区信息、屏幕大小信息、分辨率信息、字体信息以及插件信息。
143.设备的配置信息可以包括下述一项或者多项:设备的图形处理器(graphics processing unit,gpu)特征信息、图像驱动程序特征信息以及显卡特征信息。其中,特征信息用于表征不同设备的配置信息之间的区别。
144.s3012、电子设备将所述至少一个维度的设备信息组合后进行哈希计算,得到所述第一用户标识。
145.电子设备将至少一个维度的设备信息进行组合后,通过乘法旋转(murmur3)算法对组合后的信息进行哈希运算,得到第一用户标识。
146.下面,对s3011电子设备获取至少一个维度的设备信息的过程进行说明,该过程可以包括但不限于下述s30111至s30113。
147.s30111、电子设备通过所述第一用户设备绘制第一图像。
148.第一图像包括二维图像或三维图像中的至少一项;第一图像表征设备之间的区别配置信息。
149.示例性的,第一图像可以为画布(canvas)图像或者梯度图像。
150.在一可能的实现方式中,第一图像为隐藏图像,即第一图像不显示。
151.电子设备基于预先编写的脚本,通过电子设备预先配置的配置信息自动绘制第一图像。
152.s30112、电子设备将所述第一图像转换为第一数据。
153.第一数据为通过打印字符表示所述第一图像的二进制数据。
154.电子设备将第一图像转换为通过打印字符表示所述第一图像的二进制数据,作为第一数据。
155.s30113、电子设备对所述第一数据进行哈希运算,得到第一维度的设备信息。
156.第一维度的设备信息表征第一用户的设备配置信息;至少一个维度包括第一维度。
157.示例性的,电子设备通过murmur3算法对第一数据进行哈希运算,得到第一维度的设备信息。
158.下面,以第一服务是浏览器服务,第二服务是云ide服务为例,对本技术实施例提供的信息处理方法进行说明。
159.为了便于理解,对部分技术术语作简单解释。
160.集成开发环境(integrated development environment,ide):是一种软件平台,可以用于消除管理开发环境中的各种问题。其中,ide为程序员和开发人员提供了用于在“一体化系统”中进行软件开发的工具。它们旨在与特定的应用程序平台配合使用,以克服软件的开发生命周期的障碍。
161.云ide:一个基于万维网(world wide web,web)的集成开发云平台,通常由代码编辑器、编译器、命令行、调试器和应用程序接口(application programming interface,api)或图形用户界面(graphical user interface,gui)构建器组成。
162.快捷键:又称为快速键或热键,指通过某些特定的按键、按键顺序或按键组合来代替鼠标完成一个操作。
163.哈希(hash):把任意长度的输入通过散列算法变化成固定长度的输出,该输出就是散列值。
164.用户代理(user agent,ua),是一个特殊字符串头,可以使得服务器能够识别客户使用的操作系统及版本、中央处理器(central processing unit,cpu)类型、浏览器及版本等。
165.canvas:指超文本(hyper text markup language,html)5中一种动态绘图的标签。其中,可以使用canvas生成或者处理高级图片。
166.循环冗余校验(cyclic redundancy check,crc)码:是一种常用的、具有检错、纠错能力的校验码。
167.网络(web)图形库(web graphics library,web gl):一种三维(3-dimension,3d)绘图标准,用于在网页上呈现3d图像。
168.murmur哈希3:一种非加密散列函数,适用于一般的散列的查找。可以产生32位或128位哈希值。
169.base64编码:一种基于64个可打印字符来表示二进制数据的方法。
170.谷歌浏览器(chrome)扩展:可以用于自定义小型软件模块,包括用户界面修改、广告拦截和储存在用户本地终端上的数据(cookie)管理等功能。
171.chrome快捷键:指chrome浏览器中默认的快捷键。
172.扩展快捷键:指chrome浏览器扩展自定义的快捷键。其中,可以根据用户的使用习惯来匹配对应的扩展快捷键。
173.用户快捷键:指用户根据日常使用习惯设置的快捷键,也可以称为按键组合。
174.快捷键功能(mouse trap)库:一个监听处理键盘快捷键的java script库。
175.通常开发团队使用ide软件来构建新的软件、网页、服务和应用程序。只需一个ide工具即可为开发人员提供需要的功能,且由于它们跨平台工作,因此无需单独集成。所以,可以用于将java script、my sql和python等编程语言编码到特定平台。其中,文本编辑器从头开始创建网站是很常见的,随着镜像和容器等技术的快速发展,许多软件托管在云中,ide也不例外,越来越多的云ide应用而生。云ide是基于web的集成开发云平台,通常由代码编辑器、编译器、命令行、调试器和api或gui构建器组成。
176.云ide具有很多的优点,包括无需下载和安装,简化了在不同位置编写代码的开发人员之间的实时协作,使测试和部署代码变得更加容易,它们非常适合想要尝试新语言、框架或工具而无需在本地安装的开发人员。
177.为了提高开发者的使用体验,现在大部分云ide系统都提供了默认的快捷键,也提供了自定义快捷键功能。用户初次使用时需要配置符合自己习惯的快捷键。部分用来即时编码的云ide系统没有自定义功能,用户只能使用其默认快捷键。另外由于浏览器默认快捷键的限制,云ide系统的部分功能的默认快捷键可能与原生ide系统存在冲突。
178.相关技术中,一方面,对于一些即时编码的云ide系统,为了提供随时随地编码查看结果的功能,舍弃了登录认证模块,对所有开发人员提供相同的系统配置,还有系统默认快捷键,不支持用户自定义快捷键。这样,由于每个开发人员的使用习惯不尽相同,导致部分用户必须改变开发习惯来适应云ide系统。
179.另一方面,对于另一些云ide系统,虽然增加了自定义快捷键模块,由于用户第一次登录系统后,为了提升开发效率,仍然需要花费大量的时间去配置符合自身习惯的快捷键,导致配置快捷键的耗时也较长。
180.再一方面,由于云ide系统本质上还是一个web系统,在快捷键的使用上要适配浏览器的一些规则,当ide系统的快捷键跟浏览器默认快捷键发生冲突时,会优先响应浏览器默认行为,进而云ide系统快捷键将不会响应。如果部分关键快捷键发生冲突,可能造成不可恢复的负作用。原生ide应用程序,可以监听自由组合的快捷键,从而响应用户行为。现有的云ide的默认快捷键都主动避开了浏览器默认快捷键,而开发人员去自定义快捷键时也要避开这部分冲突的快捷键。这样,导致对于那些从原生ide切换到云ide的开发人员需要强制改变使用习惯。
181.简单来说,部分即时编码ide系统没有登录认证模块,不提供快捷键自定义功能,开发人员只能使用系统默认的快捷键,强制用户改变使用习惯。部分ide具有登录认证模块,尽管提供了自定义快捷键功能,但是从原生ide切换到云ide系统时需要花费大量时间去配置符合自身习惯的快捷键。另外配置自定义快捷键时,因为有浏览器默认快捷键的存在,需要主动避开,防止产生冲突,从某种角度还是强制用户改变使用习惯,降低开发效率。
182.本技术实施例提供的ide系统具有以下特点:
183.1、无需耗费更多时间精力配置快捷键,实现用户快捷键自动配置。
184.2、无需登录,根据不同用户的使用习惯,实现用户快捷键差异化配置。
185.3、支持用户使用符合自身使用习惯的快捷键,无需考虑浏览器默认快捷键的限制,享受与原生ide同样的快捷键使用体验。
186.本技术实施例提供的差异化快捷键自动配置方案,可以进行自动配置,即用户使用云ide时无需耗费大量时间去配置快捷键,系统会主动完成这一配置工作;且配置的差异化快捷键可以满足不同用户的使用习惯,而非一套统一的默认快捷键,从而使用户可以更加专注于本身的编码工作,提高效率。这种方案基于浏览器多维度属性识别不同用户,接着采集用户独特的快捷键行为信息,同时对收集到的信息进行统计分析,得到用户快捷键使用习惯,从而完成快捷键自动配置。
187.具体流程可以包括但不限于下述几个步骤:
188.1、通过云ide服务基于浏览器的信息自动识别访问的用户,生成用户的唯一标识。
189.对于没有登录认证模块的云ide,如果想要为不同用户提供差异化的快捷键配置,首先需要识别不同的用户。先收集用户信息,并根据收集的用户信息生成用户的唯一标识(user id),以此来区分不同用户,保存用户差异化配置信息。
190.其中,用户信息可以包括浏览器基础信息(相当于设备基础信息)、canvas信息(相当于设备配置信息)以及web gl信息(相当于设备配置信息)。
191.首先,云ide系统收集浏览器基础信息;其中,浏览器基础信息包括user agent、时区、屏幕大小、分辨率、字体、插件等等。
192.其次,云ide系统收集canvas信息。
193.由于不同用户设备上的图形处理器(graphics processing unit,gpu)、图形驱动程序以及图形显卡存在差异,所以,系统显卡在绘制canvas图形时所使用的渲染参数、抗锯齿等算法不同,因此绘制成图片的crc校验码也不一样。基于这个原理,收集用户设备的canvas信息作为用户信息的一部分。
194.具体的,如图6所示,通过脚本绘制一个隐藏的canvas图像(相当于第一图形),图像被绘出后,获取其base64的数据信息(dataurl)。然后对dataurl这个字符串进行murmur3摘要计算,得到32位的结果,记为canvas信息(也可以称为canvas id),并将其作为用来生成用户标识(user id)的一部分。
195.web gl信息与canvas信息非常相似,因为它们都使用浏览器在屏幕外渲染文本和图像,可以使用这些图像根据用户的图形驱动程序和设备硬件来区分用户。基于这个原理,收集浏览器的web gl信息。
196.具体的,如图7所示,先创建一个着色器,采用web gl绘图技术创建的着色器绘制一个隐藏的梯度图像,然后将梯度图像转成base64字符串,然后整合字符串,枚举web gl渲染的一些其他基本信息包括web gl版本、着色器语言版本、供应商以及可支持的扩展,将这些附加信息添加到base64字符串上,对这个整合字符串进行murmur3摘要计算,得到32位的结果,记为web gl信息(也可以称为web gl id),并将其作为用来生成user id的一部分。
197.如图8所示,将浏览器基础信息(例如,可以包括用户代理、时区、屏幕大小、分辨率、字体和插件)、canvas信息以及web gl信息作为数据源信号,整体再进行一次murmur3摘要计算,最终生成一个32位哈希值,作为用户唯一标识。
198.2、用户快捷键的收集。
199.由于采集用户的快捷键的数据是为不同用户制定符合自身习惯的快捷键配置的重要前提,所以在识别出不同的用户,接下为不同用户进行差异化的快捷键配置。
200.主要思路包括:当某个快捷键被触发,以唤起云ide的某个功能时,如果系统没有
响应或者响应了其他功能,通常会使用鼠标动作来唤起系统功能。所以,监听输入的按键组合,并在监听到按键组合后,采集并记录接下来一个采集周期的操作(鼠标点击、滚动或者拖拉等),以及在采集周期内输入的其他快捷键(操作与快捷键一起相当于第一信息子集合)。其中,记录采集周期的其他快捷键,主要是防止后续对分析用户行为带来干扰。例如,在采集周期内存在其他按键组合的触发时,不会再次发起采集操作,防止样本重复。
201.具体的,采集过程可以包括:
202.首先,采用ide服务中的mouse trap库监听常用按键组合,同时加入监听埋点,(监听埋点可以记为ki,i代表不同的按键组合),将按键组合绑定到对应的功能模块,将与功能模块绑定的快捷键,称为内置快捷键,具体配置参考其他业内比较成熟的云ide设置,同样在每个绑定内置快捷键的功能处,增加触发事件埋点(事件埋点可以记为aj,j代表不同的功能)。
203.由于浏览器默认快捷键的存在,用户无法像在原生ide中随心所欲的使用快捷键,它有一个限制条件:当用户输入的某个按键组合恰好匹配到浏览器某个默认快捷键时,会优先响应浏览器中与该按键组合对应的功能,而忽略云ide系统中与该快捷键作为内置快捷键的功能。部分云ide系统中的内置快捷键都避开了浏览器默认快捷键。众所周知chrome浏览器扩展可以设置快捷键,称之为扩展快捷键,扩展快捷键可以用来覆盖用户输入按键组合。当用户浏览网页时,按键组合匹配到某个扩展快捷键时,会被扩展系统所拦截,基于这个特性巧妙设计用户快捷键的收集流程。
204.监听统计用户按键组合时,根据输入快捷键是否与浏览器默认快捷键重叠分为两种情况:第一种是用户输入快捷键与浏览器默认快捷键没有重叠,通过云ide服务监听到用户按键行为,记录接下来一个采集周期的操作;第二种是用户输入快捷键与浏览器默认快捷键发生重叠,云ide服务无法监听到按键组合,因为浏览器默认快捷键的优先级更高,云ide无法采集用户接下来的行为。这样,可以通过浏览器中的自动配置器来辅助采集接下来一个采集周期的操作。其中,自动配置器基于浏览器服务的(例如为chrome浏览器)扩展模块来实现。具体的,预先在浏览器服务的自动配置器中配置扩展快捷键列表池来一一对应浏览器默认快捷键,当用户使用云ide时,输入的按键组合匹配到某个扩展快捷键,此时被自动配置器所拦截,自动配置器通知云ide服务捕获到用户输入的快捷键,并指示ide服务采集接下来一个采集周期的操作。
205.无论是云ide服务主动采集的还是通过浏览器的自动配置器辅助采集,最终都会得到一串以监听到的按键组合开始的记录码,比如:【k2a1a3a4,k1a1a2a3k2a2】(表示在一个采集周期内收集的快捷键)。
206.3、通过浏览器服务分析按键组合与ide服务功能之间的规则。
207.通过行为分析器在采集的信息中,确定与当前输入的按键组合(相当于第一按键组合)最相关的系统功能,即目标系统功能(相当于第一功能,也可以称为目标功能)。具体可以包括但不限于以下4点:
208.第一点、数据的切割与分类。
209.前面提到过采集到的每条记录都可以用一个数组来表示,例如【k1,a1,a2,a4,a6,a3,k3,a2,a4,k2...】,k代表按键组合,a代表系统功能,后面的数字用来区分不同的按键组合或系统功能。将数组根据按键组合作为节点切分成多段,每一段都包含一个按键组合和
多个系统功能,其余记录进行相同的处理得到多组数据,根据按键组合进行分类,最后得到每个按键组合的数据集列表。
210.如图9所示,采集到的数据可以包括记录1(相当于第一信息子集合1)、记录2(相当于第一信息子集合2)、记录3(相当于第一信息子集合3)、记录4(相当于第一信息子集合4)和记录5(相当于第一信息子集合5)。其中,记录1包括k1、a1、a2、a4、a6、a3、k3、a1、a2、a4、k2、a3;记录2包括k2、a3、a2、a4、k3、a4、k6、a1、a2、a4、k1、a2、a3、a1、k5、a4、k4、a3;记录3包括k3、a1、a2、a4、a6、k1、a2、a5、a4、a6;记录4包括k1、a1、a2、a5、a6、a3、k3、a1、a2、a4、k2、a3、a6;记录5包括k4、a3、a2、a4、a6、a3、k1、a3、a7、a4、k2、a3。
211.对采集的数据进行切割与分类后,得到的k1的数据集列表可以如图10所示,包括:a1、a2、a4、a6、a3;a2、a3、a1;a2、a5、a4、a6;a1、a2、a5、a6、a3;a3、a7、a4。
212.第二点、过滤掉低频率的功能。
213.遍历每个按键的数据集列表,查找数据集中的所有独立项(相当于功能),每个独立项对应不同的功能,计算每个独立项对应的频率,将频率值小于频率阈值(lmin)的独立项从原始数据集中删除,从而得到一组新的数据集。
214.例如,k1的数据集列表中所有独立项对应的频率如图11所示,a2的频率为0.8,a3的频率为0.8,a1的频率为0.6,a4的频率为0.6,a6的频率为0.6,a5的频率为0.4,a7的频率为0.2;频率阈值为0.5,则删除a5和a7。过滤后的k1的数据集列表如图12所示,包括:a1、a2、a4、a6、a3;a2、a3、a1;a2、a4、a6;a1、a2、a6、a3;a3、a4。
215.第三点、创建独立项链表组。
216.为过滤后的数据集中的每个独立项分别创建一个单向数据链表。其中,一个单向数据链表包括至少一个节点;每个节点都有一个计数器和一个指针,计数器的值用于表示该节点在滤后的数据集中每个独立项下的距离(也可以称为按键组合的步长),指针用于保存列表的顺序。随着时间的增加,功能的关联性逐渐下降,为每个步长映射不同的权重值,1-》s1,2-》s2,3-》s3,...,n-》sn(s1》s2》s3》...》sn)。其中,n表示步长;sn表示步长为n时对应的权重值。
217.将所有独立项链表按照链表长度递减排列,得到独立项链表组。
218.如图13所示,k1的独立项链表组可以包括独立项a2的单向数据链表、a3的单向数据链表、a1的单向数据链表、a4的单向数据链表以及a6的单向数据链表。其中,独立项a2的单向数据链表包括4个节点,节点a1、节点a2、节点a3和节点a4,节点a1的步长为2,节点a2的步长为1,节点a3的步长为1,节点a4的步长为2;独立项a3的单向数据链表包括4个节点,节点b1、节点b2、节点b3和节点b4,节点b1的步长为5,节点b2的步长为2,节点b3的步长为4,节点b4的步长为1;独立项a1的单向数据链表包括3个节点,节点c1、节点c2和节点c3,节点c1的步长为1,节点c2的步长为3,节点c3的步长为1;独立项a4的单向数据链表包括3个节点,节点d1、节点d2和节点d3,节点d1的步长为3,节点d2的步长为2,节点d3的步长为2;独立项a6的单向数据链表包括3个节点,节点e1、节点e2和节点e3,节点e1的步长为4,节点e2的步长为3,节点e3的步长为3。
219.第四点、确定目标系统功能。
220.得到链表组后,通过浏览器服务计算不同独立项的关联度。其中,独立项出现的频率越高、距离按键组合越近(步长越短),则关联度越强。
221.取链表组中第一条链表的长度作为基准l,计算每个独立项的关联度。例如,独立项的关联度可以通过下述公式(1)计算得到。
[0222][0223]
其中,rn表示独立项n的关联度;p’表示独立项的长度比例;w表示独立项的权重;ln表示n的链表长度,l表示基准链表的长度;∑qn表示独立项n的每个节点的权重之和;s1表示基准链表的权重。
[0224]
在多个独立项的关联度中,找出关联度值最大的前两个关联度,记为rmax1,rmax2,若rmax1与rmax2之差的结果大于最小间隔阈值,则确定rmax1所对应的独立项就是与用户输入按键组合最相关的目标系统功能;若rmax1与rmax2之差的结果小于或等于最小间隔阈值,则确定样本数据不足以获取到最强关联的独立项,需要继续采集用户行为,扩充样本数据。
[0225]
后续采集到用户行为记录重复1-2的动作,为新增的独立项创建新的单向链表,并将新的单向链表补充到链表组里,对于重复的独立项只需在原有的链表中添加新的节点即可,新添加的节点可以图如图14中虚线所示,然后重新计算每个独立项的关联度,直至可以确定出目标系统功能。
[0226]
4、自动配置用户快捷键。
[0227]
当行为分析器得到与用户输入按键组合对应的目标系统功能时,通知云ide服务向自动配置器中的用户中心发起用户快捷键配置请求,请求参数携带user id、按键组合以及目标系统功能所对应的内置快捷键。如图15所示,自动配置器收到配置请求后,将按键组合去跟扩展快捷键列表池做匹配,如果命中某一扩展快捷键,将当前按键组合与目标系统功能内置快捷键之间的映射关系与用户进行绑定,配置到当前user id下面。如果没有命中,则说明配置请求中的按键组合属于云ide本身监听到的,为了后续能被自动配置器拦截,基于不同用户做差异化处理,自动配置器需要针对该按键组合增加一个扩展快捷键补充到列表池,新增扩展快捷键的键值等于按键组合,接着同样进行上面的步骤,将按键组合与目标系统功能内置快捷键之间的映射关系与用户进行绑定,注册到当前user id下面。
[0228]
如15图所示,完成配置后,用户中心保存了一份当前用户(用户a)针对按键组合(用户快捷键)与目标系统功能的内置快捷键的映射关系,同时保证了扩展快捷键列表池(例如包括扩展快捷键k1、扩展快捷键k2、扩展快捷键k3、扩展快捷键kn等等)肯定有一个扩展快捷键与输入按键组合相匹配。当用户输入快捷键时,被扩展快捷键所拦截,根据按键组合查询用户中心(例如包括用户a的映射关系、用户b的映射关系和用户c的映射关系)下用户a的映射关系中查询此快捷键所绑定的内置快捷键。
[0229]
接下来需要补发该内置快捷键的监听事件,从而让云ide响应目标系统功能。具体可以通过自动配置器采用chrome扩展实现。例如chrome扩展模块中的content scripts是在web页面内运行的java script脚本,可以获取浏览器所访问页面的详细信息。修改这些信息,基于这个特性在content scripts脚本中模拟发射内置快捷键监听事件,此时云ide监听到该事件,响应目标功能,从而完成快捷键差异化自动配置。
[0230]
流程可以如图16所示,信息处理过程可以包括用户注册过程、采集第一信息过程、目标功能确定过程以及自动配置过程。
[0231]
对于用户注册过程可以包括:在用户首次访问的情况下,生成用户标识,存储至用户中心。
[0232]
对于采集第一信息过程可以包括:在监听到输入按键组合时,判断输入按键组合是否被扩展快捷键列表池拦截,若被拦截,则在用户中心,针对该用户判断输入快捷键是否在用户中心已采集,若已采集,则模拟发射内置快捷键触发事件,若没有采集或者若没有被拦截,通知云ide服务采集用户行为。
[0233]
对于目标功能确定过程可以包括:对采集的用户行为数据进行切割,删除低频率独立项,创建独立项的链表组,计算独立项的关联度,确定目标功能。
[0234]
对于自动配置过程可以包括:云ide服务发起配置请求,判断是否命中任一扩展快捷键,若命中,建立扩展快捷键和目标功能对应的内置快捷键之间的关联关系;若没有命中,则增加扩展快捷键,并建立增加的扩展快捷键和目标功能对应的内置快捷键之间的关联关系。
[0235]
本技术实施例提供的快捷键配置方案具有以下效果:无需登录,根据不同用户的使用习惯,实现不同用户的快捷键差异化配置;支持用户快捷键自动配置,无需耗费多余时间精力配置快捷键,可以使用户专注于编码工作,提供工作效率;支持用户使用符合自身使用习惯的快捷键,无需考虑浏览器默认快捷键的限制,享受与原生ide同样的快捷键使用体验。
[0236]
为实现上述信息处理方法,本技术实施例的一种信息处理装置,下面结合图17所示的信息处理装置的结构示意图进行说明。
[0237]
如图17所示,信息处理装置170包括:第一获得单元1701、第二获得单元1702、确定单元1703和配置单元1704。其中:
[0238]
第一获得单元1701,用于获得第一用户的用户标识,所述用户标识用于指向所述第一用户;
[0239]
第二获得单元1702,用于获得第一信息集合;所述第一信息集合包括至少一个第一信息子集合;所述第一信息子集合包括在一个采集周期内采集的所述第一用户输入的至少一个输入快捷键以及所述至少一个输入快捷键中每个所述输入快捷键对应的至少一个功能;
[0240]
确定单元1702,用于基于所述第一信息集合,确定第一输入快捷键对应的第一功能;所述第一信息集合包括的至少一个输入快捷键包括所述第一输入快捷键,所述第一信息集合包括的至少一个功能包括所述第一功能;
[0241]
配置单元1703,用于建立所述第一输入快捷键与所述第一功能之间的关联关系,并将所述关联关系与所述第一用户进行绑定;以使在监听到所述第一用户触发所述第一输入快捷键的情况下,执行所述第一功能对应的操作。
[0242]
在一些实施例中,信息处理装置170还包括采集单元,
[0243]
用于在监听到所述第一用户输入的第二输入快捷键的情况下,针对所述第二输入快捷键,执行以下处理:
[0244]
若所述第二输入快捷键不属于第一服务支持的快捷键,通过第二服务在所述第一采集周期采集所述第一采集周期对应的第一信息子集合;所述第一服务为浏览器服务;所述第二服务为集成开发环境ide服务;
[0245]
若所述第二输入快捷键属于所述第一服务支持的快捷键,通过所述第一服务采集所述第二输入快捷键,并通过所述第二服务在所述第一采集周期采集信息,所述第一服务采集的所述第二输入快捷键和所述第二服务采集的信息组成所述第一采集周期对应的第一信息子集。
[0246]
在一些实施例中,确定单元1703,还用于:
[0247]
基于所述第一信息集合,确定所述第一输入快捷键对应的功能集合,所述功能集合包括至少一个功能子集合,一个功能子集合包括一个第一信息子集合中第一输入快捷键对应的功能;
[0248]
基于所述功能集合所包括的功能子集合,确定所述功能集合中每一功能对应的链表,所述链表表征所述功能在所述功能集合中的出现位置;
[0249]
针对每个所述功能,计算所述功能对应的关联度,所述关联度表征所述功能与所述第一输入快捷键之间的关联程度;
[0250]
在第二功能的关联度与第三功能的关联度之差大于关联度差阈值的情况下,确定所述第二功能为所述第一功能;所述第二功能的关联度大于所述功能集合包括的功能中除所述第二功能之外的功能的关联度;所述第三功能的关联度小于所述第二功能的关联度,且大于所述功能集合包括的功能中除所述第二功能与所述第三功能之外的功能的关联度。
[0251]
在一些实施例中,信息处理装置170还包括删除单元,
[0252]
用于在确定单元1702执行所述基于所述功能集合所包括的功能子集合,确定所述功能集合中每一功能对应的链表之前,统计所述功能集合包括的每个功能的频率;所述功能的频率为所述功能集合中所述功能的数量与所述功能子集合的数量之比;
[0253]
将所述功能集合包括的功能子集合中的第四功能删除;所述第四功能的频率小于频率阈值。
[0254]
在一些实施例中,确定单元1703还用于:
[0255]
将所述功能对应的链表的长度除以参考长度,得到链表的长度比值;所述链表的长度表征所述功能集合中包括所述功能的功能子集合的数量;
[0256]
将所述功能对应的链表的权重除以参考权重,得到权重比值;所述链表的权重为与所述链表表征的出现位置相关;
[0257]
将所述链表的长度比值与所述权重比值相乘,得到所述功能对应的关联度。
[0258]
在一些实施例中,配置单元1704还用于:。
[0259]
获取第一输入快捷键、以及所述第一功能对应的内置快捷键;所述内置快捷键与所述第一功能之间存在第一关联关系;
[0260]
将所述第一输入快捷键与扩展快捷键列表中的扩展快捷键做匹配;
[0261]
若命中所述扩展快捷键列表中的扩展快捷键,则建立命中的扩展快捷键与所述内置快捷键之间的第二关联关系;
[0262]
若没有命中所述扩展快捷键列表池中的扩展快捷键,则在所述扩展快捷键列表中增加所述第一输入快捷键;建立所述第一输入快捷键与所述内置快捷键之间的第三关联关系。
[0263]
在一些实施例中,第一获得单元1701,
[0264]
获取第一用户设备的至少一个维度的设备信息;
[0265]
将所述至少一个维度的设备信息组合后进行哈希计算,得到所述第一用户标识。
[0266]
在一些实施例中,处理单元还用于:
[0267]
通过所述第一用户设备绘制第一图像;所述第一图像包括二维图像或三维图像中的至少一项;所述第一图像表征设备之间的区别配置信息;
[0268]
将所述第一图像转换为第一数据;所述第一数据为通过打印字符表示所述第一图像的二进制数据;
[0269]
对所述第一数据进行哈希运算,得到第一维度的设备信息;所述第一维度的设备信息表征所述第一用户的设备配置信息;所述至少一个维度包括所述第一维度。
[0270]
需要说明的是,本技术实施例提供的信息处理装置包括所包括的各单元,可以通过电子设备中的处理器来实现;当然也可通过具体的逻辑电路实现;在实施的过程中,处理器可以为中央处理器(cpu,central processing unit)、微处理器(mpu,micro processor unit)、数字信号处理器(dsp,digital signal processor)或现场可编程门阵列(fpga,field-programmable gate array)等。
[0271]
以上装置实施例的描述,与上述方法实施例的描述是类似的,具有同方法实施例相似的有益效果。对于本技术装置实施例中未披露的技术细节,请参照本技术方法实施例的描述而理解。
[0272]
需要说明的是,本技术实施例中,如果以软件功能模块的形式实现上述的信息处理方法,并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术实施例的技术方案本质上或者说对相关技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机、服务器、或者网络设备等)执行本技术各个实施例所述方法的全部或部分。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read only memory,rom)、磁碟或者光盘等各种可以存储程序代码的介质。这样,本技术实施例不限制于任何特定的硬件和软件结合。
[0273]
为实现上述信息处理方法,本技术实施例提供一种电子设备,包括存储器和处理器,所述存储器存储有可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述实施例中提供的信息处理方法中的步骤。
[0274]
下面结合图18所示的电子设备180,对电子设备的结构图进行说明。
[0275]
在一示例中,电子设备180可以为上述电子设备。如图18所示,所述电子设备180包括:一个处理器1801、至少一个通信总线1802、用户接口1803、至少一个外部通信接口1804和存储器1805。其中,通信总线1802配置为实现这些组件之间的连接通信。其中,用户接口1803可以包括显示屏,外部通信接口1804可以包括标准的有线接口和无线接口。
[0276]
存储器1805配置为存储由处理器1801可执行的指令和应用,还可以缓存待处理器1801以及电子设备中各模块待处理或已经处理的数据(例如,图像数据、音频数据、语音通信数据和视频通信数据),可以通过闪存(flash)或随机访问存储器(random access memory,ram)实现。
[0277]
第四方面,本技术实施例提供一种存储介质,也就是计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述实施例中提供的信息处理方法中的步骤。
[0278]
这里需要指出的是:以上存储介质和设备实施例的描述,与上述方法实施例的描述是类似的,具有同方法实施例相似的有益效果。对于本技术存储介质和设备实施例中未披露的技术细节,请参照本技术方法实施例的描述而理解。
[0279]
应理解,说明书通篇中提到的“一个实施例”或“一实施例”意味着与实施例有关的特定特征、结构或特性包括在本技术的至少一个实施例中。因此,在整个说明书各处出现的“在一个实施例中”或“在一些实施例中”未必一定指相同的实施例。此外,这些特定的特征、结构或特性可以任意适合的方式结合在一个或多个实施例中。应理解,在本技术的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本技术实施例的实施过程构成任何限定。上述本技术实施例序号仅仅为了描述,不代表实施例的优劣。
[0280]
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
[0281]
在本技术所提供的几个实施例中,应该理解到,所揭露的设备和方法,可以通过其它的方式实现。以上所描述的设备实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,如:多个单元或组件可以结合,或可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的各组成部分相互之间的耦合、或直接耦合、或通信连接可以是通过一些接口,设备或单元的间接耦合或通信连接,可以是电性的、机械的或其它形式的。
[0282]
上述作为分离部件说明的单元可以是、或也可以不是物理上分开的,作为单元显示的部件可以是、或也可以不是物理单元;既可以位于一个地方,也可以分布到多个网络单元上;可以根据实际的需要选择其中的部分或全部单元来实现本实施例方案的目的。
[0283]
另外,在本技术各实施例中的各功能单元可以全部集成在一个处理单元中,也可以是各单元分别单独作为一个单元,也可以两个或两个以上单元集成在一个单元中;上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
[0284]
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:移动存储设备、只读存储器(read only memory,rom)、磁碟或者光盘等各种可以存储程序代码的介质。
[0285]
或者,本技术上述集成的单元如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术实施例的技术方案本质上或者说对相关技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机、服务器、或者网络设备等)执行本技术各个实施例所述方法的全部或部分。而前述的存储介质包括:移动存储设备、rom、磁碟或者光盘等各种可以存储程序代码的介质。
[0286]
以上所述,仅为本技术的实施方式,但本技术的保护范围并不局限于此,任何熟悉
本技术领域的技术人员在本技术揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本技术的保护范围之内。因此,本技术的保护范围应以所述权利要求的保护范围为准。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献