蓝牙扫描方法和电子设备
1.本案是申请专利号为202110297745.9,申请日为2019年04月16日,发明名称为“蓝牙扫描方法和电子设备”的分案申请。
技术领域
2.本技术涉及电子技术领域,尤其涉及一种蓝牙扫描方法和电子设备。
背景技术:3.随着蓝牙功能在电子设备的不断发展,电子设备上蓝牙功能在用户的生活中应用越来越广泛。电子设备上蓝牙功能可用于开启车锁、协助其他设备进行人脸支付等场景,为用户带来便利性。
4.以蓝牙功能开启车锁为例,用户可以打开电子设备中的车钥匙对应的应用以及电子设备上的蓝牙扫描功能。当电子设备的处理器通过蓝牙芯片扫描到汽车对应的设备标识后,汽车可以通过来自车钥匙对应的应用进行安全验证,验证通过则打开车锁。
5.上述利用蓝牙功能开启车锁的过程中,需要用户的实时操作,从而降低了便利性。而若电子设备中处理器保持长时间对汽车的设备标识的扫描结果进行监测,会明显增加电子设备功耗和内存的占用。
技术实现要素:6.本技术公开了一种蓝牙扫描方法和电子设备,可提高业务执行的便利性,并降低电子设备功耗和内存的占用。
7.第一方面,本技术实施例提供一种蓝牙扫描方法,该方法用于电子设备,所述电子设备包含蓝牙芯片和蓝牙代理模块;所述蓝牙芯片与所述蓝牙代理模块连接;所述方法包括:所述蓝牙代理模块指示所述蓝牙芯片扫描设备标识;若扫描到所述设备标识中的第一设备标识,所述蓝牙芯片通知所述蓝牙代理模块;所述蓝牙代理模块根据所述第一设备标识,与所述第一设备之间建立通路,或通知所述第一设备标识对应的应用。蓝牙代理模块指示蓝牙芯片扫描设备标识。
8.其中,扫描到第一设备标识,可以是指,该第一设备标识在应用注册过程存储在蓝牙芯片中。第一设备即为外部蓝牙设备。第一设备标识即为本技术实施例中的第一设备标识信息。第一设备标识例如是外部蓝牙设备的uuid。
9.其中,电子设备处于休眠状态(例如电子设备处于息屏休眠状态)的情况下,当蓝牙芯片检测到接收的设备标识不包含在蓝牙芯片预存的设备标识列表时,蓝牙代理模块可处于休眠状态。当蓝牙芯片检测到接收的第一设备标识包含在蓝牙芯片预存的设备标识列表,蓝牙芯片唤醒蓝牙代理模块,并向蓝牙代理模块发送第一设备标识。上述的蓝牙扫描方法中,在蓝牙芯片扫描到设备标识中的第一设备标识时,上述的蓝牙代理模块才被启动。电子设备中的蓝牙代理模块和应用处理器无需一直处于工作状态,从而降低了电子设备的功耗和内存的占用。
10.上述的蓝牙扫描方法中,该蓝牙代理模块可运行应用,无需用户手动运行应用,从而实现对用户来说无感执行的过程,提高了业务执行流程的便利性。蓝牙代理模块可运行应用,电子设备中该应用无需一直运行,该应用可被应用处理器结束运行,从而进一步降低了电子设备的功耗和内存的占用。
11.上述的蓝牙扫描方法中,蓝牙代理模块可与se连接,无需运行应用,直接建立蓝牙芯片与蓝牙设备之间的蓝牙通路,从而进一步降低了电子设备的功耗和内存的占用。蓝牙代理模块还为与蓝牙相关的业务执行流程提供一个蓝牙扫描的管理平台。
12.本技术实施例中,在电子设备上注册应用的阶段蓝牙代理模块指示蓝牙芯片需要扫描哪些设备标识。
13.在一种可能的实现方式中,蓝牙代理模块根据所述第一设备标识,与所述第一设备之间建立通路之后,还包括:所述蓝牙代理模块获取所述第一设备标识对应的业务信息,将所述业务信息通过所述通路发送给所述第一设备。
14.可选的,蓝牙代理模块还与安全存储区域(例如se或者tee)连接。所述蓝牙代理模块获取所述第一设备标识对应的业务信息,将所述业务信息通过所述通路发送给所述第一设备,包括:所述蓝牙代理模块从安全存储区域中获取所述第一设备标识对应的业务信息,并将所述业务信息通过所述通路发送给所述第一设备。
15.可选的,所述业务信息是校验信息,所述校验信息用于所述第一设备根据本地存储的信息和所述校验信息进行校验,校验通过执行相应的业务。
16.在一种可能的实现方式中,所述业务信息是校验结果信息,所述校验结果信息用于发送给服务器以根据所述校验结果信息执行相应的业务。
17.其中,第一设备可以与服务器建立通信连接,该业务信息例如是来自电子设备中se的指纹比对结果。本地进行指纹校验,然后将校验结果发送给服务器,可提高用户身份信息(例如指纹)的安全性,减少信息泄露的风险。
18.在一种可能的实现方式中,所述业务信息是校验电子车钥匙相关的信息,所述执行相应的业务是指打开相应车锁。
19.上述的开启车锁的场景中,在蓝牙芯片检测到蓝牙广播信号来自的设备(蓝牙设备)在电子设备上已注册后,蓝牙代理模块才被启动。电子设备中的蓝牙代理模块和应用处理器无需一直处于工作状态,从而降低了电子设备的功耗和内存的占用。
20.上述的业务执行方法流程,无需运行应用,直接建立se与蓝牙设备之间的蓝牙通路,从而降低了电子设备的功耗和内存的占用。
21.上述的业务执行方法流程,不需要用户手动运行应用,实现对用户来说无感执行业务的过程,提高了业务执行流程的便利性。
22.上述的业务执行方法流程,无需保持应用始终处于运行状态,从而进一步降低了电子设备的功耗和内存的占用。本技术实施例中,蓝牙代理模块还为与蓝牙相关的业务执行流程提供一个建立蓝牙通路的管理平台。
23.在一种可能的实现方式中,所述蓝牙代理模块根据所述第一设备标识,与所述第一设备之间建立通路之后,所述方法还包括:所述蓝牙代理模块通知所述第一设备标识对应的应用;所述应用获取所述第一设备标识对应的业务信息;所述应用将所述第一设备标识对应的业务信息发送给所述蓝牙代理模块;所述蓝牙代理模块通过所述通路将所述第一
设备标识对应的业务信息发送给所述第一设备。
24.其中,应用还与安全存储区域(例如se或者tee)连接。所述应用获取所述第一设备标识对应的业务信息,包括:所述应用从安全存储区域中获取所述第一设备标识对应的业务信息。
25.在一种可能的实现方式中,所述蓝牙代理模块根据所述第一设备标识,通知所述第一设备标识对应的应用之后,所述方法还包括:所述蓝牙代理模块将来自所述第一设备的业务信息发送给所述应用,以使所述应用将所述业务信息显示给用户。
26.第一设备可以是体重秤,业务信息可以是体重信息。
27.电子设备上该应用可通过蓝牙广播信号与体重秤建立通路,体重秤可将实时检测的体重数据上传给应用。上述上传数据到体重秤的过程中,无需用户手动操作电子设备上的应用,即可实现无感上传数据到体重秤。
28.上述体重秤向应用上传体重信息的流程中,建立蓝牙设备与蓝牙芯片之间的蓝牙连接的过程中,在蓝牙芯片检测到蓝牙广播信号来自的设备(体重秤)在电子设备上已注册后,蓝牙代理模块才被启动。电子设备中的蓝牙代理模块和应用处理器无需一直处于工作状态,从而降低了电子设备的功耗和内存的占用。
29.上述体重秤向应用上传体重信息的流程中,不需要用户手动运行应用,实现对用户来说无感执行的过程,提高了业务执行流程的便利性。
30.上述体重秤向应用上传体重信息的流程中,无需保持应用始终处于运行状态,从而进一步降低了电子设备的功耗和内存的占用。本技术实施例中,蓝牙代理模块还为蓝牙相关的业务执行流程提供一个管理平台。
31.在一种可能的实现方式中,所述蓝牙代理模块根据所述第一设备标识,通知所述第一设备标识对应的应用,包括:所述蓝牙代理模块根据所述第一设备标识,运行所述第一设备标识对应的应用,将所述第一设备标识发送给所述应用;所述蓝牙代理模块根据所述第一设备标识,通知所述第一设备标识对应的应用之后,所述方法还包括:所述应用从所述第一设备获取业务信息,将所述业务信息和用户账户信息发送服务器,以使所述服务器根据所述应用发送的所述业务信息和所述用户账户信息,以及所述第一设备获取的用户信息进行校验,校验通过则执行业务交易。
32.在一种可能的实现方式中,所述用户信息为人脸图像,所述执行执行业务交易是指以所述用户账户信息为交易账户执行支付交易。
33.可选的,如果应用已处于运行状态,则无需执行运行应用。
34.在支付交易的场景中,在蓝牙芯片接收到的蓝牙广播信号来自的设备在电子设备上已注册后,蓝牙代理模块才被启动。电子设备中的蓝牙代理模块和应用处理器无需一直处于工作状态,从而降低了电子设备的功耗和内存的占用。
35.在支付交易的场景中,该蓝牙代理模块可运行应用,无需用户手动运行应用,从而实现对用户来说无感执行业务交易的过程,提高了业务交易流程的便利性。
36.在支付交易的场景中,蓝牙代理模块可运行应用,电子设备中该应用无需一直运行,可被应用处理器结束运行,从而进一步降低了电子设备的功耗和内存的占用。
37.在支付交易的场景中,蓝牙代理模块还为与蓝牙相关的业务交易流程提供一个蓝牙扫描的管理平台。
38.在支付交易场景下,业务信息可以是第一设备身份信息,第一设备身份信息可以同第一设备标识一起,由蓝牙芯片发送给蓝牙代理模块。其中,第一设备身份信息可以是第一设备的设备id。该设备id与第一设备一一对应。
39.在一种可能的实现方式中,所述蓝牙代理模块指示所述蓝牙芯片扫描设备标识之前,所述方法还包括:在检测到蓝牙扫描功能关闭的情况下,所述蓝牙代理模块打开所述蓝牙扫描功能。蓝牙代理模块可打开蓝牙扫描功能,从而无需用户手动打开蓝牙扫描功能,实现对用户来说无感执行业务交易的过程,提高了业务交易流程的便利性。
40.在一种可能的实现方式中,所述蓝牙代理模块是应用程序框架层的应用/接口。
41.在一种可能的实现方式中,所述蓝牙代理模块指示所述蓝牙芯片扫描设备标识之前,所述方法还包括:所述蓝牙代理模块对所述应用进行权限校验;在所述权限校验通过的情况下,所述蓝牙代理模块将所述第一设备标识发送给所述蓝牙芯片,以使所述蓝牙芯片在扫描到所述第一设备标识时通知所述蓝牙代理模块。
42.在一种可能的实现方式中,所述蓝牙代理模块对所述应用进行权限校验,包括:所述蓝牙代理模块检测所述第一设备标识是否包含在本地存储的合法设备标识列表中,在包含在所述合法设备标识列表中的情况下,权限校验通过。通过电子设备本地存储的合法设备标识列表校验应用,可节省校验流程,提高校验过程对设备内存的占用和功耗。
43.在一种可能的实现方式中,所述蓝牙代理模块对所述应用进行权限校验之前,所述方法还包括:所述应用从服务器获取用于证明所述应用权限的第一证书;所述蓝牙代理模块对所述应用进行权限校验,包括:所述蓝牙代理模块根据所述第一证书对所述应用进行权限校验。
44.其中,在应用安装到电子设备上时,应用可向服务器发送用于请求下发第一证书的消息,然后服务器向应用发送第一证书。在另一种可能的实现方式中,应用安装到电子设备上时,服务器即下发第一证书给应用。通过服务器下发的证书来完成应用的身份校验,减少了本地进行校验被篡改的情况,可提高身份校验的安全性。
45.安装时进行权限校验的应用和参与业务执行流程的应用可以是相同的应用,也可以是不同的应用。如果是不同的应用,则参与业务执行流程的应用与服务器连接,并与蓝牙代理模块连接。
46.可选的,在所述权限校验通过的情况下,所述方法还包括:所述蓝牙代理模块存储所述应用的注册信息;所述注册信息指示所述蓝牙代理模块根据所述第一设备标识与所述第一设备之间建立通路;或所述注册信息指示所述蓝牙代理模块根据所述第一设备标识通知所述第一设备标识对应的应用。
47.其中,所述注册信息可包含option,option可指示接收数据的实体为应用,且蓝牙芯片扫描到第一设备标识后,唤醒应用。
48.其中,注册信息还可以是同证书一起由应用发送给蓝牙代理模块的。
49.在一种可能的实现方式中,所述方法还包括:当所述应用从所述电子设备上卸载时,所述蓝牙代理模块通知所述蓝牙芯片停止对所述第一设备标识进行扫描。
50.可选的,蓝牙芯片可删除存储的应用对应的设备标识。蓝牙代理模块还可以删除应用的注册信息。
51.第二方面,本技术实施例提供了一种蓝牙扫描方法,该方法用于电子设备,电子设
备包含蓝牙代理模块和安全单元se,se包括小应用程序applet;该方法包括:电子设备扫描第一设备广播的蓝牙广播信号,其中蓝牙广播信号携带第一设备的设备标识;若电子设备扫描到第一设备的设备标识与电子设备保存的设备标识信息匹配,向第一设备发送蓝牙连接请求;电子设备与第一设备的蓝牙连接成功后,蓝牙代理模块接收来自第一设备的密文校验指令;蓝牙代理模块从se的所述applet获取第一密文,并向第一设备发送第一密文,其中,第一密文校验通过时使得第一设备执行相应的业务。
52.在一种可能的实现方式中,第一密文是校验电子车钥匙相关的信息,执行相应的业务是指打开相应车锁。
53.在一种可能的实现方式中,蓝牙代理模块是应用程序框架层的应用/接口。
54.在一种可能的实现方式中,电子设备还包含可信执行环境tee,tee包含可信执行环境应用ta;在蓝牙代理模块接收来自第一设备的密文校验指令之后,该方法还包括:蓝牙代理模块从tee的ta获取第二密文,并向第一设备发送第二密文,其中,第二密文校验通过时使得第一设备执行相应的业务。
55.在一种可能的实现方式中,蓝牙代理模块通过开放移动联盟应用编程接口oma api与se连接;蓝牙代理模块与tee连接。
56.在一种可能的实现方式中,在检测到蓝牙扫描功能关闭的情况下,蓝牙代理模块打开电子设备的蓝牙扫描功能。
57.在一种可能的实现方式中,在电子设备扫描第一设备广播的蓝牙广播信号之后,该方法还包括:蓝牙代理模块对第一设备进行权限校验;在权限校验通过的情况下,电子设备存储第一设备的设备标识,以使电子设备在扫描到第一设备的设备标识时通知蓝牙代理模块。
58.在一种可能的实现方式中,蓝牙代理模块对第一设备进行权限校验,包括:蓝牙代理模块检测所述第一设备的设备标识是否包含在本地存储的合法设备标识列表中,在第一设备的设备标识包含在合法设备标识列表中时,权限校验通过。
59.在一种可能的实现方式中,电子设备还包含第一设备对应的应用,该方法还包括:当第一设备对应的应用从电子设备上卸载时,蓝牙代理模块通知电子设备停止对第一设备的设备标识进行扫描。
60.第三方面,本技术实施例提供了一种蓝牙扫描系统,该系统包括电子设备和第一设备,电子设备包含蓝牙代理模块和安全单元se,se包括小应用程序applet;该系统包括:第一设备广播的蓝牙广播信号,其中,蓝牙广播信号携带第一设备的设备标识;若电子设备扫描到第一设备的设备标识与电子设备保存的设备标识信息匹配,向第一设备发送蓝牙连接请求;
61.电子设备与第一设备的蓝牙连接成功后,第一设备向蓝牙代理模块发送密文校验指令;蓝牙代理模块从se的applet获取第一密文,并向第一设备发送第一密文;若第一设备校验第一密文通过,第一设备执行相应的业务。
62.在一种可能的实现方式中,第一密文是校验电子车钥匙相关的信息,执行相应的业务是指打开相应车锁。
63.在一种可能的实现方式中,第一设备检测电子设备与第一设备之间的距离;第一设备广播的蓝牙广播信号,具体包括:第一设备检测到电子设备与第一设备之间的距离小
于等于第一预设距离时,第一设备广播的蓝牙广播信号;第一设备向蓝牙代理模块发送密文校验指令,具体包括:第一设备检测到电子设备与第一设备之间的距离小于等于第二预设距离时,第一设备向蓝牙代理模块发送密文校验指令,第二预设距离小于第一预设距离;第一设备执行相应的业务,具体包括:第一设备检测到电子设备与第一设备之间的距离小于第三预设距离时,第一设备执行相应的业务,第三预设距离小于所述第二预设距离。
64.在一种可能的实现方式中,该系统还包括服务器,第一密文是用户指纹和/或人脸图像与预设的指纹和/或预设人脸图像的比对结果;第一设备执行相应的业务是指将第一密文发送给服务器。
65.第四方面,本技术实施例提供了一种电子设备,包括:一个或多个处理器、存储器、蓝牙代理模块和安全单元se,se包括小应用程序applet,蓝牙代理模块和安全单元se连接;其中:所述存储器用于存储计算机程序代码,所述计算机程序代码包括计算机指令,当所述一个或多个处理器执行所述计算机指令时,使得所述电子设备执行如第一方面、第二方面任一种可能的实施方式提供的蓝牙扫描方法。
66.第五方面,本技术提供了一种计算机存储介质,包括计算机指令,当所述计算机指令在电子设备上运行时,使得所述电子设备执行如第一方面、第二方面任一种可能的实施方式提供的蓝牙扫描方法。
67.第六方面,本技术实施例提供一种计算机程序产品,当计算机程序产品在计算机上运行时,使得计算机执行如第一方面、第一方面任一种可能的实施方式提供的蓝牙扫描方法。
68.可以理解地,上述提供的第四方面所述的电子设备、第五方面所述的计算机存储介质、或者第六方面所述的计算机程序产品均用于执行第一方面、或第二方面的任一种可能的实施方式所提供的蓝牙扫描方法。因此,其所能达到的有益效果可参考对应方法中的有益效果,此处不再赘述。
附图说明
69.下面对本技术实施例用到的附图进行介绍。
70.图1是本技术实施例提供的一种蓝牙系统的架构示意图;
71.图2是本技术实施例提供的电子设备10的结构示意图;
72.图3是本技术实施例的电子设备10的软件结构框图;
73.图4是现有技术提供的一种蓝牙系统的架构示意图;
74.图5是本技术实施例提供的一种蓝牙系统的架构示意图;
75.图6是现有技术提供的一种蓝牙系统的架构示意图;
76.图7是现有技术提供的一种业务交易方法的流程示意图;
77.图8是本技术实施例提供的一种蓝牙系统的架构示意图;
78.图9是本技术实施例提供的一种蓝牙系统的架构示意图;
79.图10是本技术实施例提供的app 102注册过程的流程示意图;
80.图11是本技术实施例的一种应用界面示意图;
81.图12是本技术实施例提供的一种业务执行方法的流程示意图;
82.图13是本技术实施例提供的app 102注销的流程示意图;
83.图14是本技术实施例提供的一种蓝牙系统的架构示意图;
84.图15是本技术实施例提供的app 102注册过程的流程示意图;
85.图16是本技术实施例提供的一种业务执行方法的流程示意图;
86.图17是本技术实施例提供的一种蓝牙系统的架构示意图;
87.图18是本技术实施例提供的一种蓝牙系统的架构示意图;
88.图19是本技术实施例提供的一种业务执行方法的流程示意图;
89.图20是本技术实施例提供的一种电子设备10的结构示意图;
90.图21是本技术实施例提供的一种蓝牙扫描方法的流程示意图。
具体实施方式
91.下面结合本技术实施例中的附图对本技术实施例进行描述。本技术实施例的实施方式部分使用的术语仅用于对本技术的具体实施例进行解释,而非旨在限定本技术。
92.首先介绍本技术实施例涉及的应用场景。蓝牙功能在无感业务中的应用越来越广泛。无感业务包括无感开启车锁、无感支付等。下面分别结合系统架构以无感开启车锁和无感支付的应用场景为例进行介绍。
93.可以理解的,本技术实施例不限于上述应用场景,还可以包含其他蓝牙功能实现的业务过程,例如,蓝牙电子秤等,本技术实施例对此不作限定。
94.请参阅图1,图1是本技术实施例提供的一种蓝牙系统的架构示意图。如图1所示,该蓝牙系统包含电子设备10和蓝牙设备20(例如汽车20)。其中汽车20可广播蓝牙广播信号。用户在携带电子设备10靠近汽车20的过程中,电子设备10可接收到蓝牙广播信号。电子设备10上可安装有与汽车20对应的应用(application,app)。电子设备10上该app可通过蓝牙广播信号与汽车建立通信连接,并完成安全验证,安全验证成功后自动开启汽车20的车锁。上述开启汽车20的车锁的过程中,无需用户手动操作电子设备10上的app,即可实现无感自动开启汽车20的车锁。
95.下面对本技术实施例涉及蓝牙系统中的电子设备10进行介绍。请参阅图2,图2是本技术实施例提供的电子设备10的结构示意图。
96.电子设备10可以包括处理器110,外部存储器接口120,内部存储器121,通用串行总线(universal serial bus,usb)接口130,充电管理模块140,电源管理模块141,电池142,天线1,天线2,移动通信模块150,无线通信模块160,音频模块170,扬声器170a,受话器170b,麦克风170c,耳机接口170d,传感器模块180,按键190,马达191,指示器192,摄像头193,显示屏194,以及用户标识模块(subscriber identification module,sim)卡接口195等。其中传感器模块180可以包括压力传感器180a,陀螺仪传感器180b,气压传感器180c,磁传感器180d,加速度传感器180e,距离传感器180f,接近光传感器180g,指纹传感器180h,温度传感器180j,触摸传感器180k,环境光传感器180l,骨传导传感器180m等。
97.可以理解的是,本发明实施例示意的结构并不构成对电子设备10的具体限定。在本技术另一些实施例中,电子设备10可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
98.处理器110可以包括一个或多个处理单元。
99.处理器110中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器110中的存储器为高速缓冲存储器。该存储器可以保存处理器110刚用过或循环使用的指令或数据。如果处理器110需要再次使用该指令或数据,可从所述存储器中直接调用。避免了重复存取,减少了处理器110的等待时间,因而提高了系统的效率。
100.在一些实施例中,处理器110可以包括一个或多个接口。接口可以包括集成电路(inter-integrated circuit,i2c)接口,集成电路内置音频(inter-integrated circuit sound,i2s)接口,脉冲编码调制(pulse code modulation,pcm)接口,通用异步收发传输器(universal asynchronous receiver/transmitter,uart)接口,移动产业处理器接口(mobile industry processor interface,mipi),通用输入输出(general-purpose input/output,gpio)接口,用户标识模块(subscriber identity module,sim)接口,和/或通用串行总线(universal serial bus,usb)接口等。
101.充电管理模块140用于从充电器接收充电输入。
102.电源管理模块141用于连接电池142,充电管理模块140与处理器110。电源管理模块141接收电池142和/或充电管理模块140的输入,为处理器110,内部存储器121,外部存储器,显示屏194,摄像头193,和无线通信模块160等供电。
103.电子设备10的无线通信功能可以通过天线1,天线2,移动通信模块150,无线通信模块160,调制解调处理器以及基带处理器等实现。
104.天线1和天线2用于发射和接收电磁波信号。电子设备10中的每个天线可用于覆盖单个或多个通信频带。
105.移动通信模块150可以提供应用在电子设备10上的包括2g/3g/4g/5g等无线通信的解决方案。移动通信模块150可以包括至少一个滤波器,开关,功率放大器,低噪声放大器(low noise amplifier,lna)等。移动通信模块150可以由天线1接收电磁波,并对接收的电磁波进行滤波,放大等处理,传送至调制解调处理器进行解调。移动通信模块150还可以对经调制解调处理器调制后的信号放大,经天线1转为电磁波辐射出去。
106.无线通信模块160可以提供应用在电子设备10上的包括无线局域网(wireless local area networks,wlan)(如无线保真(wireless fidelity,wi-fi)网络),蓝牙(bluetooth,bt),全球导航卫星系统(global navigation satellite system,gnss),调频(frequency modulation,fm),近距离无线通信技术(near field communication,nfc),红外技术(infrared,ir)等无线通信的解决方案。无线通信模块160可以是集成至少一个通信处理模块的一个或多个器件。无线通信模块160经由天线2接收电磁波,将电磁波信号调频以及滤波处理,将处理后的信号发送到处理器110。
107.无线通信模块160包含本技术实施例提供的蓝牙芯片101,即图8~图10、图12~图19所示出的蓝牙芯片101。
108.在一些实施例中,电子设备10的天线1和移动通信模块150耦合,天线2和无线通信模块160耦合,使得电子设备10可以通过无线通信技术与网络以及其他设备通信。
109.电子设备10通过gpu,显示屏194,以及应用处理器等实现显示功能。gpu为图像处理的微处理器,连接显示屏194和应用处理器。
110.显示屏194用于显示图像,视频等。
111.电子设备10可以通过isp,摄像头193,视频编解码器,gpu,显示屏194以及应用处
理器等实现拍摄功能。
112.isp用于处理摄像头193反馈的数据。
113.摄像头193用于捕获静态图像或视频。物体通过镜头生成光学图像投射到感光元件。感光元件把光信号转换成电信号,之后将电信号传递给isp转换成数字图像信号。
114.外部存储器接口120可以用于连接外部存储卡,例如micro sd卡,实现扩展电子设备10的存储能力。外部存储卡通过外部存储器接口120与处理器110通信,实现数据存储功能。
115.内部存储器121可以用于存储计算机可执行程序代码,所述可执行程序代码包括指令。处理器110通过运行存储在内部存储器121的指令,从而执行电子设备10的各种功能应用以及数据处理。内部存储器121可以包括存储程序区和存储数据区。
116.电子设备10可以通过音频模块170,扬声器170a,受话器170b,麦克风170c,耳机接口170d,以及应用处理器等实现音频功能。例如音乐播放,录音等。
117.电子设备10也可以包含各类传感器。
118.电子设备10的软件系统可以采用分层架构,事件驱动架构,微核架构,微服务架构,或云架构。本发明实施例以分层架构的android系统为例,示例性说明电子设备10的软件结构。
119.图3是本技术实施例的电子设备10的软件结构框图。
120.分层架构将软件分成若干个层,每一层都有清晰的角色和分工。层与层之间通过软件接口通信。在一些实施例中,将android系统分为四层,从上至下分别为应用程序层,应用程序框架层,安卓运行时(android runtime)和系统库,以及内核层。
121.应用程序层可以包括一系列应用程序包。
122.如图3所示,应用程序包可以包括相机,图库,日历,通话,地图,导航,wlan,蓝牙,音乐,视频,短信息等应用程序。
123.应用程序框架层为应用程序层的应用程序提供应用编程接口(application programming interface,api)和编程框架。应用程序框架层包括一些预先定义的函数。
124.如图3所示,应用程序框架层可以包括窗口管理器,内容提供器,视图系统,电话管理器,资源管理器,通知管理器等。应用程序框架层还可以包含本技术实施例提供的蓝牙代理模块105,即图8~10、图12~19所示出示例中的蓝牙代理模块105。蓝牙代理模块105可以是应用程序框架层的应用/接口。
125.窗口管理器用于管理窗口程序。窗口管理器可以获取显示屏大小,判断是否有状态栏,锁定屏幕,截取屏幕等。
126.内容提供器用来存放和获取数据,并使这些数据可以被应用程序访问。所述数据可以包括视频,图像,音频,拨打和接听的电话,浏览历史和书签,电话簿等。
127.视图系统包括可视控件,例如显示文字的控件,显示图片的控件等。视图系统可用于构建应用程序。显示界面可以由一个或多个视图组成的。
128.电话管理器用于提供电子设备10的通信功能。例如通话状态的管理(包括接通,挂断等)。
129.资源管理器为应用程序提供各种资源,比如本地化字符串,图标,图片,布局文件,视频文件等等。
130.通知管理器使应用程序可以在状态栏中显示通知信息,可以用于传达告知类型的消息,可以短暂停留后自动消失,无需用户交互。比如通知管理器被用于告知下载完成,消息提醒等。通知管理器还可以是以图表或者滚动条文本形式出现在系统顶部状态栏的通知。
131.蓝牙代理模块105,用于指示蓝牙芯片扫描设备标识。蓝牙代理模块还用于根据第一设备标识,与外部蓝牙设备之间建立通路,或通知外部蓝牙设备标识对应的应用。
132.android runtime包括核心库和虚拟机。android runtime负责安卓系统的调度和管理。
133.核心库包含两部分:一部分是java语言需要调用的功能函数,另一部分是安卓的核心库。
134.应用程序层和应用程序框架层运行在虚拟机中。
135.系统库可以包括多个功能模块。例如:表面管理器(surface manager),媒体库(media libraries),三维图形处理库(例如:opengl es),2d图形引擎(例如:sgl)等。
136.内核层是硬件和软件之间的层。内核层至少包含显示驱动,摄像头驱动,音频驱动,传感器驱动。
137.下面结合电子设备10和汽车20的结构介绍图1所示场景中开启汽车20的过程。请参阅图4,图4是现有技术提供的一种蓝牙系统的架构示意图。如图4所示,电子设备10和汽车20可建立通信连接,该通信连接可以是蓝牙连接。具体的,在图1所示出的场景中,可以是在用户携带电子设备10靠近汽车20的过程中,电子设备10与汽车20建立蓝牙通信连接。
138.如图4所示,电子设备10包含蓝牙芯片101、app 102、开放移动联盟应用编程接口(open mobile alliance application programming interface,oma api)103和安全单元(secure element,se)104,se 104中包含小应用程序(applet)。汽车20包含车载蓝牙芯片201和车机se 202。车机se 202中包含车载applet。其中,oma api 103是一种通过富执行环境(rich execution environment,ree)调用se中applet的接口。车载蓝牙芯片201和车机se 202之间也可以通过车机oma api连接。se 104的applet中可包含用于开锁的密文。车机se 202中也包含用于开锁的密文。se 104的applet中的密文与车机se 202中的密文一一对应。
139.示例性的,当车钥匙服务开通时,车厂的后台服务器分别与电子设备10的se 104和汽车20的车机se 202建立安全通道,将相同的密文分别放入se 104和se 202中。
140.其中,蓝牙芯片101与app 102连接。app 102通过oma api 103与se 104建立连接。车载蓝牙芯片201可持续广播蓝牙广播信号。蓝牙芯片101可检测该蓝牙广播信号,然后检测该蓝牙广播信号来自的汽车20是否是已注册的设备。下面介绍一种检测蓝牙广播信号来自的设备在电子设备10上是否已注册的实现方式,蓝牙芯片101内存储有汽车20的设备标识信息(例如汽车20的通用唯一识别码(universally unique identifier,uuid)),而车载蓝牙芯片201广播的蓝牙广播信号中包含汽车20的设备标识信息,蓝牙芯片101接收到该蓝牙广播信号后检测到汽车20的设备标识信息有存储在蓝牙芯片101,则蓝牙芯片101确定蓝牙广播信号来自的设备(汽车20)在电子设备10上已注册。
141.作为一种可能的实现方式,同一品牌的汽车可具有相同的设备标识信息,或者同一型号的汽车可具有相同的设备标识信息。
142.电子设备10中的应用处理器(application processor,ap)可监测蓝牙芯片101的扫描结果。蓝牙芯片101扫描到汽车20是在电子设备10上已注册的设备,如果app 102在电子设备10上处于运行状态,则汽车20与电子设备10上的app 102建立通信通路。该通信通路可用于业务执行过程中车载蓝牙芯片201与app 102之间的通信。
143.可以理解的,电子设备10中密文不限于存储在se 104的applet中,还可以存储在其他安全存储区中,例如存储在可信执行环境(trusted execution environment,tee)中的应用(trusted execution environment application,ta)中。则蓝牙代理模块105可建立与汽车20之间的通路.蓝牙代理模块105可从tee中获取业务信息,通过该通路发送给汽车20。
144.汽车20可通过该蓝牙通路向电子设备10发送密文校验指令。电子设备10接收到该密文校验指令后,将se 104的applet中的密文经由该蓝牙连接发送给汽车20。汽车20将接收到的密文与车机se 202中的密文进行比对,比对通过(例如两密文相同则比对通过)则开启汽车20的车锁。
145.上述开启汽车20的车锁的过程中,需要用户手动打开app 102和蓝牙扫描开关,降低了开启汽车20的车锁的便利性。另外,电子设备10中的ap需要监测蓝牙芯片101的扫描结果,增加了电子设备10的功耗和内存的占用。
146.下面介绍本技术实施例涉及的无感支付场景。请参阅图5,图5是本技术实施例提供的一种蓝牙系统的架构示意图。如图5所示,该蓝牙系统包含电子设备10、蓝牙设备30(例如支付设备30)和服务器40。
147.其中,电子设备10可与服务器40建立通信连接,支付设备30可与服务器40建立通信连接。支付设备30可广播蓝牙广播信号。用户在携带电子设备10靠近支付设备30时,电子设备10可接收到蓝牙广播信号。电子设备10上可安装有与支付设备30对应的app。该app例如是微信,则服务器40为微信服务器。在需要支付时,用户面向支付设备30,支付设备30采集人脸图像,上传给服务器40。服务器40可完成用户人脸验证,自动完成支付业务过程。上述人脸支付的过程中,无需用户手动操作电子设备10上的app,即可实现无感支付。
148.下面结合电子设备10和支付设备30的结构介绍图6所示场景中无感支付的过程。请参阅图6,图6是本技术实施例提供的一种蓝牙系统的架构示意图。如图6所示,电子设备10包含蓝牙芯片101和app 102。其中,蓝牙芯片101与app 102连接。支付设备30可持续广播蓝牙广播信号。
149.请参阅图7,图7是现有技术提供的一种业务交易方法的流程示意图。如图7所示,基于图7和图8所描述的系统架构,该业务交易方法包括步骤s101~s108。
150.s101、支付设备30广播蓝牙广播信号。
151.蓝牙广播信号中携带设备身份信息和设备标识信息(例如uuid)。示例性的,设备身份信息可包含设备id。其中,设备id可唯一标识支付设备30。uuid可标识能够连接app 102和服务器40的支付设备。例如,对于支付宝应用,能够连接支付宝应用和支付宝服务器的支付设备有相同的uuid,该uuid可保存在蓝牙芯片101中。或者,能够连接支付宝应用和支付宝服务器的支付设备的uuid为某几个uuid中的一个。该几个uuid可保存在蓝牙芯片101中。
152.s102、蓝牙芯片101接收来自支付设备30的蓝牙广播信号,检测蓝牙广播信号来自
的设备(支付设备30)是否已在电子设备10上注册。
153.关于蓝牙扫描(即检测蓝牙广播信号来自的设备是否在电子设备10上已注册)可参考图2所描述示例中的具体描述,这里不再赘述。该蓝牙芯片101可以是低功耗蓝牙(bluetooth low energy,ble)芯片,则电子设备10上蓝牙扫描开关打开时,蓝牙芯片101才可执行步骤s102。
154.s103、电子设备10的应用处理器对蓝牙芯片101进行监测,监测到蓝牙广播信号来自的设备(支付设备30)已在电子设备10上注册时,运行app 102。
155.应用处理器在监测到蓝牙广播信号来自的设备已注册后可检测app 102是否运行,如果未运行,则执行步骤s104运行app 102。对于安卓8.0之后的系统,电子设备10的ap可通过步骤s103自动运行app 102。
156.s104、app 102将携带设备身份信息和账户id的消息发送给服务器40。
157.app可将携带设备id和账户id的消息发送给服务器40。设备id可以是蓝牙芯片101从蓝牙广播信号中获取并发送给app 102的。服务器40可获取能够接收到支付设备30蓝牙广播信号的一个或多个账户id。例如,当前在支付设备30附近的电子设备的数量为10个,且这10个电子设备上均安装有支付宝应用且开启了无感支付业务。这10个电子设备上的支付宝应用中每个支付宝应用均登陆有支付宝账户id(例如支付宝账号)。则对于10个电子设备上每个电子设备,通过步骤s101~s104,来自外部蓝牙设备51的业务信息(例如设备身份信息)可传输到app 102,并由app 102传输给服务器40。服务器40可通过获取这10个电子设备上每个电子设备上的支付宝账户id。步骤s105~s108执行人脸比对来确定从哪个支付宝账户id中执行交易过程。
158.s105、支付设备30采集人脸图像。
159.s106、支付设备30将采集的人脸图像和设备id发送给服务器40。
160.设备id与支付设备30一一对应。
161.s107、服务器40根据接收的人脸图像和设备id识别得到账户id。
162.服务器40在接收到人脸图像和设备id后,可根据设备id确定已上传业务信息(例如设备身份信息)的账户id。示例性的,前例中服务器40可根据设备id确定10个支付宝账户id通过支付设备30向服务器40上传业务信息(例如设备身份信息)。服务器40可获取这10个支付宝账户id中每个账户id对应的人脸图像。然后将从支付设备30接收到的人脸图像与这10个人脸图像进行比对,则可得到接收到的人脸图像对应的支付宝账户id。
163.服务器40上可存储有账户id和对应的人脸图像,该人脸图像可以是用户预存的。账户对应的人脸图像还可以是服务器40从其他设备(例如电子设备10)中获取的,本技术实施例对此不作限定。
164.s108、服务器40根据账户id,完成业务交易。
165.服务器40可将步骤s107得到的账户id作为扣款账户,完成业务交易。
166.上述无感支付的过程中,步骤s102中,电子设备10的应用处理器在蓝牙扫描过程中需要一直处于工作状态来监测蓝牙广播信号来自的设备在电子设备10上是否已注册,增加了电子设备10的功耗和内存的占用。另外,电子设备10上用于启动蓝牙扫描的蓝牙扫描开关默认关闭,从而影响蓝牙扫描,降低了支付过程的便利性。
167.本技术实施例提供一种业务执行方法,可提高业务执行过程的便利性,并降低电
子设备10的功耗和内存的占用。该业务执行方法所涉及的电子设备10中包含蓝牙代理模块(bluetooth agent)。请参阅图8,图8是本技术实施例提供的一种蓝牙系统的架构示意图。如图8所示,该蓝牙系统包含电子设备10、蓝牙设备50(例如汽车、支付设备等)和服务器40。
168.如图8所示,电子设备10包含蓝牙芯片101、app 102、oma api 103、se 104、蓝牙代理模块105、tee106和app 1021和app 1022。app1021和app 1022可以是不同的业务应用(例如一个是支付应用,另一个是汽车20关联的应用)。app 1021和app 1022中每个应用对应有蓝牙设备。例如app 1021对应蓝牙设备51,app 1022对应蓝牙设备52。
169.本技术实施例中,安装时进行权限校验的应用和参与业务执行流程的应用可以是相同的app,也可以是不同的app。如果是不同的app,则参与业务执行流程的app与服务器40连接,并与蓝牙代理模块连接。
170.app 1021对应的蓝牙设备数量可以是多个。蓝牙设备的设备标识信息在蓝牙代理模块105和蓝牙芯片101上有存储,且在电子设备10上对应一个app。app 1022对应的蓝牙设备也可以是多个。如支付宝应用对应可对应多个支付设备,可在这多个支付设备上完成业务执行流程。
171.关于蓝牙芯片101、oma api 103、se 104和tee106的描述可参考图2所示示例。关于app 1021和app 1022和服务器40可参考图6所示示例。
172.本技术实施例以app 1021为支付应用、蓝牙设备51为其对应的支付设备为例,以app1022为汽车应用、蓝牙设备52为其对应的汽车为例介绍。
173.其中,蓝牙代理模块105与app 1022连接。蓝牙代理模块105还与tee 106连接,蓝牙代理模块105还通过oma api 103与se 104连接。
174.开启车锁场景下,在蓝牙芯片101检测到蓝牙广播信号来自的设备已在电子设备10上注册时,启动该蓝牙代理模块105。该蓝牙代理模块105可与外部蓝牙设备建立通路,且蓝牙代理模块105与se 104连接,从而se 104中的业务信息(例如密文)可传输给外部蓝牙设备(例如汽车等)。蓝牙代理模块105还与tee 106连接,从而tee106中的业务信息(例如密文)也可传输给外部蓝牙设备(例如汽车等)。
175.支付场景下,蓝牙芯片101与蓝牙代理模块105连接,蓝牙代理模块105与app 1021连接,app 1021与服务器40建立通信连接。蓝牙设备51与服务器40建立通信连接。该业务方法中,当蓝牙芯片101扫描到设备标识中的第一设备标识时,蓝牙芯片101通知蓝牙代理模块105。蓝牙代理模块105可唤醒app 1021,来自外部蓝牙设备51的业务信息(例如蓝牙设备51的设备id)可传输到app 1021。而app 1021与服务器40建立通信连接,从而实现来自外部蓝牙设备51的业务信息(例如蓝牙设备51的设备id)传输到服务器40。服务器40可根据从app 1021传输过来的业务信息和从蓝牙设备51采集的用户信息(例如人脸图像)完成业务蓝牙芯片101上存储的设备标识是校验通过的应用对应的设备标识。即第一设备标识对应的应用已在电子设备10上校验通过。
176.在蓝牙芯片101扫描到设备标识中的第一设备标识时,上述的蓝牙代理模块105才被启动。电子设备10中的蓝牙代理模块105和应用处理器无需一直处于工作状态,从而降低了电子设备10的功耗和内存的占用。
177.本技术实施例中,该蓝牙代理模块可运行app,无需用户手动运行app,从而实现对用户来说无感执行的过程,提高了业务执行流程的便利性。
102。再例如,该通信者的id还可以为ta的uuid,则在扫描到蓝牙广播信号时可唤醒app 102与外部蓝牙设备建立通路。又例如,该通信者的id还可以为applet的身份标识(applet identification,aid),则在扫描到蓝牙广播信号时可唤醒app 102与外部蓝牙设备建立通路。
196.④
第一设备标识信息:app 102希望扫描的蓝牙设备的身份标识信息,示例性的包括不限于外部蓝牙设备的uuid;
197.在一种可能的实现方式中,app 102对应一个uuid列表。该uuid列表包含一个或多个uuid。对于uuid列表中的每个uuid来说,蓝牙代理模块105均对该uuid对应的外部蓝牙设备广播的蓝牙广播信号交易通过。
198.⑤
option:接收业务信息的实体:app 102、tee 106中ta或者se 104中applet等。以及蓝牙芯片101扫描到第一设备标识信息后,是否唤醒app 102。
199.s202、蓝牙代理模块105根据第一注册信息对app 102进行权限校验。
200.在一种可能的实现方式中,蓝牙代理模块105上可存储有多个app的app_id,这多个app_id是蓝牙代理模块105认可的。蓝牙代理模块105检测第一注册信息中的app_id是否包含在存储的多个app_id中。如果第一注册信息中的app_id包含在存储的多个app_id中,则权限校验通过,执行步骤s203。如果第一注册信息中的app_id不包含在存储的多个app_id中,则权限校验不通过,结束。
201.可以理解的,上述对权限校验过程的举例仅用于解释本技术实施例,不应构成限定,蓝牙代理模块105还可以有其他的权限校验方法,本技术实施例对此不做限定。
202.本技术实施例中,蓝牙代理模块105可位于图7所示示例中的应用程序框架层,可以是应用程序框架层的应用/接口。蓝牙代理模块105不限于位于应用程序框架层,还可以位于其他层。
203.s203、在权限校验通过的情况下,蓝牙代理模块105将第一设备标识信息发送给蓝牙芯片101。
204.蓝牙芯片101可存储权限校验通过的设备标识信息。示例性的,蓝牙代理模块105对于app1权限校验通过,app1的注册信息中包含uuid1、uuid2、uuid3和uuid4。蓝牙代理模块105对于app2权限校验通过,app2的注册信息中包含uuid5和uuid6。则蓝牙芯片101可接收并存储有uuid1、uuid2、uuid3、uuid4、uuid5和uuid6。
205.可以理解的,本技术实施例以设备标识信息为uuid为例进行介绍,但是设备标识信息不限于uuid,还可以是其他设备信息。
206.在一种可能的实现方式中,在权限校验通过的情况下,蓝牙代理模块105存储app 102的第一注册信息。蓝牙代理模块105可通过该第一注册信息和蓝牙芯片101扫描到的uuid,找到对应的app,或者对应的ta,或者对应的applet。
207.s204、蓝牙代理模块105检测蓝牙芯片101的蓝牙扫描功能是否打开。
208.其中,蓝牙芯片101的蓝牙扫描功能打开的情况下,蓝牙芯片101可接收蓝牙广播信号,并检测蓝牙广播信号上携带的设备标识信息是否存储在蓝牙芯片101上。蓝牙芯片101的蓝牙扫描功能关闭的情况下,蓝牙芯片101不能接收蓝牙广播信号。
209.s205、在检测到蓝牙芯片101的蓝牙扫描功能未打开的情况下,蓝牙代理模块105打开蓝牙扫描功能。
210.示例性的,若蓝牙芯片101为ble蓝牙芯片,可调用enableble来打开蓝牙扫描功能。
211.请参阅图11,图11是本技术实施例的一种应用界面示意图。该应用界面100为系统设置中的应用界面。如图11中的(a)所示,该应用界面100上包含蓝牙扫描开关1001、蓝牙扫描提示1002、wlan扫描开关1011和wlan扫描提示1012。
212.其中,蓝牙扫描开关1001处于开启状态时,蓝牙扫描功能打开。蓝牙扫描开关1001处于关闭状态时,蓝牙扫描功能关闭。当蓝牙扫描开关1001处于关闭状态时,通过步骤s105可将蓝牙扫描开关1001改变为开启状态,从而打开蓝牙扫描功能。
213.如图11中的(a)所示,蓝牙扫描提示1002提示:允许应用和服务随时扫描附近的设备,即使蓝牙已关闭。这可用于改进基于位置的功能和服务。蓝牙关闭而蓝牙扫描开关1001打开时,蓝牙芯片101仍然能够执行步骤s206中的扫描。
214.wlan扫描开关1011处于开启状态时,wlan扫描功能打开。wlan扫描开关1011处于关闭状态时,wlan扫描功能关闭。wlan扫描提示1012提示:允许应用和服务随时扫描wlan网络,即使wlan已关闭。这可用于改进基于位置的功能和服务。
215.s206、蓝牙芯片101执行扫描。
216.蓝牙芯片101执行扫描的过程,可接收蓝牙广播信号,并检测蓝牙广播信号上携带的uuid是否存储在蓝牙芯片101上。
217.通过步骤s201~s206,app 102在电子设备10上完成注册。完成注册后,电子设备10可响应用户操作在该app 102上登陆账户。例如,对于支付宝应用,完成注册后,电子设备10可响应用户操作在支付宝应用上登陆支付宝账号,该支付宝账号可以是支付宝应用在电子设备10上的账户id。登陆账户的过程中例如需要验证账户id对应的账户密码。
218.在一些可能的实现方式中,电子设备10上的设置界面上可包含蓝牙代理模块的设置入口。如图11中的(b)所示,设置界面200包含蓝牙代理模块的设置入口201。响应于用户对蓝牙代理模块的设置入口201的用户操作,例如点击操作,电子设备10显示蓝牙代理模块设置界面300。如图11中的(b)所示,蓝牙代理模块设置界面300包含蓝牙代理模块开关301、开关指示302和已注册应用列表303。其中:
219.响应于用户对蓝牙代理模块开关301的点击操作,蓝牙代理模块可执行对应用的权限校验完成应用的注册,即执行步骤s201~s206。
220.开关指示302,可指示蓝牙代理模块开关30的功能:打开后允许蓝牙代理模块校验安装应用的身份。使得应用实现无感支付、无感开车锁等。
221.已注册应用列表303,可包含已在电子设备10上通过步骤s201~s206完成注册的应用标识。示例性的,已注册应用列表303包含支付宝标识3031和蓝牙车钥匙标识3032。可选的,已注册应用列表303中的应用标识可按照应用类别分类显示,例如分类为支付类应用和其他应用。
222.(b)交易过程
223.完成注册并登陆账户后,电子设备10可执行本技术实施例提供的业务执行方法。请参阅图12,图12是本技术实施例提供的一种业务交易方法的流程示意图。该业务交易方法基于图9所示出的系统架构,该业务交易方法包含步骤s301~s310。
224.s301、蓝牙设备50广播蓝牙广播信号。
102,从而实现对用户来说无感执行业务交易的过程,提高了业务交易流程的便利性。
245.本技术实施例中,蓝牙代理模块105可运行app 102,电子设备10中该app 102无需一直运行,可被应用处理器结束运行,从而进一步降低了电子设备10的功耗和内存的占用。
246.本技术实施例中,蓝牙代理模块105还为与蓝牙相关的业务交易流程提供一个蓝牙扫描的管理平台。
247.在一种可能的实现方式中,步骤s302中蓝牙扫描功能可以是用户手动开启蓝牙扫描开1001实现的,参考图11。在另一种可能的实现方式中,蓝牙扫描功能还可以是电子设备10检测到蓝牙扫描功能未打开的情况下打开的,例如在图12所描述注册过程示例中通过步骤s204~s205蓝牙代理模块105打开蓝牙扫描功能。在注册完成后进行业务交易过程中蓝牙代理模块105也可自动打开蓝牙扫描功能。蓝牙代理模块105可打开蓝牙扫描功能,从而无需用户手动打开蓝牙扫描功能,实现对用户来说无感执行业务交易的过程,提高了业务交易流程的便利性。
248.(c)注销过程
249.电子设备10上注册完成的app 102还可以响应于用户操作进行注销。下面具体介绍本技术实施例提供的注销过程。请参阅图13,图13是本技术实施例提供的app 102注销的流程示意图。该app 102注销过程包含步骤s401~s406。
250.s401、当检测到app 102被卸载时,蓝牙代理模块105向蓝牙芯片101发送第一通知。第一通知指示蓝牙芯片101停止扫描第一设备标识信息。
251.其中,第一设备标识信息即为app 102在注册时的注册信息中包含的第一设备标识信息。示例性的,如果app 102在注册时的注册信息中包含的第一设备标识信息为:uuid1、uuid2、uuid3和uuid4。则第一通知指示蓝牙芯片101停止扫描uuid1、uuid2、uuid3和uuid4。执行步骤s402后,蓝牙芯片101在检测到蓝牙广播信号中包含uuid1、uuid2、uuid3和uuid4时认为蓝牙广播信号来自的设备在电子设备10上未注册,也不再唤醒蓝牙代理模块105。
252.本技术实施例中,应用处理器可检测到app 102被卸载,并广播指示app 102被卸载的广播。蓝牙代理模块105通过该指示app 102被卸载的广播来确定检测到app 102被卸载,并执行步骤s401。
253.s402、蓝牙芯片101根据第一通知,停止扫描第一设备标识信息。
254.蓝牙芯片101可删除存储的app 102对应的设备标识信息。步骤s401示例中,蓝牙芯片101可删除存储的uuid1、uuid2、uuid3和uuid4。
255.s403、蓝牙代理模块105删除app 102的注册信息。
256.其中,步骤s403还可以是在步骤s402之前执行的。
257.在执行完上述app 102注销过程之后,蓝牙芯片101在检测到蓝牙广播信号中包含第一设备标识信息时认为蓝牙广播信号来自的设备在电子设备10上未注册,也不再唤醒蓝牙代理模块105,不再建立蓝牙通路。
258.(2)无感开启汽车车锁
259.该业务执行方法基于图1所描述的系统架构。以该业务执行过程为无感开启汽车车锁为例,蓝牙设备60可以是图1所示的汽车20。可以理解的,本技术实施例以无感开启汽车车锁的场景为例进行介绍,还可以是其他的业务场景,本技术实施例对此不作限定。
260.请参阅图14,图14是本技术实施例提供的一种蓝牙系统的架构示意图。如图14所示,该蓝牙系统包含电子设备10、蓝牙设备60(例如汽车20)和服务器70。如图14所示,电子设备10包含蓝牙芯片101、蓝牙代理模块105、app 102、oma api 103、se 104和tee 106。其中,oma api 103——se 104和tee 106二者在该蓝牙系统中可仅含一个,也可以同时包含这两个。其中,蓝牙芯片101与蓝牙代理模块105建立连接,蓝牙代理模块105与tee 106连接,且蓝牙代理模块105通过oma api 103与se 104连接。
261.在使用该系统架构进行无感开启汽车车锁之前,用户需要在电子设备10上安装app 102,电子设备10完成注册过程。下面分别对以下过程进行介绍:(d)注册过程;(e)业务执行过程。本技术实施例中,app 102的注销过程可参考图13所述示例的具体描述,这里不再赘述。
262.(d)注册过程
263.下面结合图14所示系统架构和图15所示流程介绍注册过程。请参阅图15,图15是本技术实施例提供的app 102注册过程的流程示意图。该app 102注册过程包含步骤s501~s506。
264.s501、当app 102被安装到电子设备10上时,app 102从服务器70获取第一证书。
265.本技术实施例中,如果蓝牙代理模块105上未存储app 102的app id,app 102可从服务器70上获取第一证书。该第一证书可用于向蓝牙代理模块105证明app 102的权限。
266.在一种可能的实现方式中,在app 102安装到电子设备10上时,app 102可向服务器70发送用于请求下发第一证书的消息,然后服务器70向app 102发送第一证书。在另一种可能的实现方式中,app 102安装到电子设备10上时,服务器70即下发第一证书给app 102。
267.s502、app 102向蓝牙代理模块105发送第一注册信息和第一证书。
268.可选的,app 102还可以向蓝牙代理模块105发送第一证书。该第一证书即可向蓝牙代理模块105证明app 102的权限,从而在步骤s503中对app 102权限校验通过。
269.s503、蓝牙代理模块105根据第一注册信息和第一证书对app 102进行权限校验。
270.s504、在权限校验通过的情况下,蓝牙代理模块105将第一设备标识信息发送给蓝牙芯片101。
271.s505、蓝牙代理模块105检测蓝牙芯片101的蓝牙扫描功能是否打开。
272.s506、在检测到蓝牙芯片101的蓝牙扫描功能未打开的情况下,蓝牙代理模块105打开蓝牙扫描功能。
273.s507、蓝牙芯片101执行扫描。
274.下面对步骤s502中的第一证书和步骤s503中进行权限校验的过程进行介绍。
275.第一证书是一个经证书授权中心(certificate authority,ca)数字签名的数字证书。该证书授权中心是蓝牙代理模块105认可的。第一证书可包含服务器70的公开密钥、服务器70的名称以及证书授权中心的数字签名。当使用该第一证书向蓝牙代理模块105进行身份认证时,第一证书可随机生成身份码。每份数字证书都能生成相应的身份码但每次生成的身份码都不相同。
276.第一证书是含有服务器70的身份信息并经过认证中心审核签发的电子数据。因此,该第一证书可以通过证书授权中心的数字签名向蓝牙代理模块105证明服务器70经过证书授权中心认证。
277.而蓝牙代理模块105上保存有证书授权中心的公开密钥,通过该证书授权中心的公开密钥来验证第一证书中证书授权中心的数字签名,验证通过后则表明权限校验通过,进而执行步骤s504~s507。
278.关于步骤s504~s507可参考图10所示示例中步骤s203~s206的描述,这里不再赘述。
279.(e)业务执行过程
280.完成注册并登陆账户后,电子设备10可执行本技术实施例提供的业务执行方法。请参阅图16,图16是本技术实施例提供的一种业务执行方法的流程示意图。该业务执行方法以建立外部蓝牙设备60到se 104之间的蓝牙通路为例,建立外部蓝牙设备60到tee 106之间的蓝牙通路类似。该业务执行方法基于图14所示出的系统架构,该业务执行方法包含步骤s601~s608。
281.s601、蓝牙设备60广播蓝牙广播信号。
282.其中,蓝牙广播信号可携带第一设备标识信息(例如第一uuid)和第一设备身份信息(例如第一设备id)。该第一设备身份信息与蓝牙设备50一一对应。
283.s602、蓝牙芯片101接收来自蓝牙设备60的蓝牙广播信号,检测接收到的蓝牙广播信号来自的设备在电子设备10上是否已注册。
284.电子设备10处于休眠状态下(例如电子设备10处于息屏休眠状态下),当蓝牙芯片101检测到蓝牙广播信号来自的设备(蓝牙设备50)在电子设备10上未注册时,蓝牙代理模块105可处于休眠状态。
285.s603、当检测到蓝牙广播信号来自的设备在电子设备10上已注册时,蓝牙芯片101唤醒蓝牙代理模块105,并发送第一设备标识信息。
286.其中,蓝牙代理模块105在图10所示注册过程的步骤s203中存储第一注册信息。蓝牙代理模块105通过第一设备标识信息找到该第一注册信息。其中,第一注册信息中
⑤
option可指示接收数据的实体为tee 106,且蓝牙芯片101扫描到第一设备标识信息后,不唤醒app102。当检测到蓝牙广播信号来自的设备在电子设备10上已注册时,蓝牙代理模块105可建立与蓝牙设备60之间的通路。则通过步骤s601~s603建立蓝牙代理模块105与外部蓝牙设备之间的通路,蓝牙代理模块105可获取tee106的业务信息传输给外部蓝牙设备。
287.步骤s603之后,用户可通过携带电子设备10靠近蓝牙设备60时执行交易过程(例如无感开启汽车车锁),参考步骤s604~s608。关于步骤s307~s310可参考图7所示示例中步骤s105~s108的描述,这里不再赘述。
288.示例性的,在蓝牙设备60为汽车20实现开车锁的场景下,汽车20可在检测到与电子设备10之间距离小于或等于一个设定距离(例如30米)时执行步骤s601~s603建立蓝牙通路过程。在通过步骤s601~s603建立蓝牙代理模块105与汽车20的通路之后,汽车20可实时检测电子设备10与汽车20之间的距离。当汽车20检测到与电子设备10之间的距离小于或等于设定距离(例如10米)时,汽车20可执行步骤s604~s607完成校验过程。当汽车20检测到与电子设备10之间的距离小于或等于设定距离(例如3米)时,执行步骤s608打开车锁。
289.s604、蓝牙设备60经过通路向蓝牙代理模块105发送密文校验指令。
290.其中,密文校验指令可通过数字签名加密传输。密文校验指令中可包含蓝牙设备60的数字签名,例如,包含蓝牙设备60自身的私有密钥的数字签名。而蓝牙代理模块105可
存储有蓝牙设备60自身私有密钥对应的公共密钥。蓝牙代理模块105接收到密文校验指令后先使用该公共密钥对蓝牙设备60的数字签名进行验证。验证通过则执行步骤s605。
291.s605、蓝牙代理模块105从se 104的applet获取第一密文。
292.s606、蓝牙代理模块105通过蓝牙芯片101向蓝牙设备60发送第一密文。
293.其中,第一密文在步骤s606的传输过程中,可加密传输,本技术实施例对加密的方法不作限定。
294.s607、蓝牙设备60将第一密文与se中的密文进行比对。
295.s608、密文比对通过,蓝牙设备60开启蓝牙设备60的车锁。
296.例如,第一密文和蓝牙设备60se的applet中密文相同则比对通过。
297.上述的业务执行方法流程,在蓝牙芯片101检测到蓝牙广播信号来自的设备(蓝牙设备60)在电子设备10上已注册后,蓝牙代理模块105才被启动。电子设备10中的蓝牙代理模块105和应用处理器无需一直处于工作状态,从而降低了电子设备10的功耗和内存的占用。
298.上述的业务执行方法流程,无需运行app 102,直接建立se 104与蓝牙设备60之间的蓝牙通路,从而降低了电子设备10的功耗和内存的占用。
299.上述的业务执行方法流程,不需要用户手动运行app 102,实现对用户来说无感执行业务的过程,提高了业务执行流程的便利性。
300.上述的业务执行方法流程,无需保持app 102始终处于运行状态,从而进一步降低了电子设备10的功耗和内存的占用。本技术实施例中,蓝牙代理模块105还为与蓝牙相关的业务执行流程提供一个建立蓝牙通路的管理平台。
301.在一种可能的实现方式中,步骤s602中蓝牙扫描功能可以是用户手动开启蓝牙扫描开1001实现的,参考图11。在另一种可能的实现方式中,蓝牙扫描功能还可以是电子设备10检测到蓝牙扫描功能未打开的情况下打开的,例如在图15所描述注册过程示例中通过步骤s505~s506蓝牙代理模块105打开蓝牙扫描功能。在注册完成后进行业务过程中蓝牙代理模块105也可自动打开蓝牙扫描功能。蓝牙代理模块105可打开蓝牙扫描功能,从而无需用户手动打开蓝牙扫描功能,实现对用户来说无感执行业务的过程,提高了业务执行流程的便利性。
302.在本技术的另一些实施例中,app 102还可以通过oma api 103和se 104建立连接。第一注册信息中
⑤
option可指示接收数据的实体为se 104,且蓝牙芯片101扫描到第一设备标识信息后,唤醒app 102。则在步骤s603之后,蓝牙代理模块105唤醒app 102。蓝牙代理模块105可与外部蓝牙设备60建立通路,且蓝牙代理模块105与se 104连接,从而se 104中的业务信息(例如密文)可传输给蓝牙设备60(例如汽车等)。
303.本技术实施例中,蓝牙设备60还可以与服务器70建立通信连接,如图14所示。蓝牙设备60可通过该通信连接与服务器70交互业务信息。该业务信息例如是来自电子设备10中se 104的指纹比对结果。
304.具体的,建立蓝牙代理模块105与外部蓝牙设备之间的通路之后,如果在交易过程中服务器70需要在电子设备10上验证用户身份,例如验证用户指纹或者验证用户人脸图像,则电子设备10验证完成后可经由蓝牙设备60将比对结果发送给服务器70。以指纹验证为例,首先,电子设备10将检测到的指纹和预存的指纹进行比对,将比对结果存储在电子设
备10的se 104中。蓝牙代理模块105从se 104中获取该比对结果。蓝牙代理模块105通过蓝牙连接将该比对结果发送给蓝牙设备60。蓝牙设备60通过与服务器70之间的通信连接将该比对结果发送给服务器70,来完成交易过程。
305.可以理解的,蓝牙设备60与服务器70之间的通信连接不限于上述功能举例,还可以用于在业务执行流程中其他业务信息的传输,本技术实施例对此不作限定。
306.对于无感开启汽车车锁的业务执行过程,在app 102注册过程中也可以无需通过服务器70。蓝牙代理模块105本身存储有app 102的app_id,通过该app 102的app_id,蓝牙代理模块105可对app进行权限校验。具体的,请参阅图17,图17是本技术实施例提供的一种蓝牙系统的架构示意图。如图17所示,该蓝牙系统包含电子设备10和蓝牙设备80(例如汽车20)。如图17所示,电子设备10包含蓝牙芯片101、蓝牙代理模块105、app 102、oma api 103、se 104和tee 106。其中,oma api 103——se 104和tee 106二者在该蓝牙系统中可仅含一个,也可以同时包含这两个。其中,蓝牙芯片101与蓝牙代理模块105建立连接,蓝牙代理模块105与tee 106连接,且蓝牙代理模块105通过oma api 103与se 104连接。
307.在电子设备10上安装app 102之后需要对app完成注册过程。该注册过程可具体参考图10所描述实施例,仅在电子设备10即可完成注册过程。业务执行过程可具体参考图16所描述实施例。该注册过程和业务执行过程均无需与服务器交互。业务注销过程可参考图13所示出示例的具体描述。这里不再赘述。
308.(3)自动上传数据到体重秤
309.该业务执行方法以无感上传业务信息(例如体重信息)到电子设备为例进行介绍,蓝牙设备50可以是体重秤90。可以理解的,本技术实施例以自动上传数据到体重秤90的场景为例进行介绍,还可以是其他的业务场景,本技术实施例对此不作限定。电子设备10可接收到蓝牙广播信号。电子设备10上可安装有与体重秤90对应的app102。电子设备10上该app 102可通过蓝牙广播信号与体重秤90建立建立通路,体重秤90可将实时检测的体重数据上传给app 102。上述上传数据到体重秤90的过程中,无需用户手动操作电子设备10上的app 102,即可实现无感上传数据到体重秤90。
310.请参阅图18,图18是本技术实施例提供的一种蓝牙系统的架构示意图。如图18所示,该蓝牙系统包含蓝牙设备(例如体重秤90)和电子设备10。
311.如图18所示,电子设备10包含蓝牙芯片101、蓝牙代理模块105和app 102。其中,蓝牙芯片101与蓝牙代理模块105建立连接,蓝牙代理模块105与app 102建立连接。
312.在电子设备10上安装app 102之后需要对app完成注册过程。该注册过程可具体参考图10所描述实施例,仅在电子设备10即可完成注册过程。
313.完成注册并登陆账户后,电子设备10可执行本技术实施例提供的一种业务执行方法。请参阅图19,图19是本技术实施例提供的一种业务执行方法的流程示意图。如图19所示,该业务执行方法包含步骤s701~s706。
314.s701、蓝牙设备90广播蓝牙广播信号。
315.其中,蓝牙广播信号可携带第一设备标识信息(例如第一uuid)和第一设备身份信息(例如第一设备id)。该第一设备身份信息与蓝牙设备50一一对应。
316.s702、蓝牙芯片101接收蓝牙广播信号,检测蓝牙广播信号来自的设备(蓝牙设备90)在电子设备10上是否已注册。
317.电子设备10处于休眠状态下(例如电子设备10处于息屏休眠状态下),当蓝牙芯片101检测到蓝牙广播信号来自的设备(蓝牙设备90)在电子设备10上未注册时,蓝牙代理模块105可处于休眠状态。
318.s703、当检测到蓝牙广播信号来自的设备在电子设备10上已注册时,蓝牙芯片101唤醒蓝牙代理模块105,并发送第一设备标识信息。
319.s704、蓝牙代理模块105根据第一设备标识信息和第一注册信息运行app 102。
320.关于步骤s701~s704的描述可参考图12所描述的业务执行方法的步骤s301~s304的具体描述。
321.当检测到蓝牙广播信号来自的设备在电子设备10上已注册时,通过步骤s701~s704,蓝牙代理模块105可以建立与蓝牙设备90之间的通路,来自蓝牙设备90的业务信息(例如体重信息)可传输到蓝牙代理模块105。蓝牙代理模块105可唤醒app,并向app 102传输该业务信息(例如体重信息)。
322.可选的,来自外部蓝牙设备90的业务信息(例如体重信息)还可以是通过广播信号的形式由蓝牙芯片101接收,传输给蓝牙代理模块105。然后业务信息由蓝牙代理模块105传输给app 102。
323.s705、蓝牙设备90检测体重信息。
324.该体重信息可包括:体重值、体脂值、健康指数等数据。示例性的,该体重信息可通过蓝牙连接发送给app 102。
325.s706、蓝牙设备90将体重信息通过蓝牙设备90与app 102之间的通路发送给app 102。
326.app 102可保存该体重信息,app 102还可以显示该体重信息。
327.上述的方法流程,建立蓝牙设备90与蓝牙芯片101之间的蓝牙连接的过程中,在蓝牙芯片101检测到蓝牙广播信号来自的设备(蓝牙设备90)在电子设备10上已注册后,蓝牙代理模块105才被启动。电子设备10中的蓝牙代理模块105和应用处理器无需一直处于工作状态,从而降低了电子设备10的功耗和内存的占用。
328.上述体重秤向应用上传体重信息的流程中,不需要用户手动运行app 102,实现对用户来说无感执行的过程,提高了业务执行流程的便利性。
329.上述体重秤向应用上传体重信息的流程中,无需保持app 102始终处于运行状态,从而进一步降低了电子设备10的功耗和内存的占用。本技术实施例中,蓝牙代理模块105还为蓝牙相关的业务执行流程提供一个管理平台。
330.在另一种可能的实现方式中,蓝牙扫描功能还可以是电子设备10检测到蓝牙扫描功能未打开的情况下打开的,例如在注册过程示例中通过蓝牙代理模块105打开蓝牙扫描功能。在注册完成后进行业务执行过程中蓝牙代理模块105也可自动打开蓝牙扫描功能。蓝牙代理模块105可打开蓝牙扫描功能,从而无需用户手动打开蓝牙扫描功能,实现对用户来说无感执行业务的过程,提高了业务执行流程的便利性。
331.请参阅图20,图20是本技术实施例提供的一种电子设备10的结构示意图。该方法是电子设备10上执行的,该电子设备10可以是图8、图9、图14、图17和图18中任一个系统架构中的电子设备10。如图20所示,电子设备10包含蓝牙芯片101和蓝牙代理模块105;蓝牙芯片101与蓝牙代理模块105连接。
332.请参阅图21,图21是本技术实施例提供的一种蓝牙扫描方法的流程示意图。如图21所示,基于图20所描述的电子设备10以及图8、图9、图14、图17和图18中任一个系统架构,该蓝牙扫描方法包括步骤s801~s803。
333.s801、蓝牙代理模块指示蓝牙芯片扫描设备标识。
334.本技术实施例中,在电子设备上注册应用的阶段蓝牙代理模块指示蓝牙芯片需要扫描哪些设备标识。关于应用的注册阶段,可参考图10、图15所描述示例,这里不再赘述。
335.其中,设备标识例如是外部蓝牙设备的uuid。
336.s802、若扫描到设备标识中的第一设备标识,蓝牙芯片通知蓝牙代理模块。
337.其中,扫描到第一设备标识,可以是指,该第一设备标识对应的应用在注册过程存储在蓝牙芯片中,蓝牙芯片检测到该第一设备标识已存储在了蓝牙芯片中。即是说蓝牙广播信号来自的第一设备在电子设备10上已注册。本技术实施例中,第一设备可以是外部蓝牙设备,例如支付设备或者汽车。
338.s803、蓝牙代理模块根据第一设备标识,与第一设备之间建立通路,或通知第一设备标识对应的应用。
339.其中,电子设备10处于休眠状态(例如电子设备10处于息屏休眠状态)的情况下,当蓝牙芯片101检测到接收的设备标识不包含在蓝牙芯片101预存的设备标识列表时,蓝牙代理模块105可处于休眠状态。当蓝牙芯片101检测到接收的第一设备标识包含在蓝牙芯片101预存的设备标识列表,蓝牙芯片101唤醒蓝牙代理模块105,并向蓝牙代理模块105发送第一设备标识。上述的蓝牙扫描方法中,在蓝牙芯片101扫描到设备标识中的第一设备标识时,上述的蓝牙代理模块105才被启动。电子设备10中的蓝牙代理模块105和app 102处理器无需一直处于工作状态,从而降低了电子设备10的功耗和内存的占用。
340.上述的蓝牙扫描方法中,该蓝牙代理模块105可运行app 102,无需用户手动运行app 102,从而实现对用户来说无感执行的过程,提高了业务执行流程的便利性。蓝牙代理模块105可运行app 102,电子设备10中该app 102无需一直运行,该app 102可被app 102处理器结束运行,从而进一步降低了电子设备10的功耗和内存的占用。
341.上述的蓝牙扫描方法中,蓝牙代理模块105可与se连接,无需运行app 102,直接建立蓝牙芯片101与蓝牙设备之间的蓝牙通路,从而进一步降低了电子设备10的功耗和内存的占用。蓝牙代理模块105还为与蓝牙相关的业务执行流程提供一个蓝牙扫描的管理平台。
342.蓝牙代理模块105可与se连接,无需运行app 102,直接建立蓝牙芯片101与蓝牙设备60之间的蓝牙通路,从而进一步降低了电子设备10的功耗和内存的占用。
343.在一种可能的实现方式中,蓝牙代理模块根据第一设备标识,与第一设备之间建立通路之后,还包括:蓝牙代理模块获取第一设备标识对应的业务信息,将业务信息通过通路发送给第一设备。
344.其中,该蓝牙代理模块105可与外部蓝牙设备(第一设备)建立通路,且蓝牙代理模块105与se(或者tee)连接,从而se(tee)中的业务信息(例如密文)可传输给外部蓝牙设备(例如汽车等)。
345.业务信息例如是校验信息,校验信息用于第一设备根据本地存储的信息和校验信息进行校验,校验通过执行相应的业务。示例性的,业务信息例如是图16所示示例中的密文。
346.在一种可能的实现方式中,业务信息是校验结果信息,校验结果信息用于发送给服务器以根据校验结果信息执行相应的业务。
347.示例性的,校验结果信息例如是电子设备指纹比对结果、人脸比对结果等。比对结果指示比对通过,才执行支付过程或者执行解锁车锁的过程。
348.在一种可能的实现方式中,业务信息是校验电子车钥匙相关的信息,执行相应的业务是指打开相应车锁。
349.关于开启车锁这一业务执行过程可参考图16所示示例,这里不再赘述。
350.在一种可能的实现方式中,蓝牙代理模块根据第一设备标识,与第一设备之间建立通路之后,方法还包括:蓝牙代理模块通知第一设备标识对应的应用;应用获取第一设备标识对应的业务信息;应用将第一设备标识对应的业务信息发送给蓝牙代理模块;蓝牙代理模块通过通路将第一设备标识对应的业务信息发送给第一设备。
351.其中,业务信息例如是校验信息,校验信息用于第一设备根据本地存储的信息和校验信息进行校验,校验通过执行相应的业务。示例性的,业务信息例如是图16所示示例中的密文。
352.在一种可能的实现方式中,蓝牙代理模块根据第一设备标识,通知第一设备标识对应的应用之后,方法还包括:蓝牙代理模块将来自第一设备的业务信息发送给应用,以使应用将业务信息显示给用户。
353.示例性的,第一设备还可以是体重秤,业务信息可以是体重信息。关于体重信息传输这一业务执行过程可参考图19所描述示例,这里不再赘述。
354.上述的业务执行方法流程,建立蓝牙设备与蓝牙芯片之间的蓝牙连接的过程中,在蓝牙芯片检测到蓝牙广播信号来自的设备(蓝牙设备)在电子设备上已注册后,蓝牙代理模块才被启动。电子设备中的蓝牙代理模块和应用处理器无需一直处于工作状态,从而降低了电子设备的功耗和内存的占用。
355.本技术实施例中,不需要用户手动运行app,实现对用户来说无感执行业务交易的过程,提高了业务交易流程的便利性。
356.本技术实施例中,无需保持app始终处于运行状态,从而进一步降低了电子设备的功耗和内存的占用。本技术实施例中,蓝牙代理模块还为蓝牙相关的业务交易流程提供一个管理平台。
357.在一种可能的实现方式中,蓝牙代理模块根据第一设备标识,通知第一设备标识对应的应用,包括:蓝牙代理模块根据第一设备标识,运行第一设备标识对应的应用,将第一设备标识发送给应用;蓝牙代理模块根据第一设备标识,通知第一设备标识对应的应用之后,方法还包括:应用从第一设备获取业务信息,将业务信息和用户账户信息发送服务器,以使服务器根据应用发送的业务信息和用户账户信息,以及第一设备获取的用户信息进行校验,校验通过则执行业务交易。
358.其中,用户信息为人脸图像,执行业务交易是指以用户账户信息为交易账户执行支付交易。关于无感支付这一业务交易过程可参考图12所描述示例,这里不再赘述。
359.在一种可能的实现方式中,蓝牙代理模块指示蓝牙芯片扫描设备标识之前,方法还包括:在检测到蓝牙扫描功能关闭的情况下,蓝牙代理模块打开蓝牙扫描功能。
360.例如在注册过程示例中通过蓝牙代理模块打开蓝牙扫描功能。在注册完成后进行
业务交易过程中蓝牙代理模块也可自动打开蓝牙扫描功能。蓝牙代理模块可打开蓝牙扫描功能,从而无需用户手动打开蓝牙扫描功能,实现对用户来说无感执行业务交易的过程,提高了业务交易流程的便利性。
361.在一种可能的实现方式中,蓝牙代理模块是应用程序框架层的应用/接口。
362.在一种可能的实现方式中,蓝牙代理模块指示蓝牙芯片扫描设备标识之前,方法还包括:蓝牙代理模块对应用进行权限校验;在权限校验通过的情况下,蓝牙代理模块将第一设备标识发送给蓝牙芯片,以使蓝牙芯片在扫描到第一设备标识时通知蓝牙代理模块。
363.关于注册过程中权限校验的描述可参考图10所描述示例的步骤s202,这里不再赘述。
364.在一种可能的实现方式中,蓝牙代理模块对应用进行权限校验,包括:蓝牙代理模块检测第一设备标识是否包含在本地存储的合法设备标识列表中,在包含在合法设备标识列表中的情况下,权限校验通过。
365.关于在本地执行权限校验的过程,可参考参考图10所描述示例的步骤s202,这里不再赘述。
366.在一种可能的实现方式中,蓝牙代理模块对应用进行权限校验之前,方法还包括:应用从服务器获取用于证明应用权限的第一证书;蓝牙代理模块对应用进行权限校验,包括:蓝牙代理模块根据第一证书对应用进行权限校验。
367.关于通过服务器侧的证书执行权限校验的过程可参考参考图15所描述示例的步骤s501~s503,这里不再赘述。
368.在一种可能的实现方式中,方法还包括:当应用从电子设备上卸载时,蓝牙代理模块通知蓝牙芯片停止对第一设备标识进行扫描。
369.关于app注销过程可参考参考图13所描述示例,这里不再赘述。
370.可以理解的,本技术实施例以蓝牙扫描为例介绍,但是本技术实施例不限于蓝牙扫描执行业务。还可以是其他短距离扫描,例如wi-fi扫描或wi-fi连接、zigbee连接等,本技术实施例对此不作限定。
371.例如wi-fi扫描或wi-fi连接的场景下,蓝牙代理模块105可以是wi-fi代理模块,该wi-fi代理模块与蓝牙代理模块105类似,与wi-fi芯片连接,并与对应的应用连接。该wi-fi代理模块用于指示wi-fi芯片扫描设备标识,还用于根据设备标识,与设备之间建立通路,或通知设备标识对应的应用。
372.本技术实施例还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有指令,当其在计算机或处理器上运行时,使得计算机或处理器执行上述任一个方法中的一个或多个步骤。
373.本技术实施例还提供了一种包含指令的计算机程序产品。当该计算机程序产品在计算机或处理器上运行时,使得计算机或处理器执行上述任一个方法中的一个或多个步骤。
374.在上述实施例中,全部或部分功能可以通过软件、硬件、或者软件加硬件的组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本技术实施例所述的流程或功能。所述计算机可以是通用计算机、专用
计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,dvd)、或者半导体介质(例如,固态硬盘(solid state disk,ssd))等。
375.以上所述,仅为本技术实施例的具体实施方式,但本技术实施例的保护范围并不局限于此,任何在本技术实施例揭露的技术范围内的变化或替换,都应涵盖在本技术实施例的保护范围之内。因此,本技术实施例的保护范围应以所述权利要求的保护范围为准。