蓝牙连接方法、系统和电子设备与流程

文档序号:32438444发布日期:2022-12-06 20:21阅读:76来源:国知局
蓝牙连接方法、系统和电子设备与流程

1.本技术涉及电子技术领域,尤其涉及一种蓝牙连接方法、系统和电子设备。


背景技术:

2.随着蓝牙功能在电子设备的不断发展,电子设备上蓝牙功能在用户的生活中应用越来越广泛。电子设备上蓝牙功能可用于开启车锁、协助其他设备进行人脸支付等场景,为用户带来便利性。
3.以蓝牙功能开启车锁为例,电子设备可响应于用户操作,打开车钥匙对应的应用并启动蓝牙芯片进行蓝牙扫描。当电子设备的处理器通过蓝牙芯片扫描到汽车车机的广播信号并建立蓝牙连接后,汽车可以通过电子设备中车钥匙对应的应用进行安全验证,验证通过则打开车锁。
4.上述利用蓝牙功能开启车锁的过程,应用需在电子设备上运行才能打开车锁。当应用在电子设备上被系统清理时,需要用户手动打开车钥匙对应的应用以实现上述开锁过程。这样,降低了利用蓝牙开锁的便利性。


技术实现要素:

5.本技术公开了一种蓝牙连接方法、系统和电子设备,在无感开启车锁的场景下可提高开锁的便利性。
6.第一方面,本技术实施例提供一种蓝牙系统,该蓝牙系统包含第一电子设备和第二电子设备,该第一电子设备上安装有第一应用,该第一应用与该第二电子设备关联,其中:该第一电子设备被配置为:与该第二电子设备建立蓝牙连接;用于当满足第一预设条件时,断开;还用于响应于该蓝牙连接断开,扫描蓝牙广播信号;该第二电子设备被配置为:用于响应于该蓝牙连接断开,广播第一广播信号;该第一广播信号携带该第二电子设备的设备信息;该第一电子设备,还用于当扫描到该第一广播信号携带该第二电子设备的设备信息时,启动该第一应用;该第一电子设备,还用于通过该第一应用向该第二电子设备发送回连请求;该第一电子设备,还用于当接收到该第二电子设备发送的响应数据包时,与该第二电子设备建立蓝牙连接。
7.第一方面所提供的蓝牙系统中,即便第一应用被系统清理掉,依然无需用户手动在电子设备上打开第一应用,第一电子设备可在扫描到第二电子设备发送的蓝牙广播信号时,在第一应用被关闭的情况下启动第一应用以实现建立两设备之间的蓝牙连接通路,以无感实现两设备之间进行数据传输。
8.下面举例具体应用场景。
9.(1)无感开启车锁的场景
10.例如,在无感开启车锁的场景中,该第二电子设备为汽车车机,该第一应用为车厂应用;该第一电子设备,还用于通过与该汽车车机之间的蓝牙连接,接收来自该汽车车机的密文校验指令;该第一电子设备,还用于通过该车厂应用将第一密文发送给该汽车车机;该
汽车车机,还用于根据该第一密文进行密文校验,校验通过则开启汽车车锁。这样,即便车厂应用被系统清理掉,依然无需用户手动在第一电子设备上打开车厂应用,第一电子设备可在扫描到汽车车机发送的蓝牙广播信号时,在车厂应用被关闭的情况下启动车厂应用以实现建立两设备之间的蓝牙连接通路,提高了开启汽车的车锁的便利性,从而提高无感开启车锁的体验。
11.其中,当车门把手被拉动且第一电子设备与汽车车机之间的距离小于设定阈值时,汽车车机的mcu通过蓝牙芯片与主蓝牙芯片之间的蓝牙连接向钱包app发送密文校验指令。
12.本技术实施例中,第二电子设备中测距蓝牙芯片可处于休眠状态,只有当主蓝牙芯片的rssi大于设定阈值时需要对第一电子设备进行精确测距时mcu才唤醒测距蓝牙芯片。这样,只有当用户携带第一电子设备靠近汽车,在汽车附近设定距离内,mcu才启动测距蓝牙芯片来确定携带第一电子设备的用户与汽车之间的相对方位、与汽车车机之间的距离。在用户拉动车门把手时,mcu根据第一电子设备的用户与汽车之间的相对方位、与汽车车机之间的距离,确定进行密文校验,以开启汽车车锁。
13.本技术实施例对唤醒测距蓝牙芯片的时间不作限定。不限于在主蓝牙芯片的rssi大于设定阈值时才唤醒,例如还可以是在主蓝牙芯片与蓝牙芯片建立连接时,即唤醒测距蓝牙芯片。
14.(2)配件(例如蓝牙电子秤)上传数据到电子设备的场景
15.再例如,在配件(例如蓝牙电子秤)上传数据到电子设备的场景中,该第二电子设备为蓝牙电子秤,该第一应用为体重秤应用。该第一电子设备,还用于通过与该蓝牙电子秤之间的蓝牙连接,接收来自该蓝牙电子秤的体重数据。例如当重新建立起蓝牙连接时,将体重数据传输给第一电子设备。该第一电子设备,还可通过该体重秤应用显示该体重数据。这样,即便该体重秤应用被系统清理掉,依然无需用户手动在第一电子设备上打开该体重秤应用,第一电子设备可在扫描到体重秤发送的蓝牙广播信号时,在体重秤应用被关闭的情况下启动体重秤应用以实现建立两设备之间的蓝牙连接通路,提高了传输体重数据的便利性,从而提高无感上传体重数据到电子设备的体验。
16.(3)可穿戴设备(例如手环、手表)上传数据到电子设备场景
17.又例如,在可穿戴设备(例如手环、手表)上传数据到电子设备场景中,第一电子设备,还用于通过与该手环之间的蓝牙连接,接收来自该手环的数据(例如睡眠、运动数据)。例如当重新建立起蓝牙连接时,将睡眠、运动数据传输给第一电子设备。该第一电子设备,还可通过该手环应用显示该睡眠、运动数据。这样,即便该手环应用被系统清理掉,依然无需用户手动在第一电子设备上打开该手环应用,第一电子设备可在扫描到手环发送的蓝牙广播信号时,在手环应用被关闭的情况下启动手环应用以实现建立两设备之间的蓝牙连接通路,提高了传输睡眠、运动数据的便利性,从而提高无感上传睡眠、运动数据到电子设备的体验。
18.结合第一方面,在一种可能的实现方式中,该第一预设条件,包括:该第一应用被系统清理掉;或者该第一电子设备的接收信号强度rrsi小于设定阈值,该第一应用为启动状态。
19.其中,只要是蓝牙连接被动断开,第一电子设备均可执行蓝牙扫描以重新建立起
蓝牙连接。其中,“被动断开”是指由于蓝牙连接的距离拉远或者其他原因导致信号质量较差导致蓝牙连接断开。
20.在蓝牙芯片与主蓝牙芯片之间的蓝牙连接被动断开的情况下,将接收到“connection timeout”错误码。例如第一电子设备与汽车车机拉距(即距离过远)导致两设备无法通信,即该蓝牙连接断开。再例如当障碍物遮挡或者其他原因导致两设备无法通信,即蓝牙连接断开。蓝牙接收信号强度rrsi低于阈值,则两设备无法通信,即该蓝牙连接断开。当第一电子设备上蓝牙代理模块识别到蓝牙连接被动断开时,蓝牙代理模块指示蓝牙芯片扫描蓝牙广播信号。
21.第一电子设备响应于用户的操作,关闭车厂,从而蓝牙芯片与主蓝牙芯片之间的蓝牙连接断开,该情况下蓝牙连接也属于被动断开。例如,当用户在最近打开的应用界面,点击清理控件,第一电子设备可清除后台运行的车厂app,从而蓝牙芯片与主蓝牙芯片之间的蓝牙连接断开,该情况下蓝牙连接也属于被动断开。当第一电子设备上蓝牙代理模块识别到蓝牙连接被动断开时,蓝牙代理模块指示蓝牙芯片扫描蓝牙广播信号。
22.结合第一方面,在一种可能的实现方式中,该第一电子设备,具体用于响应于该蓝牙连接断开,当该第一应用为关闭状态时,扫描蓝牙广播信号;该第一电子设备,还用于响应于该蓝牙连接断开,当该第一应用被系统清理掉时,向该第二电子设备发送该回连请求。
23.结合第一方面,在一种可能的实现方式中,该第一电子设备,具体用于当与该第二电子设备之间的蓝牙连接断开时,在设定时间内扫描蓝牙广播信号;该第一电子设备,还用于当在该设定时间内未扫描到该第一蓝牙广播信号时,停止扫描蓝牙广播信号。
24.在本技术的另一些实施例中,例如在无感开启车锁场景下,当与汽车车机蓝牙连接断开,且车厂app仍然处于开启状态时,第一电子设备上蓝牙芯片可在不同的通道分别发起连接请求和进行蓝牙扫描。具体的,蓝牙芯片可支持多通道连接。当与汽车车机蓝牙连接断开,且车厂app仍然处于开启状态时,蓝牙芯片的一个通道(例如通道1)可处于initiating状态以回连汽车车机的主蓝牙芯片,另一个通道(例如通道2)可处于scanning状态以进行蓝牙扫描。蓝牙芯片可通过以上任一个通道来实现重新建立起与主蓝牙芯片之间的蓝牙连接。
25.可选的,当通过通道1建立起与主蓝牙芯片之间的蓝牙连接时,蓝牙芯片可停止通道2上的连接进程。当通过通道2建立起与主蓝牙芯片之间的蓝牙连接时,蓝牙芯片可停止通道1上的连接进程。这样,通过两个通道回连汽车车机的主蓝牙芯片,可提高回连效率。
26.结合第一方面,在一种可能的实现方式中,该第一电子设备,具体用于:当扫描到的第一广播信号携带该第二电子设备的设备信息时,检测该第一应用的注册信息是否合法;当该第一应用的注册信息合法时,启动该第一应用。
27.在无感开启车锁场景中,车厂app重新通过蓝牙芯片与主蓝牙芯片之间建立蓝牙连接时,钱包app可重新验证该app的注册信息。当钱包app对应的钱包服务器对车厂服务器不再认可时,钱包服务器本地存储的认可的厂商名称列表中不再包含车厂服务器的名称。这样,当重新建立蓝牙连接时实时验证注册信息的合法性,可提高安全性。
28.结合第一方面,在一种可能的实现方式中,该第一电子设备,还用于显示第一用户界面,该第一用户界面上包含第一控件,该第一控件用于断开与该第二电子设备之间的蓝牙连接;
29.该第一电子设备,还用于响应于作用在该第一控件上的用户操作,断开与该第二电子设备之间的蓝牙连接,不再扫描蓝牙广播信号。
30.结合第一方面,在一种可能的实现方式中,该第一电子设备与该第二电子设备之间的蓝牙连接为低功耗蓝牙ble连接或者经典蓝牙br/edr连接。
31.其中,ble连接场景下,第一电子设备的蓝牙芯片开始扫描蓝牙广播信号时,该蓝牙扫描可以为ble扫描,此时蓝牙芯片处于scanning状态。第二电子设备的主蓝牙芯片发送蓝牙广播信号,主蓝牙芯片可处于广播(advertising)状态。蓝牙芯片向主蓝牙芯片发起回连时,蓝牙芯片101进入initiating状态。最后,蓝牙芯片101由initiating状态进入连接(connection)状态,主蓝牙芯片由advertising进入connection状态,从而蓝牙芯片与主蓝牙芯片回连重新建立连接。
32.在br/edr连接场景下,在注册流程中蓝牙芯片和主蓝牙芯片已完成配对。蓝牙芯片开始进行蓝牙扫描时,该蓝牙扫描可以为br/edr扫描,此时蓝牙芯片处于inquiry状态。主蓝牙芯片发送蓝牙广播信号,主蓝牙芯片可处于inquiry scan状态。为了恢复蓝牙连接,蓝牙芯片向已经蓝牙连接过的主蓝牙芯片发起回连。示例性的,蓝牙芯片可寻呼(page)主蓝牙芯片,以建立起蓝牙芯片与主蓝牙芯片之间的蓝牙连接。
33.结合第一方面,在一种可能的实现方式中,该第二电子设备的设备信息包含该第二电子设备的媒体存取控制位mac地址、该第二电子设备的车辆识别码vin、该第二电子设备的通用唯一识别码uuid中的一个或多个。
34.以mac地址为例,第一电子设备的蓝牙芯片101可获得扫描到的蓝牙广播信号携带的mac地址,并与本地存储的第二电子设备的mac地址比对。当蓝牙广播信号携带的mac地址与存储的第二电子设备的mac地址相同时,第一电子设备可启动第一应用。
35.结合第一方面,在一种可能的实现方式中,该第一电子设备,还用于在与该第二电子设备建立蓝牙连接时,获取该第二电子设备的设备信息;该第一电子设备,还用于检测该第一应用的注册信息是否合法,该第一应用的注册信息包含该第二电子设备的设备信息;该第一电子设备,还用于当该第一应用的注册信息合法时,存储该第二电子设备的设备信息,存储的该第二电子设备的设备信息用于该第一电子设备扫描该第一广播信号。
36.在无感开启车锁场景中,第一电子设备上车厂app可向钱包app发送注册信息。其中,注册信息可包含汽车车机的mac地址(第一mac地址)、app的包名、汽车的品牌等等。其中,该注册信息还可包含证书和/或签名信息,该证书和/或签名信息由车厂服务器下发给车厂app,例如可以是在电子设备安装车厂app时下发给车厂app的。
37.结合第一方面,在一种可能的实现方式中,该第一电子设备具体用于:从服务器获取第一证书,该第一证书用于证明该第一应用的权限;根据该第一证书检测该第一应用的注册信息是否合法。
38.第一电子设备的蓝牙代理模块105可存储权限校验通过的注册信息,例如包含前述车厂app的注册信息。
39.在无感开启车锁场景中,车厂服务器还可将用于解锁的密文发送给第一电子设备的钱包app和汽车车机的mcu。钱包app将用于解锁的密文存储在se,汽车车机的mcu将用于解锁的密文存储在车机se。该用于解锁的密文可以是用户在车厂app设置的,也可以是根据用户在车厂app设置的密码生成的。
40.在本技术实施例中,车厂app102注册完成(注册信息合法),且用于解锁的密文已下发到第一电子设备和汽车车机后,第一电子设备可在负一屏、车厂app的用户界面和钱包app的用户界面上显示用于解锁的控件。响应于作用在该用于解锁的控件的用户操作,电子设备可通过与汽车车机之间的蓝牙连接进行密文校验,进而实现汽车车门解锁。
41.其中,负一屏界面是指在系统的多个桌面屏幕左侧的,用于展示信息的屏幕;其中,桌面屏幕用于放置应用程序或小组件图。
42.结合第一方面,在一种可能的实现方式中,该第一电子设备还安装有第二应用,该车厂应用与该第二应用连接,该第二应用与安全存储区连接,该安全存储区存储有该第一密文;该第一电子设备,具体用于通过该车厂应用和该第二应用,从该安全存储区域获取第一密文,并将该第一密文发送给该汽车车机。
43.结合第一方面,在一种可能的实现方式中,当第一电子设备和第二电子设备重新建立起蓝牙连接之后,第一电子设备可停止扫描蓝牙广播信号。第二电子设备也可停止广播蓝牙广播信号。具体的,当蓝牙芯片与主蓝牙芯片建立连接时,蓝牙代理模块可向蓝牙芯片发送第五通知,第五通知用于指示蓝牙芯片关闭蓝牙扫描功能,即停止进行蓝牙扫描。
44.本技术实施例中,当蓝牙芯片和主蓝牙芯片之间建立蓝牙连接时,蓝牙协议栈可向蓝牙代理模块发送通知。当重新建立起蓝牙芯片与主蓝牙芯片之间的蓝牙连接时,不再需要扫描蓝牙广播信号,关闭蓝牙扫描功能,从而节省功耗。
45.本技术实施例中,第一电子设备中蓝牙代理模块可对蓝牙扫描的时长进行计时。具体的,蓝牙代理模块按照该蓝牙扫描的时长对蓝牙芯片执行蓝牙扫描的时间进行计时。当计时时间超过该蓝牙扫描的时长时,蓝牙代理模块可通知蓝牙芯片关闭蓝牙扫描功能,即停止进行蓝牙扫描。
46.当蓝牙开关关闭并重新打开或者电子设备重启时,第一电子设备记录剩余的蓝牙扫描的时长,并进行扫描。
47.第二方面,本技术实施例提供一种蓝牙连接方法,第一电子设备上安装有第一应用,该第一应用与该第二电子设备关联,该方法包括:该第一电子设备与该第二电子设备建立蓝牙连接;当满足第一预设条件时,该第一电子设备与该第二电子设备之间的蓝牙连接断开;响应于该蓝牙连接断开,该第一电子设备扫描蓝牙广播信号;当扫描到的第一广播信号携带该第二电子设备的设备信息时,该第一电子设备启动该第一应用;该第一电子设备通过该第一应用向该第二电子设备发送回连请求;当接收到该第二电子设备发送的响应数据包时,该第一电子设备与该第二电子设备建立蓝牙连接。
48.第二方面所提供的蓝牙连接方法可实现,即便第一应用被系统清理掉,依然无需用户手动在电子设备上打开第一应用,第一电子设备可在扫描到第二电子设备发送的蓝牙广播信号时,在第一应用被关闭的情况下启动第一应用以实现建立两设备之间的蓝牙连接通路,以无感实现两设备之间进行数据传输。
49.结合第二方面,在一种可能的实现方式中,该第一预设条件,包括:该第一应用被系统清理掉;或者该第一电子设备的接收信号强度rrsi小于设定阈值,该第一应用为启动状态。
50.结合第二方面,在一种可能的实现方式中,该响应于该蓝牙连接断开,该第一电子设备扫描蓝牙广播信号,包括:响应于该蓝牙连接断开,当该第一应用为关闭状态时,该第
一电子设备扫描蓝牙广播信号;该方法还包括:响应于该蓝牙连接断开,当该第一应用被系统清理掉时,向该第二电子设备发送该回连请求。
51.结合第二方面,在一种可能的实现方式中,该响应于该蓝牙连接断开,该第一电子设备扫描蓝牙广播信号,包括:响应于该蓝牙连接断开,该第一电子设备在设定时间内扫描蓝牙广播信号;该方法还包括:当在该设定时间内该第一电子设备未扫描到携带该第一蓝牙广播信号时,该第一电子设备停止扫描蓝牙广播信号。
52.结合第二方面,在一种可能的实现方式中,该当扫描到的第一广播信号携带该第二电子设备的设备信息时,该第一电子设备启动该第一应用,包括:当扫描到的第一广播信号携带该第二电子设备的设备信息时,该第一电子设备检测该第一应用的注册信息是否合法;当该第一应用的注册信息合法时,该第一电子设备启动该第一应用。
53.结合第二方面,在一种可能的实现方式中,该方法还包括:该第一电子设备显示第一用户界面,该第一用户界面上包含第一控件,该第一控件用于断开与该第二电子设备之间的蓝牙连接;响应于作用在该第一控件上的用户操作,该第一电子设备断开与该第二电子设备之间的蓝牙连接,不再扫描蓝牙广播信号。
54.结合第二方面,在一种可能的实现方式中,该第二电子设备为汽车车机,该第一应用为车厂应用,该第一电子设备与该第二电子设备建立蓝牙连接之后,该方法还包括:该第一电子设备通过与该汽车车机之间的蓝牙连接,接收来自该汽车车机的密文校验指令;该第一电子设备通过该车厂应用将该第一密文发送给该汽车车机,该第一密文用于该汽车车机校验密文以开启汽车车锁。
55.结合第二方面,在一种可能的实现方式中,该第一电子设备与该第二电子设备之间的蓝牙连接为低功耗蓝牙ble连接或者经典蓝牙br/edr连接。
56.结合第二方面,在一种可能的实现方式中,该该第二电子设备的设备信息包含该第二电子设备的mac地址、该第二电子设备的vin、该第二电子设备的uuid中的一个或多个。
57.结合第二方面,在一种可能的实现方式中,该方法还包括:在与该第二电子设备建立蓝牙连接时,该第一电子设备获取该第二电子设备的设备信息;该第一电子设备检测该第一应用的注册信息是否合法,该第一应用的注册信息包含该第二电子设备的设备信息;当该第一应用的注册信息合法时,该第一电子设备存储该第二电子设备的设备信息,存储的该第二电子设备的设备信息用于该第一电子设备扫描该第一广播信号。
58.结合第二方面,在一种可能的实现方式中,该第一电子设备检测该第一应用的注册信息是否合法,包括:该第一电子设备从服务器获取第一证书,该第一证书用于证明该第一应用的权限;该第一电子设备根据该第一证书检测该第一应用的注册信息是否合法。
59.结合第二方面,在一种可能的实现方式中,该第一电子设备还安装有第二应用,该车厂应用与该第二应用连接,该第二应用与安全存储区连接,该安全存储区存储有该第一密文;该第一电子设备通过该车厂应用将该第一密文发送给该汽车车机,包括:该第一电子设备通过该车厂应用和该第二应用,从该安全存储区域获取第一密文,并将该第一密文发送给该汽车车机。
60.第三方面,本技术实施例提供了一种第一电子设备,包括:一个或多个处理器;存储器;蓝牙芯片;所述蓝牙芯片支持经典蓝牙br/edr和低功耗蓝牙ble;多个应用程序;所述多个应用程序包含第一应用;所述第一应用用于在启动状态时使得所述第一电子设备与第
二电子设备建立蓝牙连接;以及一个或多个计算机程序,其中所述一个或多个计算机程序被存储在所述存储器中,所述一个或多个计算机程序包括指令,当所述指令被所述第一电子设备执行时,使得所述第一电子设备执行执行以下步骤:与所述第二电子设备建立蓝牙连接;当满足第一预设条件时,与所述第二电子设备之间的蓝牙连接断开;响应于所述蓝牙连接断开,扫描蓝牙广播信号;当扫描到的第一广播信号携带所述第二电子设备的设备信息时,启动所述第一应用;通过所述第一应用向所述第二电子设备发送回连请求;当接收到所述第二电子设备发送的响应数据包时,与所述第二电子设备建立蓝牙连接。
61.第三方面所提供的第一电子设备中,即便第一应用被系统清理掉,依然无需用户手动在电子设备上打开第一应用,第一电子设备可在扫描到第二电子设备发送的蓝牙广播信号时,在第一应用被关闭的情况下启动第一应用以实现建立两设备之间的蓝牙连接通路,以无感实现两设备之间进行数据传输。
62.结合第三方面,在一种可能的实现方式中,所述第一预设条件,包括:所述第一应用被系统清理掉;或者所述第一电子设备的接收信号强度rrsi小于设定阈值,所述第一应用为启动状态。
63.结合第三方面,在一种可能的实现方式中,当所述指令被所述第一电子设备执行时,使得所述第一电子设备具体执行以下步骤:响应于所述蓝牙连接断开,当所述第一应用为关闭状态时,扫描蓝牙广播信号;当所述指令被所述第一电子设备执行时,使得所述第一电子设备还执行以下步骤:响应于所述蓝牙连接断开,当所述第一应用被系统清理掉时,向所述第二电子设备发送所述回连请求。
64.结合第三方面,在一种可能的实现方式中,当所述指令被所述第一电子设备执行时,使得所述第一电子设备具体执行以下步骤:响应于所述蓝牙连接断开,在设定时间内扫描蓝牙广播信号;当所述指令被所述第一电子设备执行时,使得所述第一电子设备还执行以下步骤:当在所述设定时间内所述第一电子设备未扫描到携带所述第一蓝牙广播信号时,停止扫描蓝牙广播信号。
65.结合第三方面,在一种可能的实现方式中,当所述指令被所述第一电子设备执行时,使得所述第一电子设备具体执行以下步骤:当扫描到的第一广播信号携带所述第二电子设备的设备信息时,检测所述第一应用的注册信息是否合法;当所述第一应用的注册信息合法时,启动所述第一应用。
66.结合第三方面,在一种可能的实现方式中,当所述指令被所述第一电子设备执行时,使得所述第一电子设备还执行以下步骤:显示第一用户界面,所述第一用户界面上包含第一控件,所述第一控件用于断开与所述第二电子设备之间的蓝牙连接;响应于作用在所述第一控件上的用户操作,断开与所述第二电子设备之间的蓝牙连接,不再扫描蓝牙广播信号。
67.结合第三方面,在一种可能的实现方式中,所述第二电子设备为汽车车机,所述第一应用为车厂应用,所述第一电子设备与所述第二电子设备建立蓝牙连接之后,当所述指令被所述第一电子设备执行时,使得所述第一电子设备还执行以下步骤:通过与所述汽车车机之间的蓝牙连接,接收来自所述汽车车机的密文校验指令;通过所述车厂应用将所述第一密文发送给所述汽车车机,所述第一密文用于所述汽车车机校验密文以开启汽车车锁。
68.结合第三方面,在一种可能的实现方式中,所述第一电子设备与所述第二电子设备之间的蓝牙连接为低功耗蓝牙ble连接或者经典蓝牙br/edr连接。
69.结合第三方面,在一种可能的实现方式中,所述所述第二电子设备的设备信息包含所述第二电子设备的mac地址、所述第二电子设备的vin、所述第二电子设备的uuid中的一个或多个。
70.第四方面,本技术实施例提供了一种蓝牙芯片,该蓝牙芯片应用于第一电子设备,该芯片包括一个或多个处理器,该处理器用于调用计算机指令以使得该第一电子设备执行如第二方面以及第二方面中任一可能的实现方式描述的方法。
71.第五方面,本技术提供了一种计算机存储介质,包括计算机指令,当所述计算机指令在电子设备上运行时,使得所述电子设备执行如第二方面、第二方面任一种可能的实施方式提供的蓝牙连接方法。
72.第六方面,本技术实施例提供一种计算机程序产品,当计算机程序产品在计算机上运行时,使得计算机执行如第二方面、第二方面任一种可能的实施方式提供的蓝牙连接方法。
73.可以理解地,上述提供的第三方面所述的电子设备、第四方面所述的蓝牙芯片、第五方面所述的计算机存储介质、或者第六方面所述的计算机程序产品均用于执行第二方面、或第二方面的任一种可能的实施方式所提供的蓝牙连接方法。因此,其所能达到的有益效果可参考对应方法中的有益效果,此处不再赘述。
附图说明
74.下面对本技术实施例用到的附图进行介绍。
75.图1是本技术实施例提供的一种蓝牙系统的架构示意图;
76.图2是本技术实施例提供的一种蓝牙系统的架构示意图;
77.图3是本技术实施例提供的一种ble连接方法流程示意图;
78.图4是本技术实施例提供的电子设备10的结构示意图;
79.图5是本技术实施例的电子设备10的软件结构框图;
80.图6是本技术实施例提供的一种蓝牙系统的架构示意图;
81.图7是本技术实施例提供的车厂app102注册过程的流程示意图;
82.图8是本技术实施例提供的无感开启汽车车锁过程的流程示意图;
83.图9是本技术实施例提供的蓝牙扫描方法的流程示意图;
84.图10是本技术实施例提供的一种用户界面的示意图;
85.图11a和图11b是本技术实施例提供的一些用户界面的示意图;
86.图12a和图12b是本技术实施例提供的一些用户界面的示意图;
87.图13是本技术实施例提供的一种蓝牙系统的结构示意图;
88.图14是本技术实施例提供的一种蓝牙系统的架构示意图;
89.图15是本技术实施例提供的一种蓝牙系统的架构示意图;
90.图16是本技术实施例提供的一种业务交易方法的流程示意图;
91.图17是本技术实施例提供的一种蓝牙系统的架构示意图;
92.图18是本技术实施例提供的一种蓝牙系统的架构示意图;
93.图19是本技术实施例提供的app 102注册过程的流程示意图;
94.图20是本技术实施例提供的一种业务交易方法的流程示意图;
95.图21是本技术实施例提供的app 102注销的流程示意图;
96.图22是本技术实施例提供的一种蓝牙系统的架构示意图;
97.图23是本技术实施例提供的一种业务执行方法的流程示意图;
98.图24是本技术实施例提供的一种蓝牙系统的架构示意图;
99.图25是本技术实施例提供的app 102注册过程的流程示意图;
100.图26是本技术实施例提供的一种业务执行方法的流程示意图;
101.图27是本技术实施例提供的一种蓝牙系统的架构示意图。
具体实施方式
102.下面结合本技术实施例中的附图对本技术实施例进行描述。本技术实施例的实施方式部分使用的术语仅用于对本技术的具体实施例进行解释,而非旨在限定本技术。
103.首先介绍本技术实施例涉及的应用场景。蓝牙功能在无感业务中的应用越来越广泛。无感业务包括无感开启车锁、无感支付等。下面分别结合系统架构以无感开启车锁的应用场景为例进行介绍。
104.可以理解的,本技术实施例不限于无感开启车锁的应用场景,还可以包含其他蓝牙功能实现的业务过程,例如,无感支付场景,配件(例如蓝牙电子秤)、可穿戴设备(例如手环、手表)上传数据到电子设备的场景,本技术实施例对此不作限定。
105.请参阅图1,图1是本技术实施例提供的一种蓝牙系统的架构示意图。如图1所示,该蓝牙系统包含电子设备10和蓝牙设备20(例如汽车车机20)。其中汽车车机20可广播蓝牙广播信号。电子设备10上可安装有与汽车车机20对应的车厂应用(application,app)。当车厂app处于开启状态时,用户在携带电子设备10靠近汽车车机20的过程中,电子设备10可接收到蓝牙广播信号,该车厂app可通过蓝牙广播信号与汽车建立通信连接。汽车车机20可通过该通信连接完成安全验证,安全验证成功则自动开启汽车的车锁。
106.上述开启汽车的车锁的过程中,无需用户手动操作电子设备10上的app,即可实现无感自动开启汽车的车锁,实现无感开启车锁。关于建立通信连接并自动开启汽车的车锁的原理可参考图2所描述示例。
107.下面结合电子设备10和汽车车机20的结构介绍图1所示场景中开启汽车车锁的过程。请参阅图2,图2是本技术实施例提供的一种蓝牙系统的架构示意图。如图2所示,电子设备10和汽车车机20可建立通信连接,该通信连接可以是蓝牙连接。具体的,在图1所示出的场景中,可以是在用户携带电子设备10靠近汽车车机20的过程中,电子设备10与汽车车机20建立蓝牙通信连接。
108.如图2所示,电子设备10包含蓝牙芯片101、车厂app102和安全单元(secure element,se)104,se 104中包含小应用程序(applet)。其中,车厂app102和se 104可通过开放移动联盟应用编程接口(open mobile alliance application programming interface,oma api)103(oma api 103图中未示出)连接。oma api 103是一种通过富执行环境(rich execution environment,ree)调用se中applet的接口。
109.如图2所示,汽车车机20包含车载蓝牙芯片201和车机se 202。其中,车机se 202中
包含车载applet。车载蓝牙芯片201和车机se 202之间也可以通过车机oma api连接。se 104的applet中可包含用于开锁的密文。车机se 202中也包含用于开锁的密文。se 104的applet中的密文与车机se 202中的密文一一对应。示例性的,车厂的服务器可分别与电子设备10的se 104和汽车车机20的车机se 202建立安全通道,将相同的密文分别放入se 104和se202中。
110.下面结合图2所示出的架构示意图,以ble连接为例介绍电子设备10与汽车车机20之间的通信连接断开并重新建立的过程。该场景下,用户携带电子设备10远离汽车,使得电子设备10与汽车车机20之间的ble连接断开。之后,电子设备10上的车厂app102被系统清理掉,当用户携带电子设备10重新靠近汽车时,用户手动在电子设备10上启动车厂app102,以重新建立电子设备10与汽车车机20之间的ble连接。
111.请参阅图3,图3是本技术实施例提供的一种ble连接方法流程示意图。如图3所示,该ble连接方法方法包括:
112.s101、电子设备10上车厂app102处于启动状态,蓝牙芯片101与车载蓝牙芯片201之间建立ble连接。
113.s102、电子设备10与汽车车机20之间拉距,导致蓝牙芯片101与车载蓝牙芯片201之间的ble连接断开。
114.可以理解的,本技术实施例以拉距为例介绍,但是不限于拉距使得蓝牙连接断开,执行步骤s103以进行回连。例如当障碍物遮挡或者其他原因导致蓝牙连接断开,但车厂app102仍然运行,电子设备10依然执行步骤s103的回连步骤。
115.其中,拉距是指电子设备10与汽车车机20之间的距离过远。当电子设备10与汽车车机20之间的距离过远时,两设备之间不能进行通信,即ble连接断开。当由于两设备之间距离过远使得蓝牙芯片101与车载蓝牙芯片201之间的ble连接断开时,电子设备10上车厂app102仍然处于运行状态。车厂app102可以是后台运行,也可以是前台运行。
116.s103、蓝牙芯片101向车载蓝牙芯片201发送连接请求。
117.其中,蓝牙芯片101可处于发起(initiating)状态。蓝牙芯片101可向车载蓝牙芯片201发送连接请求,并侦听车载蓝牙芯片201的广播信道消息。当蓝牙芯片101侦听到来自车载蓝牙芯片201的广播信号时,进行响应以建立起蓝牙芯片101与车载蓝牙芯片201的ble连接,建立连接的过程可参考图6所描述示例中步骤s201中的描述。当接收到其他设备的广播信号时,不进行响应。
118.该ble连接可用于开启汽车车锁过程中车载蓝牙芯片201与车厂app102之间的通信。具体的,汽车车机20可通过该通信连接向电子设备10发送密文校验指令。电子设备10接收到该密文校验指令后,将se 104的applet中的密文经由该通信连接发送给汽车车机20。汽车车机20将接收到的密文与车机se 202中的密文进行比对,比对通过(例如两密文相同则比对通过)则开启汽车的车锁。
119.s104、车厂app102被电子设备10的系统清理掉,执行步骤s105。
120.其中,车厂app102被系统清理掉后,车厂app102处于关闭状态。
121.蓝牙芯片102可获知车厂app102被电子设备10的系统清理掉,并执行步骤s105。
122.s105、蓝牙芯片101停止侦听广播信道消息。
123.当车厂app102被关闭时,蓝牙芯片101停止侦听广播信道消息。车厂app102在电子
设备10上被关闭,可包含但不限于以下情况:(1)响应于用户的关闭操作,电子设备10关闭该车厂app102。(2)车厂app102被系统清理掉,例如,当车厂app102在电子设备10系统后台运行时长超过预设时间时,电子设备10可关闭该车厂app102,以减少功耗。
124.用户携带电子设备10靠近汽车车机20的过程中,当车厂app102在电子设备10上被关闭(例如被电子设备10的系统清理掉)时,需要用户手动打开车厂app102以重新建立ble连接。
125.s106、响应于用户操作,电子设备10上车厂app102被启动,则执行步骤s107。
126.例如,响应于作用在车厂app102的图标上的触摸操作,电子设备10启动车厂app102并显示车厂app102的用户界面。
127.s107、车厂app102通知蓝牙芯片101开始侦听广播信道消息。
128.蓝牙芯片101可重新进入initiating状态。
129.s108、蓝牙芯片101向车载蓝牙芯片发送连接请求,并侦听到来自车载蓝牙芯片201的广播信号。
130.s109、蓝牙芯片101重新建立起与车载蓝牙芯片201之间的ble连接。
131.其中,蓝牙芯片101内可存储有汽车车机20的媒体存取控制位(media access control,mac)地址,而车载蓝牙芯片201广播的蓝牙广播信号中包含汽车车机20的mac地址,蓝牙芯片101侦听到来自车载蓝牙芯片201的蓝牙广播信号后,建立起与车载蓝牙芯片201之间的ble连接。
132.可以理解的,本技术实施例以汽车车机20的mac地址为例进行介绍,但是不限于mac地址,车载蓝牙芯片201广播的蓝牙广播信号还可携带其他指示该汽车的参数,例如车架号(车辆识别码(vehicle identification number,vin))等,本技术实施例对此不作限定。
133.可见,用户携带电子设备10靠近汽车车机20的过程中,当车厂app102在电子设备10上被关闭(例如被电子设备10的系统清理掉)时,需要用户手动打开车厂app102以实现上述开锁过程。这样,降低了开启汽车的车锁的便利性,不利于无感开启车锁的体验。
134.本技术实施例提供一种蓝牙连接方法,当电子设备10与汽车车机20之间的通信连接断开时,电子设备10开启蓝牙扫描功能,开始扫描蓝牙广播信号。当用户携带电子设备10靠近汽车车机20时,电子设备10可扫描到汽车车机20发送的蓝牙广播信号。当扫描到汽车车机20发送的蓝牙广播信号时,电子设备10可在车厂app102被系统清理的情况下,启动车厂app102。电子设备10可通过车厂app、蓝牙芯片101对汽车车机20进行蓝牙回连。这样,电子设备10可建立车厂app102与汽车车机中车载蓝牙芯片201的通信连接,以实现无感开启车锁。
135.本技术实施例提供的蓝牙连接方法中,即便车厂app102被系统清理掉,依然无需用户手动在电子设备10上打开车厂app102,电子设备10可启动车厂app102以实现无感开启车锁。这样,提高了开启汽车的车锁的便利性,从而提高无感开启车锁的体验。
136.当电子设备10与汽车车机蓝牙回连成功后,电子设备10可关闭蓝牙扫描功能,以减少功耗。
137.可以理解的,本技术实施例以蓝牙连接为例进行介绍,本技术实施例中的蓝牙连接可以是ble连接,也可以是br/edr连接。但是本技术实施例中不限于蓝牙连接,还可以是
其他短距离无线通信连接,例如wi-fi连接、zigbee连接等等,本技术实施例对此不作限定。
138.下面对本技术实施例涉及蓝牙系统中的电子设备10进行介绍。请参阅图4,图4是本技术实施例提供的电子设备10的结构示意图。
139.应该理解的是,图4所示电子设备10仅是一个范例,并且电子设备10可以具有比图4中所示的更多的或者更少的部件,可以组合两个或多个的部件,或者可以具有不同的部件配置。图中所示出的各种部件可以在包括一个或多个信号处理和/或专用集成电路在内的硬件、软件、或硬件和软件的组合中实现。
140.电子设备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等。
141.可以理解的是,本发明实施例示意的结构并不构成对电子设备10的具体限定。在本技术另一些实施例中,电子设备10可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
142.处理器110可以包括一个或多个处理单元,例如:处理器110可以包括应用处理器(application processor,ap),调制解调处理器,图形处理器(graphics processing unit,gpu),图像信号处理器(image signal processor,isp),控制器,存储器,视频编解码器,数字信号处理器(digital signal processor,dsp),基带处理器,和/或神经网络处理器(neural-network processing unit,npu)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。
143.其中,控制器可以是电子设备10的神经中枢和指挥中心。控制器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。
144.处理器110中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器110中的存储器为高速缓冲存储器。该存储器可以保存处理器110刚用过或循环使用的指令或数据。如果处理器110需要再次使用该指令或数据,可从所述存储器中直接调用。避免了重复存取,减少了处理器110的等待时间,因而提高了系统的效率。
145.在一些实施例中,处理器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)接口等。
146.i2c接口是一种双向同步串行总线,包括一根串行数据线(serial data line,
sda)和一根串行时钟线(derail clock line,scl)。在一些实施例中,处理器110可以包含多组i2c总线。处理器110可以通过不同的i2c总线接口分别耦合触摸传感器180k,充电器,闪光灯,摄像头193等。例如:处理器110可以通过i2c接口耦合触摸传感器180k,使处理器110与触摸传感器180k通过i2c总线接口通信,实现电子设备10的触摸功能。
147.i2s接口可以用于音频通信。在一些实施例中,处理器110可以包含多组i2s总线。处理器110可以通过i2s总线与音频模块170耦合,实现处理器110与音频模块170之间的通信。在一些实施例中,音频模块170可以通过i2s接口向无线通信模块160传递音频信号,实现通过蓝牙耳机接听电话的功能。
148.pcm接口也可以用于音频通信,将模拟信号抽样,量化和编码。在一些实施例中,音频模块170与无线通信模块160可以通过pcm总线接口耦合。在一些实施例中,音频模块170也可以通过pcm接口向无线通信模块160传递音频信号,实现通过蓝牙耳机接听电话的功能。所述i2s接口和所述pcm接口都可以用于音频通信。
149.uart接口是一种通用串行数据总线,用于异步通信。该总线可以为双向通信总线。它将要传输的数据在串行通信与并行通信之间转换。在一些实施例中,uart接口通常被用于连接处理器110与无线通信模块160。例如:处理器110通过uart接口与无线通信模块160中的蓝牙模块通信,实现蓝牙功能。在一些实施例中,音频模块170可以通过uart接口向无线通信模块160传递音频信号,实现通过蓝牙耳机播放音乐的功能。
150.mipi接口可以被用于连接处理器110与显示屏194,摄像头193等外围器件。mipi接口包括摄像头串行接口(camera serial interface,csi),显示屏串行接口(display serial interface,dsi)等。在一些实施例中,处理器110和摄像头193通过csi接口通信,实现电子设备10的拍摄功能。处理器110和显示屏194通过dsi接口通信,实现电子设备10的显示功能。
151.gpio接口可以通过软件配置。gpio接口可以被配置为控制信号,也可被配置为数据信号。在一些实施例中,gpio接口可以用于连接处理器110与摄像头193,显示屏194,无线通信模块160,音频模块170,传感器模块180等。gpio接口还可以被配置为i2c接口,i2s接口,uart接口,mipi接口等。
152.usb接口130是符合usb标准规范的接口,具体可以是mini usb接口,micro usb接口,usb type c接口等。usb接口130可以用于连接充电器为电子设备10充电,也可以用于电子设备10与外围设备之间传输数据。也可以用于连接耳机,通过耳机播放音频。该接口还可以用于连接其他电子设备,例如ar设备等。
153.可以理解的是,本发明实施例示意的各模块间的接口连接关系,只是示意性说明,并不构成对电子设备10的结构限定。在本技术另一些实施例中,电子设备10也可以采用上述实施例中不同的接口连接方式,或多种接口连接方式的组合。
154.充电管理模块140用于从充电器接收充电输入。其中,充电器可以是无线充电器,也可以是有线充电器。在一些有线充电的实施例中,充电管理模块140可以通过usb接口130接收有线充电器的充电输入。在一些无线充电的实施例中,充电管理模块140可以通过电子设备10的无线充电线圈接收无线充电输入。充电管理模块140为电池142充电的同时,还可以通过电源管理模块141为电子设备供电。
155.电源管理模块141用于连接电池142,充电管理模块140与处理器110。电源管理模
块141接收电池142和/或充电管理模块140的输入,为处理器110,内部存储器121,外部存储器,显示屏194,摄像头193,和无线通信模块160等供电。电源管理模块141还可以用于监测电池容量,电池循环次数,电池健康状态(漏电,阻抗)等参数。在其他一些实施例中,电源管理模块141也可以设置于处理器110中。在另一些实施例中,电源管理模块141和充电管理模块140也可以设置于同一个器件中。
156.电子设备10的无线通信功能可以通过天线1,天线2,移动通信模块150,无线通信模块160,调制解调处理器以及基带处理器等实现。
157.天线1和天线2用于发射和接收电磁波信号。电子设备10中的每个天线可用于覆盖单个或多个通信频带。不同的天线还可以复用,以提高天线的利用率。例如:可以将天线1复用为无线局域网的分集天线。在另外一些实施例中,天线可以和调谐开关结合使用。
158.移动通信模块150可以提供应用在电子设备10上的包括2g/3g/4g/5g等无线通信的解决方案。移动通信模块150可以包括至少一个滤波器,开关,功率放大器,低噪声放大器(low noise amplifier,lna)等。移动通信模块150可以由天线1接收电磁波,并对接收的电磁波进行滤波,放大等处理,传送至调制解调处理器进行解调。移动通信模块150还可以对经调制解调处理器调制后的信号放大,经天线1转为电磁波辐射出去。在一些实施例中,移动通信模块150的至少部分功能模块可以被设置于处理器110中。在一些实施例中,移动通信模块150的至少部分功能模块可以与处理器110的至少部分模块被设置在同一个器件中。
159.调制解调处理器可以包括调制器和解调器。其中,调制器用于将待发送的低频基带信号调制成中高频信号。解调器用于将接收的电磁波信号解调为低频基带信号。随后解调器将解调得到的低频基带信号传送至基带处理器处理。低频基带信号经基带处理器处理后,被传递给应用处理器。应用处理器通过音频设备(不限于扬声器170a,受话器170b等)输出声音信号,或通过显示屏194显示图像或视频。在一些实施例中,调制解调处理器可以是独立的器件。在另一些实施例中,调制解调处理器可以独立于处理器110,与移动通信模块150或其他功能模块设置在同一个器件中。
160.无线通信模块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。无线通信模块160还可以从处理器110接收待发送的信号,对其进行调频,放大,经天线2转为电磁波辐射出去。
161.在一些实施例中,电子设备10的天线1和移动通信模块150耦合,天线2和无线通信模块160耦合,使得电子设备10可以通过无线通信技术与网络以及其他设备通信。所述无线通信技术可以包括全球移动通讯系统(global system for mobile communications,gsm),通用分组无线服务(general packet radio service,gprs),码分多址接入(code division multiple access,cdma),宽带码分多址(wideband code division multiple access,wcdma),时分码分多址(time-division code division multiple access,td-scdma),长期演进(long term evolution,lte),bt,gnss,wlan,nfc,fm,和/或ir技术等。所
述gnss可以包括全球卫星定位系统(global positioning system,gps),全球导航卫星系统(global navigation satellite system,glonass),北斗卫星导航系统(beidou navigation satellite system,bds),准天顶卫星系统(quasi-zenith satellite system,qzss)和/或星基增强系统(satellite based augmentation systems,sbas)。
162.电子设备10通过gpu,显示屏194,以及应用处理器等实现显示功能。gpu为图像处理的微处理器,连接显示屏194和应用处理器。gpu用于执行数学和几何计算,用于图形渲染。处理器110可包括一个或多个gpu,其执行程序指令以生成或改变显示信息。
163.显示屏194用于显示图像,视频等。显示屏194包括显示面板。显示面板可以采用液晶显示屏(liquid crystal display,lcd),有机发光二极管(organic light-emitting diode,oled),有源矩阵有机发光二极体或主动矩阵有机发光二极体(active-matrix organic light emitting diode,amoled),柔性发光二极管(flex light-emitting diode,fled),miniled,microled,micro-oled,量子点发光二极管(quantum dot light emitting diodes,qled)等。在一些实施例中,电子设备10可以包括1个或n个显示屏194,n为大于1的正整数。
164.电子设备10可以通过isp,摄像头193,视频编解码器,gpu,显示屏194以及应用处理器等实现拍摄功能。
165.isp用于处理摄像头193反馈的数据。例如,拍照时,打开快门,光线通过镜头被传递到摄像头感光元件上,光信号转换为电信号,摄像头感光元件将所述电信号传递给isp处理,转化为肉眼可见的图像。isp还可以对图像的噪点,亮度,肤色进行算法优化。isp还可以对拍摄场景的曝光,色温等参数优化。在一些实施例中,isp可以设置在摄像头193中。
166.摄像头193用于捕获静态图像或视频。物体通过镜头生成光学图像投射到感光元件。感光元件可以是电荷耦合器件(charge coupled device,ccd)或互补金属氧化物半导体(complementary metal-oxide-semiconductor,cmos)光电晶体管。感光元件把光信号转换成电信号,之后将电信号传递给isp转换成数字图像信号。isp将数字图像信号输出到dsp加工处理。dsp将数字图像信号转换成标准的rgb,yuv等格式的图像信号。在一些实施例中,电子设备10可以包括1个或n个摄像头193,n为大于1的正整数。
167.数字信号处理器用于处理数字信号,除了可以处理数字图像信号,还可以处理其他数字信号。例如,当电子设备10在频点选择时,数字信号处理器用于对频点能量进行傅里叶变换等。
168.视频编解码器用于对数字视频压缩或解压缩。电子设备10可以支持一种或多种视频编解码器。这样,电子设备10可以播放或录制多种编码格式的视频,例如:动态图像专家组(moving picture experts group,mpeg)1,mpeg2,mpeg3,mpeg4等。
169.npu为神经网络(neural-network,nn)计算处理器,通过借鉴生物神经网络结构,例如借鉴人脑神经元之间传递模式,对输入信息快速处理,还可以不断的自学习。通过npu可以实现电子设备10的智能认知等应用,例如:图像识别,人脸识别,语音识别,文本理解等。
170.外部存储器接口120可以用于连接外部存储卡,例如micro sd卡,实现扩展电子设备10的存储能力。外部存储卡通过外部存储器接口120与处理器110通信,实现数据存储功能。例如将音乐,视频等文件保存在外部存储卡中。
171.内部存储器121可以用于存储计算机可执行程序代码,所述可执行程序代码包括指令。处理器110通过运行存储在内部存储器121的指令,从而执行电子设备10的各种功能应用以及数据处理。内部存储器121可以包括存储程序区和存储数据区。其中,存储程序区可存储操作系统,至少一个功能所需的应用程序(比如声音播放功能,图像播放功能等)等。存储数据区可存储电子设备10使用过程中所创建的数据(比如音频数据,电话本等)等。此外,内部存储器121可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件,闪存器件,通用闪存存储器(universal flash storage,ufs)等。
172.电子设备10可以通过音频模块170,扬声器170a,受话器170b,麦克风170c,耳机接口170d,以及应用处理器等实现音频功能。例如音乐播放,录音等。
173.音频模块170用于将数字音频信息转换成模拟音频信号输出,也用于将模拟音频输入转换为数字音频信号。音频模块170还可以用于对音频信号编码和解码。在一些实施例中,音频模块170可以设置于处理器110中,或将音频模块170的部分功能模块设置于处理器110中。
174.扬声器170a,也称“喇叭”,用于将音频电信号转换为声音信号。电子设备10可以通过扬声器170a收听音乐,或收听免提通话。
175.受话器170b,也称“听筒”,用于将音频电信号转换成声音信号。当电子设备10接听电话或语音信息时,可以通过将受话器170b靠近人耳接听语音。
176.麦克风170c,也称“话筒”,“传声器”,用于将声音信号转换为电信号。当拨打电话或发送语音信息时,用户可以通过人嘴靠近麦克风170c发声,将声音信号输入到麦克风170c。电子设备10可以设置至少一个麦克风170c。在另一些实施例中,电子设备10可以设置两个麦克风170c,除了采集声音信号,还可以实现降噪功能。在另一些实施例中,电子设备10还可以设置三个,四个或更多麦克风170c,实现采集声音信号,降噪,还可以识别声音来源,实现定向录音功能等。
177.耳机接口170d用于连接有线耳机。耳机接口170d可以是usb接口130,也可以是3.5mm的开放移动电子设备平台(open mobile terminal platform,omtp)标准接口,美国蜂窝电信工业协会(cellular telecommunications industry association of the usa,ctia)标准接口。
178.压力传感器180a用于感受压力信号,可以将压力信号转换成电信号。在一些实施例中,压力传感器180a可以设置于显示屏194。压力传感器180a的种类很多,如电阻式压力传感器,电感式压力传感器,电容式压力传感器等。电容式压力传感器可以是包括至少两个具有导电材料的平行板。当有力作用于压力传感器180a,电极之间的电容改变。电子设备10根据电容的变化确定压力的强度。当有触摸操作作用于显示屏194,电子设备10根据压力传感器180a检测所述触摸操作强度。电子设备10也可以根据压力传感器180a的检测信号计算触摸的位置。在一些实施例中,作用于相同触摸位置,但不同触摸操作强度的触摸操作,可以对应不同的操作指令。例如:当有触摸操作强度小于第一压力阈值的触摸操作作用于短消息应用图标时,执行查看短消息的指令。当有触摸操作强度大于或等于第一压力阈值的触摸操作作用于短消息应用图标时,执行新建短消息的指令。
179.陀螺仪传感器180b可以用于确定电子设备10的运动姿态。在一些实施例中,可以通过陀螺仪传感器180b确定电子设备10围绕三个轴(即,x,y和z轴)的角速度。陀螺仪传感
器180b可以用于拍摄防抖。示例性的,当按下快门,陀螺仪传感器180b检测电子设备10抖动的角度,根据角度计算出镜头模组需要补偿的距离,让镜头通过反向运动抵消电子设备10的抖动,实现防抖。陀螺仪传感器180b还可以用于导航,体感游戏场景。
180.气压传感器180c用于测量气压。在一些实施例中,电子设备10通过气压传感器180c测得的气压值计算海拔高度,辅助定位和导航。
181.磁传感器180d包括霍尔传感器。电子设备10可以利用磁传感器180d检测翻盖皮套的开合。在一些实施例中,当电子设备10是翻盖机时,电子设备10可以根据磁传感器180d检测翻盖的开合。进而根据检测到的皮套的开合状态或翻盖的开合状态,设置翻盖自动解锁等特性。
182.加速度传感器180e可检测电子设备10在各个方向上(一般为三轴)加速度的大小。当电子设备10静止时可检测出重力的大小及方向。还可以用于识别电子设备姿态,应用于横竖屏切换,计步器等应用。
183.距离传感器180f,用于测量距离。电子设备10可以通过红外或激光测量距离。在一些实施例中,拍摄场景,电子设备10可以利用距离传感器180f测距以实现快速对焦。
184.接近光传感器180g可以包括例如发光二极管(led)和光检测器,例如光电二极管。发光二极管可以是红外发光二极管。电子设备10通过发光二极管向外发射红外光。电子设备10使用光电二极管检测来自附近物体的红外反射光。当检测到充分的反射光时,可以确定电子设备10附近有物体。当检测到不充分的反射光时,电子设备10可以确定电子设备10附近没有物体。电子设备10可以利用接近光传感器180g检测用户手持电子设备10贴近耳朵通话,以便自动熄灭屏幕达到省电的目的。接近光传感器180g也可用于皮套模式,口袋模式自动解锁与锁屏。
185.环境光传感器180l用于感知环境光亮度。电子设备10可以根据感知的环境光亮度自适应调节显示屏194亮度。环境光传感器180l也可用于拍照时自动调节白平衡。环境光传感器180l还可以与接近光传感器180g配合,检测电子设备10是否在口袋里,以防误触。
186.指纹传感器180h用于采集指纹。电子设备10可以利用采集的指纹特性实现指纹解锁,访问应用锁,指纹拍照,指纹接听来电等。
187.温度传感器180j用于检测温度。在一些实施例中,电子设备10利用温度传感器180j检测的温度,执行温度处理策略。例如,当温度传感器180j上报的温度超过阈值,电子设备10执行降低位于温度传感器180j附近的处理器的性能,以便降低功耗实施热保护。在另一些实施例中,当温度低于另一阈值时,电子设备10对电池142加热,以避免低温导致电子设备10异常关机。在其他一些实施例中,当温度低于又一阈值时,电子设备10对电池142的输出电压执行升压,以避免低温导致的异常关机。
188.触摸传感器180k,也称“触控面板”。触摸传感器180k可以设置于显示屏194,由触摸传感器180k与显示屏194组成触摸屏,也称“触控屏”。触摸传感器180k用于检测作用于其上或附近的触摸操作。触摸传感器可以将检测到的触摸操作传递给应用处理器,以确定触摸事件类型。可以通过显示屏194提供与触摸操作相关的视觉输出。在另一些实施例中,触摸传感器180k也可以设置于电子设备10的表面,与显示屏194所处的位置不同。
189.骨传导传感器180m可以获取振动信号。在一些实施例中,骨传导传感器180m可以获取人体声部振动骨块的振动信号。骨传导传感器180m也可以接触人体脉搏,接收血压跳
动信号。在一些实施例中,骨传导传感器180m也可以设置于耳机中,结合成骨传导耳机。音频模块170可以基于所述骨传导传感器180m获取的声部振动骨块的振动信号,解析出语音信号,实现语音功能。应用处理器可以基于所述骨传导传感器180m获取的血压跳动信号解析心率信息,实现心率检测功能。
190.按键190包括开机键,音量键等。按键190可以是机械按键。也可以是触摸式按键。电子设备10可以接收按键输入,产生与电子设备10的用户设置以及功能控制有关的键信号输入。
191.马达191可以产生振动提示。马达191可以用于来电振动提示,也可以用于触摸振动反馈。例如,作用于不同应用(例如拍照,音频播放等)的触摸操作,可以对应不同的振动反馈效果。作用于显示屏194不同区域的触摸操作,马达191也可对应不同的振动反馈效果。不同的应用场景(例如:时间提醒,接收信息,闹钟,游戏等)也可以对应不同的振动反馈效果。触摸振动反馈效果还可以支持自定义。
192.指示器192可以是指示灯,可以用于指示充电状态,电量变化,也可以用于指示消息,未接来电,通知等。
193.sim卡接口195用于连接sim卡。sim卡可以通过插入sim卡接口195,或从sim卡接口195拔出,实现和电子设备10的接触和分离。电子设备10可以支持1个或n个sim卡接口,n为大于1的正整数。sim卡接口195可以支持nano sim卡,micro sim卡,sim卡等。同一个sim卡接口195可以同时插入多张卡。所述多张卡的类型可以相同,也可以不同。sim卡接口195也可以兼容不同类型的sim卡。sim卡接口195也可以兼容外部存储卡。电子设备10通过sim卡和网络交互,实现通话以及数据通信等功能。在一些实施例中,电子设备10采用esim,即:嵌入式sim卡。esim卡可以嵌在电子设备10中,不能和电子设备10分离。
194.图5是本技术实施例的电子设备10的软件结构框图。
195.分层架构将软件分成若干个层,每一层都有清晰的角色和分工。层与层之间通过软件接口通信。在一些实施例中,分层架构分为四层,从上至下分别为应用程序层,应用程序框架层,协议栈,以及硬件层。
196.应用程序层可以包括一系列应用程序包。
197.如图5所示,应用程序包例如包含车钥匙对应的车厂app以及钱包应用。钱包应用可与车厂应用中的软件开发工具包(software development kit,sdk)通信。钱包应用可通过对应的服务器对车厂app的合法性进行校验。钱包应用还可将校验结果通知给蓝牙代理模块(ble agent)。蓝牙代理模块可根据该校验结果确定是否扫描包含指定的mac地址的广播。蓝牙代理模块还可根据该校验结果将被系统清理的车厂app启动,具体可参考本技术实施例中图7~图9、图16、图19~图21、图23所示出示例的描述。
198.应用程序包不限于包含在自动开启车锁场景下的车厂app。在其他场景下,应用程序包还可包含其他应用。例如在无感支付场景,应用程序包还包含支付应用(例如微信应用、支付宝应用),该支付应用可通过包含的sdk与钱包应用连接。在配件(例如蓝牙电子秤)自动上传体重数据到电子设备10场景下,应用程序包还包含体重秤对应的app。该app可通过包含的sdk与钱包应用连接。在可穿戴设备(例如手环、手表)上传数据到电子设备的场景,应用程序包还包含手环对应的应用、手表对应的应用。本技术实施例对具体的场景和所涉及的电子设备10安装的应用不作限定。
199.本技术实施例中,第一应用可包含与外部蓝牙设备(汽车车机、可穿戴设备、配件等)相关的应用,例如车厂app、体重秤对应的app、手环对应的应用、手表对应的应用等等。第二应用可包含钱包应用。
200.在另一种可能的实现方式中,车厂应用、支付应用和体重秤对应的app可直接与应用程序框架层的蓝牙代理模块连接。
201.本技术对应用程序包不作限制,还可以包括相机,图库,日历,通话,地图,导航,wlan,蓝牙,音乐,视频,短信息等应用程序。
202.应用程序框架层为应用程序层的应用程序提供应用编程接口(application programming interface,api)和编程框架。应用程序框架层包括一些预先定义的函数。
203.如图5所示,应用程序框架层可以包含本技术实施例提供的蓝牙代理模块。蓝牙代理模块可以是应用程序框架层的应用/接口。蓝牙代理模块,用于指示蓝牙芯片扫描包含指定的mac地址的蓝牙广播信号。蓝牙代理模块还用于在蓝牙芯片扫描到该包含指定的mac地址的广播时启动指定应用(例如车厂app),以建立该指定应用于外部蓝牙设备(例如汽车车机20)之间的蓝牙通信连接。具体的,蓝牙代理模块的功能可参考本技术实施例中图7~图9、图16、图19~图21、图23所示出示例的描述。
204.应用程序框架层还可以包括窗口管理器,内容提供器,视图系统,电话管理器,资源管理器,通知管理器等,本技术实施例对此不作限定。其中,窗口管理器用于管理窗口程序。窗口管理器可以获取显示屏大小,判断是否有状态栏等。内容提供器用来存放和获取数据,并使这些数据可以被应用程序访问。视图系统包括可视控件,例如显示文字的控件,显示图片的控件等。视图系统可用于构建应用程序。电话管理器用于提供电子设备10的通信功能。例如通话状态的管理(包括接通,挂断等)。资源管理器为应用程序提供各种资源,比如本地化字符串,图标,图片等等。通知管理器使应用程序可以在状态栏中显示通知信息,可以用于传达告知类型的消息。比如通知管理器被用于告知下载完成,消息提醒等。
205.协议栈可包含多种协议。如图5所示,协议栈包含蓝牙协议栈(bt stack),蓝牙协议栈定义了蓝牙框架中的多个应用(profile)和核心协议(protocol),每个profile定义了各自相应的消息格式与应用规则,profile是蓝牙服务(application)。为了实现不同平台下的不同设备的互联互通,蓝牙协议为各种可能的、有通用意义的应用场景,都制定了规范,如a2dp(advanced audio distribution profile)、hfp(hands-free profile)等等。核心协议包括但不限于蓝牙基本的服务协议sdp(service discover protocol)、逻辑链路控制和适配协议l2cap(logical link control and adaptation protocol)等。核心协议是蓝牙协议栈中必不可少的。
206.本技术实施例的蓝牙协议可支持经典蓝牙(basic rate/enhanced data rate,br/edr)和/或低功耗蓝牙(bluetooth low energy,ble)。蓝牙协议还可以包含不同版本的蓝牙协议,例如蓝牙版本1.0、1.2、2.0+edr、3.0+hs、4.0、4.1、4.2和5.0。
207.不限于蓝牙协议,协议栈中还可以包含其他类型的协议。
208.如图5所示,硬件层可包含蓝牙芯片。蓝牙代理模块可通过蓝牙协议栈与蓝牙芯片通信。蓝牙芯片可根据蓝牙代理模块的指示,执行扫描蓝牙广播信号。蓝牙芯片还可与第三方设备(例如汽车车机)的蓝牙芯片建立蓝牙连接,并与车厂app连接,以建立车厂app经由蓝牙芯片与外部蓝牙设备的蓝牙通信连接。
209.在本技术的一些实施例中,应用程序层中钱包应用的功能还可由蓝牙代理模块实现,本技术提供的实施例中可不再包含该钱包应用。具体的,蓝牙代理模块可与车厂app中的sdk、支付应用的sdk和体重秤对应的app的sdk通信。蓝牙代理模块可通过对应的服务器对车厂app的合法性进行校验。蓝牙代理模块可根据该校验结果确定是否扫描包含指定的mac地址的广播。蓝牙代理模块还可根据该校验结果将被系统清理的车厂app启动。
210.下面介绍本技术实施例提供的蓝牙系统的架构。该系统架构可用于蓝牙无感开启车锁的场景。请参阅图6,图6是本技术实施例提供的一种蓝牙系统的架构示意图。如图6所示,该蓝牙系统包含电子设备10、汽车车机20和车厂服务器30。
211.如图6所示,电子设备10包含蓝牙芯片101、车厂app102、se 104、蓝牙代理模块105、钱包app 106。如图6所示,蓝牙芯片101分别与车厂app102、蓝牙代理模块105建立有连接。其中,蓝牙芯片101与车厂app102可经由电子设备10的处理器连接。车厂app102可包含与钱包应用106对应的sdk,车厂app102通过该sdk与钱包app106通信,具体可参考图5所描述实施例中车厂app的描述。
212.钱包app106可分别与车厂app102、蓝牙代理模块105、se 104连接。钱包app106可用于与钱包服务器通信以验证车厂app102的注册信息是否合法。在注册过程,如果车厂app102的注册信息合法,钱包app106可将车厂app102的注册信息发送到蓝牙代理模块105保存。在无感开启汽车车锁过程,如果车厂app102的注册信息合法,钱包app106可启动车厂app102。
213.其中,电子设备10中的车厂app102可与车厂服务器30建立通信连接。车厂服务器30可通过该通信连接向车厂app102下发证书、签名信息等。证书和签名信息可用于车厂app102在注册时向钱包app106或者蓝牙代理模块105证明车厂app的合法性,证书、签名信息可携带在图7所描述示例步骤s202中的注册信息。证明车厂app的合法性的过程可参考图7所描述示例中步骤s203的描述。电子设备10中的钱包app106也可与车厂服务器30建立通信连接,车厂服务器30可通过该通信连接在车厂app102注册时向钱包app106发送用于解锁的密文。钱包app106可将该密文存储在se104中。其中,该密文和车厂服务器30向汽车车机发送的密文,可以一一对应(例如两密文相同),在通过通信连接校验密文时,汽车车机可比对两个密文是否相同。
214.车厂服务器30与汽车车机20可通过以下中的一个或多个与mcu203连接:远程信息处理器(telematics box,tbox)、车身控制器(body control module,bcm)、中央控制模块(central control module,ccm)。
215.如图6所示,汽车车机20可包含主蓝牙芯片201、车机se202、微控制单元(microcontroller unit,mcu)203和测距蓝牙芯片204。其中,mcu203可分别与主蓝牙芯片201、车机se202、测距蓝牙芯片204建立有通信连接。
216.测距蓝牙芯片204的数量可以是多个,可分别对应汽车上不同位置安装的多根蓝牙天线。例如,汽车上不同位置共安装有6根蓝牙天线,6根蓝牙天线可均接收电子设备发送蓝牙信号。则这6根蓝牙天线中每根可分别对应一个测距蓝牙芯片,用于测量接收到的蓝牙信号的接收的信号强度指示(received signal strength indication,rssi)。电子设备中的mcu 203可根据这多个蓝牙芯片测得的rssi确定用户携带的电子设备与汽车车机的距离,以及电子设备与汽车之间的方位关系。
217.其中,汽车车机20中的mcu203可与车厂服务器30建立通信连接。车厂服务器30可通过该通信连接在车厂app102注册时向mcu203发送用于解锁的密文。mcu203可将该密文存储在车机se202中。
218.在使用图6所示出系统架构进行无感开启汽车车锁之前,用户需要在电子设备10上安装车厂app102,电子设备10完成注册过程。下面分别对以下过程进行介绍:(a)注册过程;(b)无感开启汽车车锁过程;(c)蓝牙开关重启或者电子设备10重启过程。
219.(a)注册过程
220.下面结合图6所示系统架构和图7所示流程介绍注册过程。请参阅图7,图7是本技术实施例提供的车厂app102注册过程的流程示意图。该车厂app102注册过程包含步骤s201~s204。
221.s201、电子设备10安装车厂app102。在车厂app102的用户界面上响应于用户操作,电子设备10的蓝牙芯片101与汽车车机20的主蓝牙芯片201建立蓝牙连接。
222.电子设备10和汽车车机20之间的距离在设定阈值范围内。在该设定阈值范围内,电子设备10和汽车车机20可建立蓝牙连接。该蓝牙连接可以是ble连接,也可以是br/edr连接。具体的,汽车车机20中的主蓝牙芯片201可发送蓝牙广播信号,该蓝牙广播信号可携带汽车车机20的mac地址、蓝牙名称等。车厂app102的用户界面上可响应于用户操作,开始搜索蓝牙广播信号,并将搜索到的蓝牙广播信号携带的蓝牙名称显示出来。例如车厂app102的用户界面上显示出来的蓝牙名称可包含第一蓝牙名称,该第一蓝牙名称为汽车车机20的蓝牙名称。
223.关于连接过程,在一种可能的实现方式中,该蓝牙连接为br/edr连接。响应于作用在第一蓝牙名称的用户操作,电子设备10可对汽车车机20进行配对,并建立与汽车车机20的蓝牙连接。以下分别介绍两种蓝牙连接过程。
224.(1)br/edr连接过程
225.其中,建立br/edr连接过程可包含配对过程和连接过程,以下分别进行介绍。
226.(a)配对过程
227.在配对过程中,首先发起配对的设备称为主设备(master),被动进行配对的设备称为从设备(slave)。例如在本技术实施例中,电子设备10主动发起与汽车车机20的配对,电子设备10可以称为主设备,汽车车机20可以称为从设备。蓝牙配对过程中,主设备可首先处于扫描(inquiry)状态,主动发现外部设备。从设备处于inquiry scan状态,会回应主设备的扫描。蓝牙配对过程可以如下:
228.步骤一、主设备和从设备分别生成初始密钥(kinit)。
229.主、从设备使用相同的e22算法产生初始密钥,则双方设备各自算出来的初始密钥也应该相同。
230.步骤二、主设备和从设备分别生成链路密钥(kab)。
231.步骤三、主从设备双向认证。
232.双向认证挑战-应答(challenge-response)方式。主设备可以为应答方,从设备可以为请求方。应答方可以产生一个128位的随机数au_randa,并以明文方式发生给请求方。应答方和请求方都用e1算法将各自得到的au_randa、kab和bd_randb加密运算分别生成32位的sresa和sresb。其中,sresa为作为应答方的主设备生成的,sresb为作为请求方的从设
备生成的。请求方将sresb发送给应答方,应答方比较sresa和sresb,如果相等,此次认证通过,否则认证不通过。执行完此次认证后主设备和从设备角色对换,主设备作为请求方,从设备应答方,采用同样的方式进行认证。
233.在电子设备10与汽车车机20认证完后,电子设备10和汽车车机20即可以利用链路密钥kab加密各自传输的数据。在蓝牙配对完成之后,汽车车机20和电子设备10下一次再建立连接时无需重新配对。本技术实施例中,汽车车机20在与电子设备10配对完成之后,可停止发送蓝牙广播信号。例如,汽车车机20在与电子设备10配对完成之后,电子设备10重新开机后,不再发送蓝牙广播信号,可进行page。汽车车机20在与电子设备10配对完成之后,汽车车机20重新开机后,不再发送蓝牙广播信号,可进行page scan。
234.(b)连接过程
235.连接过程可包含以下步骤:
236.步骤一、电子设备10处于page状态,发送page数据包。
237.该page数据包中可包含汽车车机20的设备访问码(device access code,dac)。
238.步骤二、汽车车机20处于page scan状态时,监听到自己的dac。
239.步骤三、汽车车机20可发送对电子设备10的回复,并从page scan状态切换为从单元响应(slave response)状态。
240.步骤四、在接收到汽车车机20发送的回复之后,电子设备10可根据该回复向汽车车机20发送跳频序列(frequency hopping sequence,fhs),并从page状态切换为主单元响应(master response)状态。
241.步骤五、汽车车机20在接收到fhs之后,发送第二个回复给电子设备10,并从slave response状态切换为连接(connection)状态。
242.步骤六、电子设备10在接收到汽车车机20发送的回复之后,电子设备10从master response状态切换为连接状态。
243.此时,电子设备10汽车车机20均处于连接状态。
244.(2)ble连接过程
245.在开始连接时,两设备分别处于广播状态(advertising)和扫描状态(scanning)。处于广播状态的设备可称为广播方(advertiser),例如本技术实施例中的汽车车机20。处于扫描状态的设备可称为扫描方(observer),例如本技术实施例中的电子设备10。建立ble连接的过程可以包括如下步骤:
246.s1、汽车车机20不断发送ble广播信号,t为广播间隔。
247.每发送一次广播包,我们称为一次广播事件(advertising event)。每一个广播事件可包含三个广播包,即分别在37/38/39三个信道上同时广播相同的广播包。广播事件是有一个持续时间的,该持续时间为广播发射窗口。
248.s2、电子设备10开启扫描窗口。
249.电子设备10扫描ble广播信号的持续时间可以被称为扫描窗口(scan windows)。
250.s3、电子设备10的扫描窗口与汽车车机20的广播发射窗口匹配成功。
251.电子设备10的扫描窗口与汽车车机20的广播发射窗口匹配成功,则电子设备10才能接收到汽车车机20发送的ble广播信号。当电子设备10接收到汽车车机20发送的ble广播信号后,电子设备10可从广播状态(advertising)进入发起(initiating)状态,电子设备10
执行步骤s4。
252.s4、电子设备10向汽车车机20发送连接请求。
253.其中,连接请求为conn_req(又称为connect_ind,即a2数据包)。conn_req可包含窗口偏移量(transmit window offset)、窗口大小(transmit window size)等。
254.conn_req用于通知汽车车机20,电子设备10将在传输窗口(transmit window)发送第一个同步包(p1数据包)给汽车车机20。使得汽车车机20在该传输窗口对应的时间内打开射频接收窗口。汽车车机20收到p1数据包后,将向电子设备10回复p2数据包(ack包)。一旦手机收到p2数据包,电子设备10与汽车车机20之间的ble连接即可建立成功。电子设备10与汽车车机20均进入连接状态(connecting)。
255.本技术实施例中,电子设备10建立与汽车车机20的蓝牙连接之前,电子设备10上的蓝牙开关打开,使得电子设备10的蓝牙芯片可扫描蓝牙广播信号。
256.s202、车厂app102向钱包app106发送注册信息。
257.本技术实施例中,当蓝牙芯片101与主蓝牙芯片201建立蓝牙连接时,车厂app102可向钱包app106发送注册信息。其中,注册信息可包含汽车车机20的mac地址(第一mac地址)、app102的包名、汽车的品牌等等。其中,该注册信息还可包含证书和/或签名信息,该证书和/或签名信息由车厂服务器30下发给车厂app,例如可以是在电子设备10安装车厂app102时下发给车厂app102的。
258.其中,第一mac地址可以由车厂app102从蓝牙芯片101获得。
259.s203、钱包app106验证注册信息是否合法。若是,执行步骤s204。
260.钱包app106可与钱包服务器通信,以校验该证书和/或签名信息是否合法。具体的,钱包服务器上可存储用于验证该证书和/或签名信息的验证信息。钱包服务器对于认可的厂商的服务器(例如钱包服务器认可车厂服务器30)下发的证书认为是合法的,则钱包服务器上预先存储用于验证车厂服务器30的证书和/或签名信息的验证信息。通过该验证信息,钱包服务器可校验该证书和/或签名信息是合法的。
261.示例性的,该车厂app102的注册信息包含第一证书,第一证书是经证书授权中心(certificate authority,ca)数字签名的数字证书。该证书授权中心是钱包app106对应的钱包服务器认可的。第一证书可包含车厂服务器30的公开密钥、车厂服务器30的名称以及证书授权中心的数字签名。
262.第一证书是含有车厂服务器30的身份信息并经过证书授权中心审核签发的电子数据。因此,该第一证书可以通过证书授权中心的数字签名向钱包服务器证明车厂服务器30经过证书授权中心认证。
263.钱包服务器认可证书授权中心,则钱包服务器上保存有证书授权中心的公开密钥,通过该证书授权中心的公开密钥来验证第一证书中证书授权中心的数字签名,验证通过后得到车厂服务器30的公开密钥、车厂服务器30的名称等信息。钱包服务器可存储认可的厂商的名称列表。如果钱包服务器认可车厂服务器30,钱包服务器可存储车厂服务器30的名称。钱包服务器验证证书授权中心的数字签名通过后,检测第一证书包含的车厂服务器30的名称是否包含在本地存储的认可的厂商名称列表中。如果是,则表明注册信息合法,钱包服务器可将验证结果通知给钱包app106,进而执行步骤s204。
264.当钱包app106验证注册信息不合法时,钱包app106可通知车厂app102。车厂
app102可显示提示注册失败。
265.s204、钱包app106将注册信息发送给蓝牙代理模块105。
266.蓝牙代理模块105可存储权限校验通过的注册信息,例如包含前述车厂app102的注册信息。该车厂app102的注册信息可包含汽车车机20的mac地址(第一mac地址)、app102的包名、汽车的品牌。示例性的,钱包app106校验app2的注册信息和app3的注册信息是合法的,则蓝牙代理模块105可接收并存储app2的注册信息和app3的注册信息。
267.通过步骤s201~s204,车厂app102在钱包app106完成注册。
268.本技术实施例中,车厂服务器30还可将用于解锁的密文发送给电子设备10的钱包app106和汽车车机的mcu203。钱包app106将用于解锁的密文存储在se104,汽车车机的mcu203将用于解锁的密文存储在车机se202。该用于解锁的密文可以是用户在车厂app102设置的,也可以是根据用户在车厂app102设置的密码生成的。
269.在本技术实施例中,经过步骤s101~s104实现车厂app102注册完成,且用于解锁的密文已下发到电子设备10和汽车车机20后,电子设备10可在负一屏、车厂app102的用户界面和钱包app106的用户界面上显示用于解锁的控件。响应于作用在该用于解锁的控件的用户操作,电子设备10可通过与汽车车机20之间的蓝牙连接进行密文校验,进而实现汽车车门解锁。示例性的,该用于解锁的控件例如是图9所示出的负一屏界面10上的控件1011。
270.其中,负一屏界面是指在系统的多个桌面屏幕左侧的,用于展示信息的屏幕;其中,桌面屏幕用于放置应用程序或小组件图。
271.(b)无感开启汽车车锁过程
272.本技术实施例中,当蓝牙芯片101与主蓝牙芯片201之间的通信连接断开,蓝牙代理模块105可通知蓝牙芯片101开启蓝牙扫描功能,直到扫描到包含汽车车机的mac地址的蓝牙广播信号。蓝牙代理模块105根据扫描到的蓝牙广播信号,打开车厂app102。车厂app102回连汽车车机,以重新建立起蓝牙芯片101与主蓝牙芯片201之间的通信连接。该通信连接可用于校验密文并开启汽车车锁。
273.下面结合图6所示系统架构和图8所示流程介绍上述无感开启汽车车锁过程。请参阅图8,图8是本技术实施例提供的无感开启汽车车锁过程的流程示意图。该无感开启汽车车锁过程包含步骤s301~s320。
274.s301、蓝牙芯片101与主蓝牙芯片201之间建立蓝牙连接。
275.此时车厂app102处于启动状态。车厂app102启动状态,可包含前台运行状态,和后台运行状态。
276.s302、车厂app102重新向钱包app106发送注册信息。
277.该注册信息的描述可参考图6所描述实施例中步骤s204的描述。
278.s303、钱包app106验证注册信息是否合法。若是,保存车厂app102的注册信息。
279.本技术实施例中,由于app106的注册信息的合法性验证可以有有效期,车厂app102重新通过蓝牙芯片101与主蓝牙芯片201之间建立蓝牙连接时,钱包app106可重新验证该app106的注册信息。步骤s302~s303可参考s202~s203。当钱包app106对应的钱包服务器对车厂服务器30不再认可时,钱包服务器本地存储的认可的厂商名称列表中不再包含车厂服务器30的名称。这样,当重新建立蓝牙连接时实时验证注册信息的合法性,可提高安全性。
280.钱包app106可保存该车厂app102的注册信息,并将车厂app102的注册信息发送给蓝牙代理模块105。
281.本技术实施例中,步骤s302~s303中验证注册信息合法性的过程为可选步骤。在另一种可能的实现方式中,步骤s301之后,可执行步骤s304。电子设备10可根据注册过程存储的车厂app102的注册信息验证车厂app102的合法性。
282.s304、车厂app102被系统清理,蓝牙芯片101与主蓝牙芯片201之间的蓝牙连接断开。
283.本技术实施例中,蓝牙芯片101与主蓝牙芯片201之间的蓝牙连接的生命周期,可在车厂app102被系统清理时结束。当车厂app102被系统清理时,蓝牙芯片101可断开主蓝牙芯片201之间的蓝牙连接。
284.本技术实施例中,不限于车厂app102被系统清理导致蓝牙芯片101与主蓝牙芯片201之间的蓝牙连接断开,还可以是其他原因导致该蓝牙连接断开。本技术实施例中,只要是蓝牙连接被动断开,均可执行步骤s305。其中,“被动断开”是指由于蓝牙连接的距离拉远或者其他原因导致信号质量较差导致蓝牙连接断开。在蓝牙芯片101与主蓝牙芯片201之间的蓝牙连接被动断开的情况下,将接收到“connection timeout”错误码。例如电子设备10与汽车车机20拉距(即距离过远)导致两设备无法通信,即该蓝牙连接断开。再例如当障碍物遮挡或者其他原因导致两设备无法通信,即蓝牙连接断开。蓝牙接收信号强度rrsi低于阈值,则两设备无法通信,即该蓝牙连接断开。当蓝牙代理模块105识别到蓝牙连接被动断开时,蓝牙代理模块105均执行步骤s305。
285.电子设备10响应于用户的操作,关闭车厂app102,从而蓝牙芯片101与主蓝牙芯片201之间的蓝牙连接断开,该情况下蓝牙连接也属于被动断开。例如,当用户在最近打开的应用界面,点击清理控件,电子设备10可清除后台运行的车厂app102,从而蓝牙芯片101与主蓝牙芯片201之间的蓝牙连接断开,该情况下蓝牙连接也属于被动断开。当蓝牙代理模块105识别到蓝牙连接被动断开时,蓝牙代理模块105执行步骤s305。
286.在本技术的另一些实施例中,当电子设备10与汽车车机20拉距导致蓝牙连接断开时,电子设备10上车厂app102可仍然处于开启状态。电子设备10中的蓝牙代理模块105可获取当前车厂app102是否处于开启状态。如果当前车厂app102处于开启状态,蓝牙芯片101向主蓝牙芯片201发起连接请求,即在ble连接场景此时蓝牙芯片101处于initiating状态。当车厂app102处于关闭状态时(例如车厂app102后台运行超过设定时间,被系统清理掉),蓝牙代理模块105可通知蓝牙芯片101通知蓝牙芯片101进行蓝牙扫描,即此时蓝牙代理模块105处于scanning状态。
287.在本技术的另一些实施例中,当与汽车车机20蓝牙连接断开,且车厂app102仍然处于开启状态时,蓝牙芯片101可在不同的通道分别发起连接请求和进行蓝牙扫描。具体的,蓝牙芯片101可支持多通道连接。当与汽车车机20蓝牙连接断开,且车厂app102仍然处于开启状态时,蓝牙芯片101的一个通道(例如通道1)可处于initiating状态以回连主蓝牙芯片201,另一个通道(例如通道2)可处于scanning状态以进行蓝牙扫描。蓝牙芯片101可通过以上任一个通道来实现重新建立起与主蓝牙芯片201之间的蓝牙连接。可选的,当通过通道1建立起与主蓝牙芯片201之间的蓝牙连接时,蓝牙芯片101可停止通道2上的连接进程。当通过通道2建立起与主蓝牙芯片201之间的蓝牙连接时,蓝牙芯片101可停止通道1上的连
接进程。这样,通过两个通道回连汽车车机的主蓝牙芯片,可提高回连效率。
288.s305、蓝牙代理模块105识别到蓝牙连接断开,向蓝牙芯片101发送第一通知,第一通知用于指示蓝牙芯片101开始进行蓝牙扫描。
289.其中,该第一通知携带第一mac地址。蓝牙芯片101开始进行蓝牙扫描后,检测接收到的蓝牙广播信号是否携带该第一mac地址。
290.可以理解的,本技术实施例以汽车车机20的mac地址为例进行介绍,但是不限于mac地址,车载蓝牙芯片201广播的蓝牙广播信号还可携带其他指示该汽车的参数,例如vin、通用唯一识别码(universally unique identifier,uuid)等,则在注册过程中车厂app102的注册信息中携带汽车的vin或uuid。本技术实施例对指示汽车的参数不作限定。
291.s306、蓝牙芯片101开启蓝牙扫描功能,开始扫描蓝牙广播信号。
292.s307、主蓝牙芯片201发送蓝牙广播信号,蓝牙广播信号携带汽车车机20的mac地址。
293.在本技术的一种可能的实现方式中,主蓝牙芯片201可在已建立蓝牙连接时停止广播蓝牙广播信号。当蓝牙连接断开时,开始广播蓝牙广播信号。在另一种可能的实现方式中,无论已蓝牙连接状态还是断开连接状态,主蓝牙芯片201可持续广播蓝牙广播信号。
294.其中,主蓝牙芯片201发送的蓝牙广播信号即为本技术实施例的第一广播信号。第一广播信号携带第二电子设备(例如汽车车机)的设备信息。汽车车机的设备信息包含汽车车机的mac地址、vin、uuid等。
295.电子设备10可移动到能够扫描到主蓝牙芯片201发送的蓝牙广播信号的区域内,则执行步骤s308。
296.s308、蓝牙芯片101根据存储的第一mac地址,扫描到主蓝牙芯片201发送蓝牙广播信号。
297.蓝牙芯片101可获得扫描到的蓝牙广播信号携带的mac地址,并与本地存储的第一mac地址比对。当蓝牙广播信号携带的mac地址与存储的第一mac地址相同时,执行步骤s309。
298.s309、蓝牙芯片101向蓝牙代理模块105发送第二通知,第二通知用于通知扫描到的蓝牙广播信号携带第一mac地址。
299.其中,在步骤s310之前,蓝牙代理模块105可处于休眠状态,当蓝牙芯片101确定接收到的蓝牙广播信号携带的mac地址与存储的第一mac地址相同时,唤醒蓝牙代理模块105并执行步骤s310。
300.s310、蓝牙代理模块105根据第一mac地址,向钱包app106发送第三通知,第三通知用于指示钱包app106验证车厂app102的注册信息是否合法。若是,执行步骤s312。
301.本技术实施例中,步骤s311可选的可跳过,即蓝牙代理模块105接收到第二通知时即通知钱包app106执行步骤s312。本技术实施例中,不限于钱包app106启动车厂app102,还可以是蓝牙代理模块105启动该车厂app102。本技术实施例中,当钱包app106处于关闭状态时,蓝牙代理模块105可启动钱包app106。
302.本技术实施例中,当验证车厂app102的不合法时,结束流程,不再执行步骤s311。
303.s311、钱包app106启动车厂app102。
304.s312、车厂app102向蓝牙芯片101发送第四通知,第四通知用于指示蓝牙芯片101
向主蓝牙芯片201发起回连。
305.s313、蓝牙芯片101与主蓝牙芯片201回连,以重新建立连接。
306.蓝牙芯片101与主蓝牙芯片201回连,即向主蓝牙芯片201发送回连请求。主蓝牙芯片201接收到回连请求后,向蓝牙芯片101发送的响应数据包,则蓝牙芯片101与主蓝牙芯片201重新建立蓝牙连接。
307.ble连接场景下,蓝牙芯片101开始扫描蓝牙广播信号时,该蓝牙扫描可以为ble扫描,此时蓝牙芯片101处于scanning状态。主蓝牙芯片201发送蓝牙广播信号,主蓝牙芯片201可处于广播(advertising)状态。蓝牙芯片101向主蓝牙芯片201发起回连时,蓝牙芯片101进入initiating状态。最后,蓝牙芯片101由initiating状态进入连接(connection)状态,主蓝牙芯片201由advertising进入connection状态,从而蓝牙芯片101与主蓝牙芯片201回连重新建立连接。
308.在br/edr连接场景下,在前述图7所描述注册流程步骤s101中蓝牙芯片101和主蓝牙芯片202已完成配对。蓝牙芯片101开始进行蓝牙扫描时,该蓝牙扫描可以为br/edr扫描,此时蓝牙芯片101处于inquiry状态。主蓝牙芯片201发送蓝牙广播信号,主蓝牙芯片201可处于inquiry scan状态。为了恢复蓝牙连接,蓝牙芯片101向已经蓝牙连接过的主蓝牙芯片201发起回连。示例性的,蓝牙芯片101可寻呼(page)主蓝牙芯片201,以建立起蓝牙芯片101与主蓝牙芯片201之间的蓝牙连接。
309.s314、当蓝牙芯片101与主蓝牙芯片201建立连接时,蓝牙代理模块105可向蓝牙芯片101发送第五通知,第五通知用于指示蓝牙芯片101关闭蓝牙扫描功能,即停止进行蓝牙扫描。
310.本技术实施例中,当蓝牙芯片101和主蓝牙芯片201之间建立蓝牙连接时,蓝牙协议栈可向蓝牙代理模块105发送通知,蓝牙代理模块105可执行步骤s314。
311.当重新建立起蓝牙芯片101与主蓝牙芯片201之间的蓝牙连接时,不再需要扫描蓝牙广播信号,关闭蓝牙扫描功能,从而节省功耗。
312.s315、当主蓝牙芯片201的rssi大于设定阈值时,mcu203启动测距蓝牙芯片204测量电子设备10与汽车车机20之间的距离。
313.本技术实施例中,测距蓝牙芯片204可处于休眠状态,只有当主蓝牙芯片201的rssi大于设定阈值时需要对电子设备10进行精确测距时mcu203才唤醒测距蓝牙芯片204。这样,只有当用户携带电子设备10靠近汽车,在汽车附近设定距离内,mcu203才启动测距蓝牙芯片204来确定携带电子设备10的用户与汽车之间的相对方位、与汽车车机之间的距离。在用户拉动车门把手时,mcu203根据电子设备10的用户与汽车之间的相对方位、与汽车车机之间的距离,确定进行密文校验,以开启汽车车锁。
314.本技术实施例对唤醒测距蓝牙芯片204的时间不作限定。不限于在主蓝牙芯片201的rssi大于设定阈值时才唤醒,例如还可以是在主蓝牙芯片201与蓝牙芯片101建立连接时,即唤醒测距蓝牙芯片204。
315.s316、当车门把手被拉动且电子设备10与汽车车机20之间的距离小于设定阈值时,mcu203通过蓝牙芯片101与主蓝牙芯片201之间的蓝牙连接向钱包app106发送密文校验指令。
316.s317、钱包app106从se 104的applet获取第一密文。
317.可以理解的,电子设备10中密文不限于存储在se 104的applet中,还可以存储在其他安全存储区中,例如存储在可信执行环境(trusted execution environment,tee)中的应用(trusted execution environment application,ta)中。则钱包app106可从tee中获取第一密文,发送给汽车车机20。
318.s318、钱包app106通过车厂app102、蓝牙芯片101向mcu203发送第一密文。
319.其中,第一密文在步骤s319的传输过程中,可加密传输,本技术实施例对加密的方法不作限定。
320.s319、mcu203将第一密文与车机se202中的密文进行比对。
321.s320、密文比对通过,mcu203开启汽车的车锁。
322.图8所示出的无感开启汽车车锁过程,即便车厂app102被系统清理掉,依然无需用户手动在电子设备10上打开车厂app,电子设备10可在扫描到汽车车机20发送的蓝牙广播信号时,在车厂app102被关闭的情况下启动车厂app以实现无感开启车锁。这样,提高了开启汽车的车锁的便利性,从而提高无感开启车锁的体验。
323.在本技术的一些实施例中,步骤s305中蓝牙代理模块105下发的第一通知时还可对蓝牙扫描的时长进行计时。具体的,蓝牙代理模块105按照该蓝牙扫描的时长对蓝牙芯片101执行蓝牙扫描的时间进行计时。当计时时间超过该蓝牙扫描的时长时,蓝牙代理模块105可通知蓝牙芯片101关闭蓝牙扫描功能,即停止进行蓝牙扫描。该蓝牙扫描的时长即为设定时间,电子设备10在该设定时间内扫描蓝牙广播信号。
324.可选的,该蓝牙扫描的时长可以是由的钱包服务器下发到蓝牙代理模块105。在另一些实施例中,钱包服务器上可设置蓝牙扫描的时长的取值范围,例如小于或等于7*24小时。蓝牙代理模块105下发的蓝牙扫描的时长需满足上述钱包服务器上设置的取值范围。
325.本技术实施例中,该蓝牙扫描的时长的取值,可与电子设备10上其他类型的扫描重合执行,即电子设备10进行其他类型的扫描时,同时扫描蓝牙广播信号。例如,huawei share的灭屏后进行扫描的时间可以为24小时,则在huawei share扫描期间,电子设备还可同时检测扫描到的蓝牙广播信号,并检测该蓝牙广播信号是否携带第二电子设备的设备信息。
326.本技术实施例中,上述的(a)注册过程和(b)无感开启汽车车锁过程中,电子设备10中的蓝牙开关均处于打开状态,从而蓝牙芯片10处于工作状态。
327.(c)蓝牙开关重启或者电子设备10重启过程
328.在本技术的一些实施例中,当蓝牙芯片101进行蓝牙扫描过程中蓝牙开关重启(即关闭并重新打开)或者电子设备10重启时,蓝牙代理模块101在蓝牙开关关闭期间和电子设备10重启导致蓝牙芯片停止工作期间,依然对蓝牙扫描的时长进行计时。具体的,请参阅图9,图9是本技术实施例提供的蓝牙扫描方法的流程示意图。该蓝牙扫描方法包含步骤s401~s408。
329.s401、蓝牙开关关闭并重新打开或者电子设备10重启,蓝牙芯片101重新启动。
330.s402、蓝牙芯片101向钱包app106请求注册信息。
331.其中,注册信息可包含需扫描的蓝牙广播信号(例如携带第一mac地址的蓝牙广播信号)、剩余的蓝牙扫描的时长。其中,钱包app106也可对蓝牙扫描的时长进行计时,并在蓝牙开关重启或者电子设备10重启时,依然存储剩余的蓝牙扫描的时长。
terminated by local host”等错误码(error code),汽车车机20将接收到“remote user terminated connection”等错误码。
344.这样,当用户操作触发电子设备10与汽车车机20之间的蓝牙连接断开时,电子设备10不再扫描蓝牙广播信号,提高便利性。
345.下面介绍本技术实施例涉及的用户界面。
346.请参阅图10,图10是本技术实施例提供的一种用户界面的示意图。如图10所示该用户界面10为负一屏。经过步骤s101~s104实现车厂app102注册完成,且用于解锁的密文已下发到电子设备10和汽车车机20后,电子设备10可在负一屏显示用于解锁汽车车锁的控件。如图10所示,负一屏10上包含多个功能控件,例如付款码控件、扫描控件、打车控件、开车门控件1011和更多控件。负一屏10上还可包含情景智能信息,例如快递信息。负一屏10上还可包含新闻信息等。
347.其中,开车门控件1011,用于解锁汽车车锁。具体的,当用户携带电子设备10移动到汽车附近时,用户可触摸开车门控件1011以触发开启汽车车门。响应于作用在开车门控件1011的用户操作,电子设备10可开启蓝牙扫描功能。当车厂app102被关闭时,电子设备10可启动车厂app102。电子设备10可根据扫描到的来自汽车车机20的蓝牙广播信号,建立电子设备10与汽车车机20之间的蓝牙连接,并通过该蓝牙连接完成密文校验。
348.本技术实施例中,当车厂app102被关闭时,例如被系统清理掉时,电子设备10的最近打开的应用界面上不包含该车厂app102的用户界面。当扫描到汽车车机20发送的蓝牙广播信号时,电子设备10可在车厂app102被关闭的情况下,启动车厂app102。则电子设备10最近打开的应用界面上包含该车厂app102的用户界面。请参阅图11a和图11b,图11a和图11b是本技术实施例提供的一些用户界面的示意图。如图11a所示,当车厂app102被系统清理时,最近打开的应用界面20不包含该车厂app102的用户界面。最近打开的应用界面20可包含电子设备10最近前台运行的应用的界面,例如,如图11a所示,最近打开的应用界面20可包含相机应用的用户界面。另外,响应于作用在最近打开的应用界面20上的触摸滑动操作,电子设备10可在最近打开的应用界面20上显示更多应用的用户界面。
349.当扫描到汽车车机20发送的蓝牙广播信号时,电子设备10可在车厂app102被关闭的情况下,启动车厂app102。启动车厂app102之后,如图11b所示,则电子设备10最近打开的应用界面上可包含该车厂app102的用户界面2011。
350.如图11b所示,车厂app102的用户界面2011可包含多个用于控制车辆的控件。例如,用户界面2011包含用于车门解锁的控件,用于车门上锁的控件,用于开启空调的控件,用于关闭空调的控件等等。用户界面2011还可包含多个用于查看车辆状态的控件。例如,用户界面2011包含用于查看车门状态的控件,用于查看胎压状态的控件等等。当未建立与汽车车机的蓝牙连接时,车厂app102的用户界面2011还可包含用于连接汽车车机20的控件,提示“当前未连接,点击连接”。当已建立与汽车车机的蓝牙连接时,车厂app102的用户界面2011还可包含用于断开与汽车车机之间蓝牙连接的控件,提示“当前已连接,点击断开”。该用于断开与汽车车机之间蓝牙连接的控件为第一控件。响应于作用在该第一控件上的用户操作,电子设备10可断开与所述第二电子设备之间的蓝牙连接,不再扫描蓝牙广播信号。
351.在一些可能的实现方式中,电子设备10上的设置界面上可包含蓝牙代理模块的设置入口。如图12a所示,设置界面200包含蓝牙代理模块的设置入口201。响应于用户对蓝牙
代理模块的设置入口201的用户操作,例如点击操作,电子设备10显示蓝牙代理模块设置界面300。如图12b所示,蓝牙代理模块设置界面300包含蓝牙代理模块开关301、开关指示302和已注册应用列表303。其中:
352.响应于用户对蓝牙代理模块开关301的点击操作,触发注册过程中钱包应用验证注册信息的过程,即步骤s202~s204。
353.开关指示302,可指示蓝牙代理模块开关301的功能:打开后允许蓝牙代理模块校验安装应用的身份。使得应用实现无感支付、无感开车锁等。
354.已注册应用列表303,可包含已在电子设备10上通过步骤s201~s204完成注册的应用标识。示例性的,已注册应用列表303包含支付宝标识3031和蓝牙车钥匙标识3032。可选的,已注册应用列表303中的应用标识可按照应用类别分类显示,例如分类为支付类应用和其他应用。
355.本技术实施例中,钱包app106的功能可由蓝牙代理模块105实现。即蓝牙系统中可不再包含钱包app106,由蓝牙代理模块105实现钱包app106的功能。请参阅图13,图13是本技术实施例提供的一种蓝牙系统的结构示意图。
356.验证车厂app102的注册信息是否合法可由蓝牙代理模块105根据来自钱包服务器的证书、签名信息等执行。具体的,在无感开启汽车车锁过程中,图8所示出的示例的步骤s310中蓝牙代理模块105可无需发送第三通知,而是根据第一mac地址验证车厂app102的注册信息是否合法。另外步骤s311可由蓝牙代理模块105启动车厂app102。在注册过程也类似,车厂app102向蓝牙代理模块105发送注册信息,蓝牙代理模块105验证注册信息是否合法。
357.在图13所示出的系统架构中,车厂app102可与se104建立连接,在校验用于开锁的密文过程中,车厂app102可从se中取出第一密文,并经过蓝牙芯片101与主蓝牙芯片201之间的蓝牙连接发送给汽车车机20的mcu203。蓝牙代理模块105可与钱包服务器通信,以获得证书、签名信息等。蓝牙代理模块105用于根据证书、签名信息等验证车厂app102是否合法。
358.本技术实施例中关于车厂app102、se104、车厂服务器30、蓝牙芯片101的描述可参考图6的描述,以及图7~图9所描述示例,这里不再赘述。
359.本技术实施例不限于应用在无感开启车锁的功能,还可以应用在其他场景,例如在无感支付场景下应用还可以是支付应用。当与支付终端(例如支付机具,类比汽车车技20)断开连接时,如果电子设备10上支付应用被系统清理,电子设备10可开启蓝牙扫描功能。当电子设备10靠近支付机具时,可扫描到支付终端发出的蓝牙广播信号。电子设备10可在支付应用被系统清理的情况下,启动支付应用。电子设备10的支付应用可将支付机具相关的业务信息发送给对应的服务器,以完成后续支付过程。这样,以实现无感支付。关于无感支付场景,具体可参考后文描述。
360.再例如,在自动上传体重数据到电子设备10的场景中,应用还可以是体重秤应用。当与体重秤(类比汽车车技20)断开连接时,如果电子设备10上体重秤应用被系统清理,电子设备10可开启蓝牙扫描功能。体重秤可广播蓝牙广播信号。当电子设备10靠近体重秤时,可扫描到体重秤发出的蓝牙广播信号。电子设备10可在体重秤应用被关闭的情况下,启动体重秤应用,并回连体重秤。体重秤可通过蓝牙连接将体重数据传输给体重秤应用。这样,以实现无感上传体重数据到电子设备10。关于无感上传体重数据的场景,具体可参考后文
描述。
361.本技术实施例不限于应用在上述场景举例中,还可以应用在开启门锁、智能手环数据同步到电子设备20等场景,本技术实施例对具体的应用场景不作限定。
362.下面介绍本技术实施例涉及的无感支付场景。请参阅图14,图14是本技术实施例提供的一种蓝牙系统的架构示意图。如图14所示,该蓝牙系统包含电子设备10、蓝牙设备30(例如支付设备30)和服务器40。
363.其中,电子设备10可与服务器40建立通信连接,支付设备30可与服务器40建立通信连接。支付设备30可广播蓝牙广播信号。用户在携带电子设备10靠近支付设备30时,电子设备10可接收到蓝牙广播信号。电子设备10上可安装有与支付设备30对应的app。该app例如是微信,则服务器40为微信服务器。在需要支付时,用户面向支付设备30,支付设备30采集人脸图像,上传给服务器40。服务器40可完成用户人脸验证,自动完成支付业务过程。上述人脸支付的过程中,无需用户手动操作电子设备10上的app,即可实现无感支付。
364.下面结合电子设备10和支付设备30的结构介绍图14所示场景中无感支付的过程。请参阅图15,图15是本技术实施例提供的一种蓝牙系统的架构示意图。如图15所示,电子设备10包含蓝牙芯片101和app 102。其中,蓝牙芯片101与app 102连接。支付设备30可持续广播蓝牙广播信号。
365.请参阅图16,图16是本技术实施例提供的一种业务交易方法的流程示意图。如图16所示,基于图14和图15所描述的系统架构,该业务交易方法包括步骤s501~s508。
366.s501、支付设备30广播蓝牙广播信号。
367.蓝牙广播信号中携带设备身份信息和设备标识信息(例如uuid)。示例性的,设备身份信息可包含设备id。其中,设备id可唯一标识支付设备30。uuid可标识能够连接app 102和服务器40的支付设备。例如,对于支付宝应用,能够连接支付宝应用和支付宝服务器的支付设备有相同的uuid,该uuid可保存在蓝牙芯片101中。或者,能够连接支付宝应用和支付宝服务器的支付设备的uuid为某几个uuid中的一个。该几个uuid可保存在蓝牙芯片101中。
368.s502、蓝牙芯片101接收来自支付设备30的蓝牙广播信号,检测蓝牙广播信号来自的设备(支付设备30)是否已在电子设备10上注册。
369.关于蓝牙扫描(即检测蓝牙广播信号来自的设备是否在电子设备10上已注册)可参考图2所描述示例中的具体描述,这里不再赘述。该蓝牙芯片101可以支持ble连接,也可以支持br/edr连接。则电子设备10上蓝牙扫描开关打开时,蓝牙芯片101才可执行步骤s502。
370.s503、电子设备10的应用处理器对蓝牙芯片101进行监测,监测到蓝牙广播信号来自的设备(支付设备30)已在电子设备10上注册时,运行app 102。
371.应用处理器在监测到蓝牙广播信号来自的设备已注册后可检测app 102是否运行,如果未运行,则执行步骤s504运行app 102。对于安卓8.0之后的系统,电子设备10的ap可通过步骤s503自动运行app 102。
372.s504、app 102将携带设备身份信息和账户id的消息发送给服务器40。
373.app可将携带设备id和账户id的消息发送给服务器40。设备id可以是蓝牙芯片101从蓝牙广播信号中获取并发送给app 102的。服务器40可获取能够接收到支付设备30蓝牙
广播信号的一个或多个账户id。例如,当前在支付设备30附近的电子设备的数量为10个,且这10个电子设备上均安装有支付宝应用且开启了无感支付业务。这10个电子设备上的支付宝应用中每个支付宝应用均登陆有支付宝账户id(例如支付宝账号)。则对于10个电子设备上每个电子设备,通过步骤s501~s504,来自外部蓝牙设备51的业务信息(例如设备身份信息)可传输到app 102,并由app 102传输给服务器40。服务器40可通过获取这10个电子设备上每个电子设备上的支付宝账户id。步骤s505~s508执行人脸比对来确定从哪个支付宝账户id中执行交易过程。
374.s505、支付设备30采集人脸图像。
375.s506、支付设备30将采集的人脸图像和设备id发送给服务器40。
376.设备id与支付设备30一一对应。
377.s507、服务器40根据接收的人脸图像和设备id识别得到账户id。
378.服务器40在接收到人脸图像和设备id后,可根据设备id确定已上传业务信息(例如设备身份信息)的账户id。示例性的,前例中服务器40可根据设备id确定10个支付宝账户id通过支付设备30向服务器40上传业务信息(例如设备身份信息)。服务器40可获取这10个支付宝账户id中每个账户id对应的人脸图像。然后将从支付设备30接收到的人脸图像与这10个人脸图像进行比对,则可得到接收到的人脸图像对应的支付宝账户id。
379.服务器40上可存储有账户id和对应的人脸图像,该人脸图像可以是用户预存的。账户对应的人脸图像还可以是服务器40从其他设备(例如电子设备10)中获取的,本技术实施例对此不作限定。
380.s508、服务器40根据账户id,完成业务交易。
381.服务器40可将步骤s507得到的账户id作为扣款账户,完成业务交易。
382.上述无感支付的过程中,步骤s502中,电子设备10的应用处理器在蓝牙扫描过程中需要一直处于工作状态来监测蓝牙广播信号来自的设备在电子设备10上是否已注册,增加了电子设备10的功耗和内存的占用。另外,电子设备10上用于启动蓝牙扫描的蓝牙扫描开关默认关闭,从而影响蓝牙扫描,降低了支付过程的便利性。
383.本技术实施例提供一种业务执行方法,可提高业务执行过程的便利性,并降低电子设备10的功耗和内存的占用。该业务执行可包含无感开启汽车车锁业务和无感支付业务。该业务执行方法所涉及的电子设备10中包含蓝牙代理模块。请参阅图17,图17是本技术实施例提供的一种蓝牙系统的架构示意图。如图17所示,该蓝牙系统包含电子设备10、蓝牙设备50(例如汽车、支付设备等)和服务器40。蓝牙设备50例如包含蓝牙设备51和蓝牙设备52。
384.其中,无感支付业务所涉及的模块包含蓝牙设备51、蓝牙芯片101、蓝牙代理模块105、app1021、服务器40。无感开启汽车车锁业务所涉及的模块包含蓝牙设备52、蓝牙芯片101、蓝牙代理模块105、app1022、oma api103、se104。
385.如图17所示,电子设备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。
386.本技术实施例中,安装时进行权限校验的应用和参与业务执行流程的应用可以是
相同的app,也可以是不同的app。如果是不同的app,则参与业务执行流程的app与服务器40连接,并与蓝牙代理模块连接。
387.app 1021对应的蓝牙设备数量可以是多个。蓝牙设备的设备标识信息在蓝牙代理模块105和蓝牙芯片101上有存储,且在电子设备10上对应一个app。app 1022对应的蓝牙设备也可以是多个。如支付宝应用对应可对应多个支付设备,可在这多个支付设备上完成业务执行流程。
388.本技术实施例以app 1021为支付应用、蓝牙设备51为其对应的支付设备为例,以app1022为汽车应用(即车厂app)、蓝牙设备52为其对应的汽车为例介绍。
389.其中,蓝牙代理模块105与app 1022连接。蓝牙代理模块105还与tee 106连接,蓝牙代理模块105还通过oma api 103与se 104连接。
390.开启车锁场景下,在蓝牙芯片101检测到蓝牙广播信号来自的设备已在电子设备10上注册时,启动该蓝牙代理模块105。该蓝牙代理模块105可与外部蓝牙设备建立通路,且蓝牙代理模块105与se 104连接,从而se 104中的业务信息(例如密文)可传输给外部蓝牙设备(例如汽车等)。蓝牙代理模块105还与tee 106连接,从而tee 106中的业务信息(例如密文)也可传输给外部蓝牙设备(例如汽车等)。
391.支付场景下,蓝牙芯片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上校验通过。
392.在蓝牙芯片101扫描到设备标识中的第一设备标识时,上述的蓝牙代理模块105才被启动。电子设备10中的蓝牙代理模块105和应用处理器无需一直处于工作状态,从而降低了电子设备10的功耗和内存的占用。
393.本技术实施例中,该蓝牙代理模块可运行app,无需用户手动运行app,从而实现对用户来说无感执行的过程,提高了业务执行流程的便利性。
394.本技术实施例中,蓝牙代理模块105可运行app 1021,电子设备10中该app 1021无需一直运行,该app 1021可被应用处理器结束运行,从而进一步降低了电子设备10的功耗和内存的占用。
395.本技术实施例中,蓝牙代理模块105还为与蓝牙相关的业务执行流程提供一个蓝牙扫描的管理平台。
396.蓝牙代理模块105与se 104连接,无需运行app 1022,直接建立蓝牙芯片101与蓝牙设备60之间的蓝牙通路,从而进一步降低了电子设备10的功耗和内存的占用。
397.可选的,app 1022还可以和tee 106连接。则蓝牙代理模块105可唤醒app 1022。app1022可从tee 106获取业务信息(例如密文)并传输给蓝牙代理模块105。蓝牙代理模块105与外部蓝牙设备建立通路,并将该业务信息发送给外部蓝牙设备(例如汽车),外部蓝牙
设备可根据该业务信息执行相应的业务,例如开车锁。
398.可选的,app 1022还可以通过oma api和se 104连接。则蓝牙代理模块105可唤醒app 1022,app 1022可从se 104获取业务信息(例如密文)并传输给蓝牙代理模块105。蓝牙代理模块105与外部蓝牙设备(例如汽车)建立通路,并将该业务信息发送给外部蓝牙设备(例如汽车),外部蓝牙设备可根据该业务信息执行相应的业务,例如开车锁。
399.下面以业务执行过程为无感人脸支付为例介绍,蓝牙设备50可以是支付设备30。可以理解的,本技术实施例以人脸无感支付的场景为例进行介绍,还可以是其他的业务场景,本技术实施例对此不作限定。
400.请参阅图18,图18是本技术实施例提供的一种蓝牙系统的架构示意图。如图18所示,该蓝牙系统包含电子设备10、蓝牙设备50(例如支付设备30)和服务器40。如图18所示,电子设备10包含蓝牙芯片101、蓝牙代理模块105和app 102。其中,蓝牙芯片101与蓝牙代理模块105建立连接,蓝牙代理模块105与app 102建立连接。
401.在使用该系统架构进行无感人脸支付之前,用户需要在电子设备10上安装app 102,电子设备10完成注册过程。下面分别对以下过程进行介绍:(a)注册过程;(b)交易过程;(c)注销过程。
402.(a)注册过程
403.下面结合图18所示系统架构和图19所示流程介绍注册过程。请参阅图19,图19是本技术实施例提供的app 102注册过程的流程示意图。该app 102注册过程包含步骤s201~s206。
404.s601、当app 102被安装到电子设备10上时,app 102向蓝牙代理模块105发送第一注册信息。
405.其中,第一注册信息可包括以下一项或多项:
406.①
app_id:进行注册的app 102的身份标识(identification,id);
407.②
app_awake_id:蓝牙芯片101扫描到第一设备标识信息后需唤醒app 102的id;
408.③
correspondent_id:传输业务信息时,通信者的id;
409.例如,该通信者的id可以为app 102的id,则在扫描到蓝牙广播信号时可唤醒app 102。再例如,该通信者的id还可以为ta的uuid,则在扫描到蓝牙广播信号时可唤醒app 102与外部蓝牙设备建立通路。又例如,该通信者的id还可以为applet的身份标识(applet identification,aid),则在扫描到蓝牙广播信号时可唤醒app 102与外部蓝牙设备建立通路。
410.④
第一设备标识信息:app 102希望扫描的蓝牙设备的身份标识信息,示例性的包括不限于外部蓝牙设备的uuid;
411.在一种可能的实现方式中,app 102对应一个uuid列表。该uuid列表包含一个或多个uuid。对于uuid列表中的每个uuid来说,蓝牙代理模块105均对该uuid对应的外部蓝牙设备广播的蓝牙广播信号交易通过。
412.⑤
option:接收业务信息的实体:app 102、tee 106中ta或者se 104中applet等。以及蓝牙芯片101扫描到第一设备标识信息后,是否唤醒app 102。
413.s602、蓝牙代理模块105根据第一注册信息对app 102进行权限校验。
414.在一种可能的实现方式中,蓝牙代理模块105上可存储有多个app的app_id,这多
个app_id是蓝牙代理模块105认可的。蓝牙代理模块105检测第一注册信息中的app_id是否包含在存储的多个app_id中。如果第一注册信息中的app_id包含在存储的多个app_id中,则权限校验通过,执行步骤s603。如果第一注册信息中的app_id不包含在存储的多个app_id中,则权限校验不通过,结束。
415.可以理解的,上述对权限校验过程的举例仅用于解释本技术实施例,不应构成限定,蓝牙代理模块105还可以有其他的权限校验方法,本技术实施例对此不做限定。
416.本技术实施例中,蓝牙代理模块105可位于图5所示示例中的应用程序框架层,可以是应用程序框架层的应用/接口。蓝牙代理模块105不限于位于应用程序框架层,还可以位于其他层。
417.s603、在权限校验通过的情况下,蓝牙代理模块105将第一设备标识信息发送给蓝牙芯片101。
418.蓝牙芯片101可存储权限校验通过的设备标识信息。示例性的,蓝牙代理模块105对于app1权限校验通过,app1的注册信息中包含uuid1、uuid2、uuid3和uuid4。蓝牙代理模块105对于app2权限校验通过,app2的注册信息中包含uuid5和uuid6。则蓝牙芯片101可接收并存储有uuid1、uuid2、uuid3、uuid4、uuid5和uuid6。
419.可以理解的,本技术实施例以设备标识信息为uuid为例进行介绍,但是设备标识信息不限于uuid,还可以是其他设备信息。
420.在一种可能的实现方式中,在权限校验通过的情况下,蓝牙代理模块105存储app 102的第一注册信息。蓝牙代理模块105可通过该第一注册信息和蓝牙芯片101扫描到的uuid,找到对应的app,或者对应的ta,或者对应的applet。
421.s604、蓝牙代理模块105检测蓝牙芯片101的蓝牙扫描功能是否打开。
422.其中,蓝牙芯片101的蓝牙扫描功能打开的情况下,蓝牙芯片101可接收蓝牙广播信号,并检测蓝牙广播信号上携带的设备标识信息是否存储在蓝牙芯片101上。蓝牙芯片101的蓝牙扫描功能关闭的情况下,蓝牙芯片101不能接收蓝牙广播信号。
423.s605、在检测到蓝牙芯片101的蓝牙扫描功能未打开的情况下,蓝牙代理模块105打开蓝牙扫描功能。
424.示例性的,若蓝牙芯片101为ble蓝牙芯片,可调用enableble来打开蓝牙扫描功能。
425.s606、蓝牙芯片101执行扫描。
426.蓝牙芯片101执行扫描的过程,可接收蓝牙广播信号,并检测蓝牙广播信号上携带的uuid是否存储在蓝牙芯片101上。
427.通过步骤s601~s606,app 102在电子设备10上完成注册。完成注册后,电子设备10可响应用户操作在该app 102上登陆账户。例如,对于支付宝应用,完成注册后,电子设备10可响应用户操作在支付宝应用上登陆支付宝账号,该支付宝账号可以是支付宝应用在电子设备10上的账户id。登陆账户的过程中例如需要验证账户id对应的账户密码。
428.(b)交易过程
429.完成注册并登陆账户后,电子设备10可执行本技术实施例提供的业务执行方法。请参阅图20,图20是本技术实施例提供的一种业务交易方法的流程示意图。该业务交易方法基于图18所示出的系统架构,该业务交易方法包含步骤s701~s710。
430.s701、蓝牙设备50广播蓝牙广播信号。
431.其中,蓝牙广播信号可携带第一设备标识信息(例如第一uuid)和第一设备身份信息(例如第一设备id)。该第一设备身份信息与蓝牙设备50一一对应。
432.s702、蓝牙芯片101接收设备蓝牙广播信号,检测接收的蓝牙广播信号来自的设备(蓝牙设备50)是否在电子设备10上已注册。
433.电子设备10处于休眠状态下(例如电子设备10处于息屏休眠状态下),当蓝牙芯片101检测到接收的蓝牙广播信号来自的设备在电子设备10上未注册时,蓝牙代理模块105可处于休眠状态。
434.s703、当接收到的蓝牙广播信号来自的设备在电子设备10上已注册时,蓝牙芯片101唤醒蓝牙代理模块105,并发送第一设备标识信息。
435.如果蓝牙代理模块105已经处于启动状态,则无需唤醒蓝牙代理模块105,向蓝牙代理模块105发送第一设备标识信息即可。
436.s704、蓝牙代理模块105根据第一设备标识信息和第一注册信息运行app 102。
437.其中,蓝牙代理模块105在注册过程的步骤s603中存储第一注册信息。蓝牙代理模块105通过第一设备标识信息找到该第一注册信息,并通过第一注册信息中的app_awake_id找到并运行app 102。
438.其中,第一注册信息中

option可指示接收数据的实体为app 102,且蓝牙芯片101扫描到第一设备标识信息后,唤醒app 102。蓝牙代理模块105还可以根据该option来确定需要运行app 102。然后通过第一注册信息中的app_awake_id运行app 102。
439.可选的,如果app 102已处于运行状态,则无需执行运行app 102。
440.s705、蓝牙代理模块105将第一设备身份信息发送给app107。
441.其中,第一设备身份信息可以是在步骤s703中同第一设备标识信息一起,由蓝牙芯片101发送给蓝牙代理模块105的。
442.s706、app 102将携带第一设备身份信息和第一账户id的消息发送给服务器40。
443.通过步骤s701~s706,来自外部蓝牙设备50的业务信息(例如蓝牙设备50的设备id)可传输到app 102,app 102将该业务信息发送给服务器40,为后续交易过程做准备。其中,第一账户id是app 102上登陆的账户的id。示例性的,对于支付宝app,其账户id可以是支付宝账号。
444.步骤s706之后,用户可通过人脸、指纹等验证方式执行交易过程(例如人脸无感支付),参考步骤s707~s710。关于步骤s707~s710可参考图16所示示例中步骤s505~s508的描述,这里不再赘述。
445.s707、蓝牙设备50采集第一人脸图像。
446.s708、蓝牙设备50将携带第一人脸图像和第一设备身份信息的消息发送给服务器40。
447.s709、服务器40根据第一人脸图像和第一设备身份信息识别得到第一账户id。
448.s710、服务器40根据第一账户id,完成业务交易。
449.上述的业务交易方法流程,在蓝牙芯片101接收到的蓝牙广播信号来自的设备在电子设备10上已注册后,蓝牙代理模块105才被启动。电子设备10中的蓝牙代理模块105和应用处理器无需一直处于工作状态,从而降低了电子设备10的功耗和内存的占用。
450.本技术实施例中,该蓝牙代理模块105可运行app 102,无需用户手动运行app 102,从而实现对用户来说无感执行业务交易的过程,提高了业务交易流程的便利性。
451.本技术实施例中,蓝牙代理模块105可运行app 102,电子设备10中该app 102无需一直运行,可被应用处理器结束运行,从而进一步降低了电子设备10的功耗和内存的占用。
452.本技术实施例中,蓝牙代理模块105还为与蓝牙相关的业务交易流程提供一个蓝牙扫描的管理平台。
453.在一种可能的实现方式中,步骤s702中蓝牙扫描功能可以是用户手动开启蓝牙扫描开1001实现的,参考图11。在另一种可能的实现方式中,蓝牙扫描功能还可以是电子设备10检测到蓝牙扫描功能未打开的情况下打开的,例如在图19所描述注册过程示例中通过步骤s604~s605蓝牙代理模块105打开蓝牙扫描功能。在注册完成后进行业务交易过程中蓝牙代理模块105也可自动打开蓝牙扫描功能。蓝牙代理模块105可打开蓝牙扫描功能,从而无需用户手动打开蓝牙扫描功能,实现对用户来说无感执行业务交易的过程,提高了业务交易流程的便利性。
454.(c)注销过程
455.电子设备10上注册完成的app 102还可以响应于用户操作进行注销。下面具体介绍本技术实施例提供的注销过程。请参阅图21,图21是本技术实施例提供的app 102注销的流程示意图。该app 102注销过程包含步骤s801~s806。
456.s801、当检测到app 102被卸载时,蓝牙代理模块105向蓝牙芯片101发送第一通知。第一通知指示蓝牙芯片101停止扫描第一设备标识信息。
457.其中,第一设备标识信息即为app 102在注册时的注册信息中包含的第一设备标识信息。示例性的,如果app 102在注册时的注册信息中包含的第一设备标识信息为:uuid1、uuid2、uuid3和uuid4。则第一通知指示蓝牙芯片101停止扫描uuid1、uuid2、uuid3和uuid4。执行步骤s802后,蓝牙芯片101在检测到蓝牙广播信号中包含uuid1、uuid2、uuid3和uuid4时认为蓝牙广播信号来自的设备在电子设备10上未注册,也不再唤醒蓝牙代理模块105。
458.本技术实施例中,应用处理器可检测到app 102被卸载,并广播用于指示app 102被卸载的广播。蓝牙代理模块105通过该用于指示app 102被卸载的广播来确定检测到app 102被卸载,并执行步骤s801。
459.s802、蓝牙芯片101根据第一通知,停止扫描第一设备标识信息。
460.蓝牙芯片101可删除存储的app 102对应的设备标识信息。步骤s801示例中,蓝牙芯片101可删除存储的uuid1、uuid2、uuid3和uuid4。
461.s803、蓝牙代理模块105删除app 102的注册信息。
462.其中,步骤s803还可以是在步骤s802之前执行的。
463.在执行完上述app 102注销过程之后,蓝牙芯片101在检测到蓝牙广播信号中包含第一设备标识信息时认为蓝牙广播信号来自的设备在电子设备10上未注册,也不再唤醒蓝牙代理模块105,不再建立蓝牙通路。
464.本技术实施例中,业务执行方法以无感上传业务信息(例如体重信息)到电子设备为例进行介绍,蓝牙设备50可以是体重秤90。可以理解的,本技术实施例以自动上传体重数据到电子设备10的场景为例进行介绍,还可以是其他的业务场景,本技术实施例对此不作
限定。电子设备10可接收到蓝牙广播信号。电子设备10上可安装有与体重秤90对应的app 102。电子设备10上该app 102可通过蓝牙广播信号与体重秤90建立通路,体重秤90可将实时检测的体重数据上传给app 102。上述上传体重数据到电子设备10的过程中,无需用户手动操作电子设备10上的app 102,即可实现无感上传数据到电子设备10。
465.请参阅图22,图22是本技术实施例提供的一种蓝牙系统的架构示意图。如图22所示,该蓝牙系统包含蓝牙设备(例如体重秤90)和电子设备10。
466.如图22所示,电子设备10包含蓝牙芯片101、蓝牙代理模块105和app 102。其中,蓝牙芯片101与蓝牙代理模块105建立连接,蓝牙代理模块105与app 102建立连接。
467.在电子设备10上安装app 102之后需要对app完成注册过程,并建立起与体重秤90之间的蓝牙连接,具体可参考图7所描述的注册过程。
468.完成注册并登陆账户后,电子设备10可执行本技术实施例提供的一种业务执行方法。请参阅图23,图23是本技术实施例提供的一种业务执行方法的流程示意图。如图23所示,该业务执行方法包含步骤s901~s906。
469.s901、蓝牙设备90广播蓝牙广播信号。
470.其中,蓝牙广播信号可携带第一设备标识信息(例如第一uuid)和第一设备身份信息(例如第一设备id)。该第一设备身份信息与蓝牙设备50一一对应。
471.在本技术的一些实施例中,当蓝牙设备90对应的app102在电子设备10上被系统清理时,电子设备10与蓝牙设备90之间的蓝牙连接断开,电子设备10的蓝牙芯片101可开启蓝牙扫描功能,开始扫描蓝牙广播信号。
472.s902、蓝牙芯片101接收蓝牙广播信号,检测蓝牙广播信号来自的设备(蓝牙设备90)在电子设备10上是否已注册。
473.电子设备10处于休眠状态下(例如电子设备10处于息屏休眠状态下),当蓝牙芯片101检测到蓝牙广播信号来自的设备(蓝牙设备90)在电子设备10上未注册时,蓝牙代理模块105可处于休眠状态。
474.s903、当检测到蓝牙广播信号来自的设备在电子设备10上已注册时,蓝牙芯片101唤醒蓝牙代理模块105,并发送第一设备标识信息。
475.s904、蓝牙代理模块105根据第一设备标识信息和第一注册信息运行app 102。
476.关于步骤s901~s904的描述可参考图20所描述的业务执行方法的步骤s701~s704的具体描述。
477.当检测到蓝牙广播信号来自的设备在电子设备10上已注册时,通过步骤s901~s904,蓝牙代理模块105可以建立与蓝牙设备90之间的通路,来自蓝牙设备90的业务信息(例如体重信息)可传输到蓝牙代理模块105。蓝牙代理模块105可唤醒app,并向app 102传输该业务信息(例如体重信息)。
478.在本技术的一些实施例中,运行app 102之后,蓝牙代理模块105还可以指示蓝牙芯片101回连蓝牙设备90,以建立蓝牙芯片101和蓝牙设备90中蓝牙芯片的蓝牙连接。该回连过程可以是ble回连的过程,也可以是br/edr回连的过程,本技术实施例对此不作限定。
479.可选的,来自外部蓝牙设备90的业务信息(例如体重信息)还可以是通过广播信号的形式由蓝牙芯片101接收,传输给蓝牙代理模块105。然后业务信息由蓝牙代理模块105传输给app 102。
480.s905、蓝牙设备90检测体重信息。
481.该体重信息可包括:体重值、体脂值、健康指数等数据。示例性的,该体重信息可通过蓝牙连接发送给app 102。
482.s906、蓝牙设备90将体重信息通过蓝牙设备90与app 102之间的通路发送给app 102。
483.app 102可保存该体重信息,app 102还可以显示该体重信息。
484.上述的方法流程,建立蓝牙设备90与蓝牙芯片101之间的蓝牙连接的过程中,在蓝牙芯片101检测到蓝牙广播信号来自的设备(蓝牙设备90)在电子设备10上已注册后,蓝牙代理模块105才被启动。电子设备10中的蓝牙代理模块105和应用处理器无需一直处于工作状态,从而降低了电子设备10的功耗和内存的占用。
485.上述体重秤向电子设备的应用上传体重信息的流程中,不需要用户手动运行app 102,实现对用户来说无感执行的过程,提高了业务执行流程的便利性。
486.上述体重秤向应用上传体重信息的流程中,无需保持app 102始终处于运行状态,从而进一步降低了电子设备10的功耗和内存的占用。本技术实施例中,蓝牙代理模块105还为蓝牙相关的业务执行流程提供一个管理平台。
487.在另一种可能的实现方式中,蓝牙扫描功能还可以是电子设备10检测到蓝牙扫描功能未打开的情况下打开的,例如在注册过程示例中通过蓝牙代理模块105打开蓝牙扫描功能。在注册完成后进行业务执行过程中蓝牙代理模块105也可自动打开蓝牙扫描功能。蓝牙代理模块105可打开蓝牙扫描功能,从而无需用户手动打开蓝牙扫描功能,实现对用户来说无感执行业务的过程,提高了业务执行流程的便利性。
488.在本技术另一些实施例中,蓝牙设备90广播的蓝牙广播信号不限于包含第一uuid,还可以是包含体重秤的mac地址。在注册过程中,与电子设备10建立蓝牙连接过程,蓝牙设备90将自身的mac地址(第一mac地址)传输给电子设备10。电子设备10的蓝牙芯片存储该第一mac地址。当蓝牙连接断开时,电子设备10根据该第一mac地址扫描蓝牙广播信号。在扫描到携带该第一mac地址的mac地址时才启动体重秤对应的体重秤应用。体重秤应用可指示蓝牙芯片101回连体重秤。
489.在本技术的一些实施例中,当电子设备10检测到蓝牙设备90对应的app102被系统清理时,电子设备10可开启蓝牙扫描功能,开始扫描蓝牙广播信号。
490.本技术实施例中,图22、图23所描述的蓝牙设备90不限于体重秤,还可以是其他可穿戴设备,例如智能手表。
491.在无感开启汽车车锁的场景下,本技术实施例还提供一种蓝牙系统和蓝牙连接方法。该方法基于图1所描述的系统架构。蓝牙设备60可以是图1所示的汽车车机20。可以理解的,本技术实施例以无感开启汽车车锁的场景为例进行介绍,还可以是其他的业务场景,本技术实施例对此不作限定。
492.请参阅图24,图24是本技术实施例提供的一种蓝牙系统的架构示意图。如图24所示,该蓝牙系统包含电子设备10、蓝牙设备60(例如汽车20)和服务器70。如图24所示,电子设备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连接。
493.在使用该系统架构进行无感开启汽车车锁之前,用户需要在电子设备10上安装app 102,电子设备10完成注册过程。下面分别对以下过程进行介绍:(d)注册过程;(e)业务执行过程。本技术实施例中,app 102的注销过程可参考图13所述示例的具体描述,这里不再赘述。
494.(d)注册过程
495.下面结合图24所示系统架构和图25所示流程介绍注册过程。请参阅图25,图25是本技术实施例提供的app 102注册过程的流程示意图。该app 102注册过程包含步骤s1001~s1006。
496.s1001、当app 102被安装到电子设备10上时,app 102从服务器70获取第一证书。
497.本技术实施例中,如果蓝牙代理模块105上未存储app 102的app id,app 102可从服务器70上获取第一证书。该第一证书可用于向蓝牙代理模块105证明app 102的权限。
498.在一种可能的实现方式中,在app 102安装到电子设备10上时,app 102可向服务器70发送用于请求下发第一证书的消息,然后服务器70向app 102发送第一证书。在另一种可能的实现方式中,app 102安装到电子设备10上时,服务器70即下发第一证书给app 102。
499.s1002、app 102向蓝牙代理模块105发送第一注册信息和第一证书。
500.可选的,app 102还可以向蓝牙代理模块105发送第一证书。该第一证书即可向蓝牙代理模块105证明app 102的权限,从而在步骤s1003中对app 102权限校验通过。
501.s1003、蓝牙代理模块105根据第一注册信息和第一证书对app 102进行权限校验。
502.s1004、在权限校验通过的情况下,蓝牙代理模块105将第一设备标识信息发送给蓝牙芯片101。
503.s1005、蓝牙代理模块105检测蓝牙芯片101的蓝牙扫描功能是否打开。
504.s1006、在检测到蓝牙芯片101的蓝牙扫描功能未打开的情况下,蓝牙代理模块105打开蓝牙扫描功能。
505.s1007、蓝牙芯片101执行扫描。
506.下面对步骤s1002中的第一证书和步骤s1003中进行权限校验的过程进行介绍。
507.第一证书是一个经证书授权中心(certificate authority,ca)数字签名的数字证书。该证书授权中心是蓝牙代理模块105认可的。第一证书可包含服务器70的公开密钥、服务器70的名称以及证书授权中心的数字签名。当使用该第一证书向蓝牙代理模块105进行身份认证时,第一证书可随机生成身份码。每份数字证书都能生成相应的身份码但每次生成的身份码都不相同。
508.第一证书是含有服务器70的身份信息并经过认证中心审核签发的电子数据。因此,该第一证书可以通过证书授权中心的数字签名向蓝牙代理模块105证明服务器70经过证书授权中心认证。
509.而蓝牙代理模块105上保存有证书授权中心的公开密钥,通过该证书授权中心的公开密钥来验证第一证书中证书授权中心的数字签名,验证通过后则表明权限校验通过,进而执行步骤s1004~s1007。
510.关于步骤s1004~s1007可参考图19所示示例中步骤s603~s606的描述,这里不再赘述。
511.(e)业务执行过程
512.完成注册并登陆账户后,电子设备10可执行本技术实施例提供的业务执行方法。请参阅图26,图26是本技术实施例提供的一种业务执行方法的流程示意图。该业务执行方法以建立外部蓝牙设备60到se 104之间的蓝牙通路为例,建立外部蓝牙设备60到tee 106之间的蓝牙通路类似。该业务执行方法基于图24所示出的系统架构,该业务执行方法包含步骤s1101~s1108。
513.s1101、蓝牙设备60广播蓝牙广播信号。
514.其中,蓝牙广播信号可携带第一设备标识信息(例如第一uuid)和第一设备身份信息(例如第一设备id)。该第一设备身份信息与蓝牙设备50一一对应。
515.s1102、蓝牙芯片101接收来自蓝牙设备60的蓝牙广播信号,检测接收到的蓝牙广播信号来自的设备在电子设备10上是否已注册。
516.电子设备10处于休眠状态下(例如电子设备10处于息屏休眠状态下),当蓝牙芯片101检测到蓝牙广播信号来自的设备(蓝牙设备50)在电子设备10上未注册时,蓝牙代理模块105可处于休眠状态。
517.s1103、当检测到蓝牙广播信号来自的设备在电子设备10上已注册时,蓝牙芯片101唤醒蓝牙代理模块105,并发送第一设备标识信息。
518.其中,蓝牙代理模块105在图10所示注册过程的步骤s203中存储第一注册信息。蓝牙代理模块105通过第一设备标识信息找到该第一注册信息。其中,第一注册信息中

option可指示接收数据的实体为tee 106,且蓝牙芯片101扫描到第一设备标识信息后,不唤醒app102。当检测到蓝牙广播信号来自的设备在电子设备10上已注册时,蓝牙代理模块105可建立与蓝牙设备60之间的通路。则通过步骤s1101~s1103建立蓝牙代理模块105与外部蓝牙设备之间的通路,蓝牙代理模块105可获取tee106的业务信息传输给外部蓝牙设备。
519.步骤s1103之后,用户可通过携带电子设备10靠近蓝牙设备60时执行交易过程(例如无感开启汽车车锁),参考步骤s1104~s1108。
520.示例性的,在蓝牙设备60为汽车20实现开车锁的场景下,汽车20可在检测到与电子设备10之间距离小于或等于一个设定距离(例如30米)时执行步骤s1101~s1103建立蓝牙通路过程。在通过步骤s1101~s1103建立蓝牙代理模块105与汽车20的通路之后,汽车20可实时检测电子设备10与汽车20之间的距离。当汽车20检测到与电子设备10之间的距离小于或等于设定距离(例如10米)时,汽车20可执行步骤s1104~s1107完成校验过程。当汽车20检测到与电子设备10之间的距离小于或等于设定距离(例如3米)时,执行步骤s1108打开车锁。
521.s1104、蓝牙设备60经过通路向蓝牙代理模块105发送密文校验指令。
522.其中,密文校验指令可通过数字签名加密传输。密文校验指令中可包含蓝牙设备60的数字签名,例如,包含蓝牙设备60自身的私有密钥的数字签名。而蓝牙代理模块105可存储有蓝牙设备60自身私有密钥对应的公共密钥。蓝牙代理模块105接收到密文校验指令后先使用该公共密钥对蓝牙设备60的数字签名进行验证。验证通过则执行步骤s1105。
523.s1105、蓝牙代理模块105从se 104的applet获取第一密文。
524.s1106、蓝牙代理模块105通过蓝牙芯片101向蓝牙设备60发送第一密文。
525.其中,第一密文在步骤s1106的传输过程中,可加密传输,本技术实施例对加密的
方法不作限定。
526.s1107、蓝牙设备60将第一密文与se中的密文进行比对。
527.s1108、密文比对通过,蓝牙设备60开启蓝牙设备60的车锁。
528.例如,第一密文和蓝牙设备60se的applet中密文相同则比对通过。
529.上述的业务执行方法流程,在蓝牙芯片101检测到蓝牙广播信号来自的设备(蓝牙设备60)在电子设备10上已注册后,蓝牙代理模块105才被启动。电子设备10中的蓝牙代理模块105和应用处理器无需一直处于工作状态,从而降低了电子设备10的功耗和内存的占用。
530.上述的业务执行方法流程,无需运行app 102,直接建立se 104与蓝牙设备60之间的蓝牙通路,从而降低了电子设备10的功耗和内存的占用。
531.上述的业务执行方法流程,不需要用户手动运行app 102,实现对用户来说无感执行业务的过程,提高了业务执行流程的便利性。
532.上述的业务执行方法流程,无需保持app 102始终处于运行状态,从而进一步降低了电子设备10的功耗和内存的占用。本技术实施例中,蓝牙代理模块105还为与蓝牙相关的业务执行流程提供一个建立蓝牙通路的管理平台。
533.在一种可能的实现方式中,步骤s1102中蓝牙扫描功能可以是用户手动开启蓝牙扫描开1001实现的。在另一种可能的实现方式中,蓝牙扫描功能还可以是电子设备10检测到蓝牙扫描功能未打开的情况下打开的,例如在图25所描述注册过程示例中通过步骤s1005~s1006蓝牙代理模块105打开蓝牙扫描功能。在注册完成后进行业务过程中蓝牙代理模块105也可自动打开蓝牙扫描功能。蓝牙代理模块105可打开蓝牙扫描功能,从而无需用户手动打开蓝牙扫描功能,实现对用户来说无感执行业务的过程,提高了业务执行流程的便利性。
534.在本技术的另一些实施例中,app 102还可以通过oma api 103和se 104建立连接。第一注册信息中

option可指示接收数据的实体为se 104,且蓝牙芯片101扫描到第一设备标识信息后,唤醒app 102。则在步骤s1103之后,蓝牙代理模块105唤醒app 102。蓝牙代理模块105可与外部蓝牙设备60建立通路,且蓝牙代理模块105与se 104连接,从而se 104中的业务信息(例如密文)可传输给蓝牙设备60(例如汽车等)。
535.本技术实施例中,蓝牙设备60还可以与服务器70建立通信连接,如图24所示。蓝牙设备60可通过该通信连接与服务器70交互业务信息。该业务信息例如是来自电子设备10中se 104的指纹比对结果。
536.具体的,建立蓝牙代理模块105与外部蓝牙设备之间的通路之后,如果在交易过程中服务器70需要在电子设备10上验证用户身份,例如验证用户指纹或者验证用户人脸图像,则电子设备10验证完成后可经由蓝牙设备60将比对结果发送给服务器70。以指纹验证为例,首先,电子设备10将检测到的指纹和预存的指纹进行比对,将比对结果存储在电子设备10的se 104中。蓝牙代理模块105从se 104中获取该比对结果。蓝牙代理模块105通过蓝牙连接将该比对结果发送给蓝牙设备60。蓝牙设备60通过与服务器70之间的通信连接将该比对结果发送给服务器70,来完成交易过程。
537.可以理解的,蓝牙设备60与服务器70之间的通信连接不限于上述功能举例,还可以用于在业务执行流程中其他业务信息的传输,本技术实施例对此不作限定。
538.对于无感开启汽车车锁的业务执行过程,在app 102注册过程中也可以无需通过服务器70。蓝牙代理模块105本身存储有app 102的app_id,通过该app 102的app_id,蓝牙代理模块105可对app进行权限校验。具体的,请参阅图27,图27是本技术实施例提供的一种蓝牙系统的架构示意图。如图27所示,该蓝牙系统包含电子设备10和蓝牙设备80(例如汽车20)。如图27所示,电子设备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连接。
539.在电子设备10上安装app 102之后需要对app完成注册过程。该注册过程可具体参考图10所描述实施例,仅在电子设备10即可完成注册过程。业务执行过程可具体参考图26所描述实施例。该注册过程和业务执行过程均无需与服务器交互。业务注销过程可参考图13所示出示例的具体描述。这里不再赘述。
540.可以理解的,本技术实施例以蓝牙连接为例进行介绍,本技术实施例中的蓝牙连接可以是ble连接,也可以是br/edr连接。但是本技术实施例中不限于蓝牙连接,还可以是其他短距离无线通信连接,例如wi-fi连接、zigbee连接等等,本技术实施例对此不作限定。
541.在上述实施例中,全部或部分功能可以通过软件、硬件、或者软件加硬件的组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本技术实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,dvd)、或者半导体介质(例如,固态硬盘(solid state disk,ssd))等。
542.以上所述,仅为本技术实施例的具体实施方式,但本技术实施例的保护范围并不局限于此,任何在本技术实施例揭露的技术范围内的变化或替换,都应涵盖在本技术实施例的保护范围之内。因此,本技术实施例的保护范围应以所述权利要求的保护范围为准。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1