CN117479344A - 一种蓝牙连接方法、电子设备及可读存储介质 - Google Patents
一种蓝牙连接方法、电子设备及可读存储介质 Download PDFInfo
- Publication number
- CN117479344A CN117479344A CN202311728936.1A CN202311728936A CN117479344A CN 117479344 A CN117479344 A CN 117479344A CN 202311728936 A CN202311728936 A CN 202311728936A CN 117479344 A CN117479344 A CN 117479344A
- Authority
- CN
- China
- Prior art keywords
- connection
- information
- bluetooth
- electronic device
- external device
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 120
- 230000008569 process Effects 0.000 claims abstract description 47
- 238000004891 communication Methods 0.000 claims abstract description 33
- 230000005540 biological transmission Effects 0.000 claims description 62
- 238000004590 computer program Methods 0.000 claims description 10
- 230000006870 function Effects 0.000 description 38
- 238000005516 engineering process Methods 0.000 description 33
- 238000010586 diagram Methods 0.000 description 25
- 230000004044 response Effects 0.000 description 23
- 238000012545 processing Methods 0.000 description 13
- 230000003993 interaction Effects 0.000 description 10
- 230000007774 longterm Effects 0.000 description 6
- 238000007726 management method Methods 0.000 description 5
- 230000003190 augmentative effect Effects 0.000 description 4
- 230000008859 change Effects 0.000 description 3
- 230000009977 dual effect Effects 0.000 description 3
- 239000007787 solid Substances 0.000 description 3
- 229920001621 AMOLED Polymers 0.000 description 2
- 239000008186 active pharmaceutical agent Substances 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 239000002096 quantum dot Substances 0.000 description 2
- 230000011664 signaling Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 210000000988 bone and bone Anatomy 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 239000000470 constituent Substances 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000036541 health Effects 0.000 description 1
- 239000003999 initiator Substances 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000005855 radiation Effects 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000008054 signal transmission Effects 0.000 description 1
- 238000010408 sweeping Methods 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W76/00—Connection management
- H04W76/10—Connection setup
- H04W76/14—Direct-mode setup
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/80—Services using short range communication, e.g. near-field communication [NFC], radio-frequency identification [RFID] or low energy communication
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W48/00—Access restriction; Network selection; Access point selection
- H04W48/16—Discovering, processing access restriction or access information
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W76/00—Connection management
- H04W76/10—Connection setup
- H04W76/15—Setup of multiple wireless link connections
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/70—Reducing energy consumption in communication networks in wireless communication networks
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Mobile Radio Communication Systems (AREA)
- Telephone Function (AREA)
Abstract
本申请提供了一种蓝牙连接方法、电子设备及可读存储介质,应用于通信技术领域,该方法应用于电子设备,该方法包括在电子设备与第一外接设备正在建立第一连接的情况下,检测到第一外接设备发起第二连接;第一连接与第二连接为不同类型的连接;第二连接对应的配对信息为第二信息;第一连接对应的配对信息为第一信息;将第二信息与第一信息进行对比;在第二信息与第一信息不一致时,将第二信息保存到存储队列中,并继续执行第一连接。从而能够在电子设备执行建立与第一外接设备之间的第一连接的过程中,接收到第一外接设备发起的第二连接的情况下,避免第二连接与第一连接发生冲突,进而确保电子设备与第一外接设备之间正在建立的第一连接建立成功。
Description
技术领域
本申请涉及通信技术领域,并且具体地,涉及一种蓝牙连接方法、电子设备及可读存储介质。
背景技术
蓝牙(bluetooth,BT)技术是一种无线数据通信的开放性全球规范,它以低成本的近距离无线连接为基础,为设备之间的通信环境建立一个特殊的无线连接。蓝牙技术包括蓝牙低功耗(bluetooth low energy,BLE)技术和基本码率(basic rate,BR)技术。随着蓝牙技术的发展,当前的设备可以支持单模蓝牙(支持蓝牙低功耗或支持基本码率),也可以支持双模蓝牙(既支持蓝牙低功耗,又支持基本码率)。
目前,在电子设备与外接设备同时建立蓝牙低功耗连接和基本码率连接的情况下,两种类型的蓝牙连接会发生冲突,从而会导致其中一种类型的蓝牙连接建立失败。例如,在电子设备与外接设备正在建立基本码率连接的过程中,电子设备与外接设备之间的距离恢复到蓝牙低功耗连接的正常通信距离。此时,外接设备会自动发起与电子设备之间的已经断开的蓝牙低功耗连接,导致两种蓝牙连接发生冲突,从而造成电子设备与外接设备之间正在建立的基本码率连接建立失败。
发明内容
本申请提供了一种蓝牙连接方法、电子设备及可读存储介质,可以实现在电子设备与外接设备同时建立两种类型的蓝牙连接的情况下,确保正在建立的蓝牙连接能够建立成功。
第一方面,本申请提供了一种蓝牙连接方法,该方法应用于电子设备,该方法包括:
在电子设备与第一外接设备正在建立第一连接的情况下,检测到第一外接设备发起第二连接;其中,第一外接设备同时支持第一连接和第二连接;第一连接与第二连接为不同类型的连接;第二连接对应的配对信息为第二信息;第一连接对应的配对信息为第一信息;
将第二信息与第一信息进行对比;第一信息在开始建立第一连接时保存在电子设备的存储队列中;
在第二信息与第一信息不一致时,将第二信息保存到存储队列中,并继续执行第一连接。
本申请通过在电子设备与第一外接设备正在建立第一连接的情况下,可以检测到第一外接设备发起第二连接的回连。此时,电子设备可以将第二信息(即第一外接设备发起的第二连接所对应的配对信息)与第一信息(即正在建立的第一连接所对应的配对信息)进行对比。在第二信息与第一信息不一致时,电子设备可以将第二信息保存到存储队列中,并继续建立与第一外接设备之间的第一连接。相比于目前在蓝牙低功耗连接的配对信息与基本码率连接的配对信息不一致,也就是蓝牙低功耗连接和基本码率连接这两种蓝牙连接发生冲突时,直接断开基本码率连接的方案,本申请实施例在这种情况下会继续建立与第一外接设备之间的基本码率连接,以确保正在建立的第一连接建立成功。从而,可实现在两种不同类型的蓝牙连接发生连接冲突时,确保电子设备与第一外接设备之间正在建立的蓝牙连接建立成功。
在一些可能的实现方式中,第一信息包括第一地址信息和第一传输协议;第二信息包括第二地址信息和第二传输协议;该方法中,将第二信息与第一信息进行对比,包括以下一项或多项:
将第二地址信息与第一地址信息进行对比;
将第二传输协议与第一传输协议进行对比。
上述实现方式中,通过设置多种对比方式,能够基于第一信息中所包括的内容和第二信息中所包括的内容,选择相应的对比方式,以确保第一连接和第二连接能够建立成功。
在一些可能的实现方式中,该方法中,在第二信息与第一信息不一致时,将第二信息保存在存储队列中,并继续执行第一连接,包括:
在第二地址信息与第一地址信息不一致时,将第二地址信息保存在存储队列中,并继续执行第一连接;
在第二地址信息与第一地址信息一致,且第二传输协议与第一传输协议不一致时,将第二传输协议保存在存储队列中,并继续执行第一连接。
在一些可能的实现方式中,在第二信息与第一信息不一致时,将第二信息保存在存储队列中,并继续执行第一连接,还包括:
在第二地址信息与第一地址信息不一致,且第二传输协议与第一传输协议不一致时,将第二地址信息和第二传输协议保存在存储队列中,并继续执行第一连接。
上述实现方式中,通过将比对不一致的地址信息和/或传输协议进行存储,能够避免在二者不一致时直接清空正在建立的第一连接,导致正在建立的第一连接失败,从而确保正在建立的第一连接不会受到第二连接的干扰,进一步保证正在建立的第一连接建立成功。
在一些可能的实现方式中,该方法中,继续执行第一连接,包括:
在第一连接的认证过程中,确定存储队列中是否包括第一信息;
若存储队列中包括第一信息,则继续执行第一连接。
上述实现方式中,通过在第一连接的认证过程中,确定存储队列中已存储有第一信息的情况下,电子设备可以继续执行第一连接。也就是说,第二连接的第二信息不会影响电子设备继续执行第一连接,也不会导致第一连接的建立终止。
在一些可能的实现方式中,在第一连接建立成功之后,该方法还包括:
从存储队列中删除第一信息。
上述实现方式中,通过将已经建立成功的第一连接的第一信息从存储队列中删除,能够减少存储队列中存储空间的占用,还能够加快电子设备建立第二连接的速度。
在一些可能的实现方式中,在将第二信息保存到存储队列中之后,该方法还包括:
在第二连接的认证过程中,确定存储队列中是否包括第二信息;
若存储队列中包括第二信息,则执行第二连接;第二连接是第一外接设备向电子设备发起的自动回连;在第一外接设备与电子设备之间的通信距离满足预设通信距离的情况下,第一外接设备自动回连电子设备。
上述实现方式中,通过在第二连接的认证过程中,确定存储队列中已存储有第二信息的情况下,电子设备可以执行第二连接。也就是说,第一连接的第一信息也不会影响电子设备执行第二连接。可见,第一连接和第二连接可以同时执行,也可以按照存储的先后顺序来执行。
在一些可能的实现方式中,该方法还包括:在第二连接建立成功之后,从存储队列中删除第二信息。
上述实现方式中,通过将已经建立成功的第二连接的第二信息从存储队列中删除,能够减少存储队列中存储空间的占用,还能够加快电子设备建立其他连接(除了第一连接和第二连接之外的蓝牙连接)的速度。
在一些可能的实现方式中,在电子设备与第一外接设备开始建立第一连接之前,该方法还包括:
通过扫描发现第一外接设备;
判断第一外接设备是否处于可连接状态;
在第一外接设备处于可连接状态的情况下,响应于用户的第一操作,第一操作用于指示电子设备与第一外接设备建立第一连接。
在一些可能的实现方式中,第一连接为蓝牙低功耗连接,第二连接为基本码率连接;或者,第一连接为基本码率连接,第二连接为蓝牙低功耗连接。
第二方面,本申请提供一种电子设备,包括处理器;当处理器执行存储器中的计算机代码或指令时,使得电子设备执行第一方面及第一方面任一种可能的设计中的蓝牙连接方法。
第三方面,本申请提供一种芯片系统,该芯片系统应用于包括存储器、显示屏和传感器的电子设备;芯片系统包括:一个或多个接口电路和一个或者多个处理器;接口电路和处理器通过线路互联;接口电路用于从存储器接收信号,并向处理器发送信号,信号包括存储器中存储的计算机代码或指令;处理器调用计算机代码或指令,使得电子设备执行第一方面及第一方面任一种可能的设计中的蓝牙连接方法。
其中,芯片系统中可以包括一个芯片,也可以包括多个芯片;在芯片系统中包括多个芯片时,本申请对芯片的类型和数量等参数不做限定。
第四方面,本申请提供一种可读存储介质,该可读存储介质中存储有代码或指令,处理器调用代码或指令,使得电子设备执行第一方面及第一方面任一种可能的设计中的蓝牙连接方法。
第五方面,本申请提供一种计算机程序产品,当计算机程序产品在计算机上运行时,使得计算机执行第一方面及第一方面任一种可能的设计中的蓝牙连接方法。
第六方面,本申请提供一种蓝牙连接系统,包括电子设备和第一外接设备,电子设备支持第一连接和第二连接;第一外接设备支持第一连接和第二连接;第一连接和第二连接为不同类型的连接;电子设备用于执行第一方面及第一方面任一种可能的蓝牙连接方法。
可以理解的是,上述第二方面至第六方面的有益效果可以参见上述第一方面中的相关描述,在此不再赘述。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请一实施例提供的一种蓝牙连接方法的应用场景示意图;
图2为本申请一实施例提供的一种建立蓝牙低功耗连接的信令交互图;
图3中的(1)图-图3中的(4)图为本申请一实施例提供的一种电子设备的一种界面变化示意图;
图4中的(1)图-图4中的(4)图为本申请一实施例提供的一种电子设备的另一种界面变化示意图;
图5为本申请一实施例提供的一种电子设备的界面示意图;
图6为本申请一实施例提供的一种蓝牙连接方法的流程图;
图7为本申请一实施例提供的一种蓝牙连接方法的流程图;
图8为本申请一实施例提供的一种蓝牙连接的结果示意图;
图9为本申请一实施例提供的一种电子设备中的软件系统示意图;
图10为本申请一实施例提供的一种蓝牙连接的原理示意框图;
图11为本申请一实施例提供的一种电子设备的硬件系统示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。其中,在本申请实施例的描述中,除非另有说明,“/”表示或的意思,例如,A/B可以表示A或B;本文中的“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,在本申请实施例的描述中,“多个”是指两个或多于两个。
以下,术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”、“第三”的特征可以明示或者隐含地包括一个或者更多个该特征。
为了便于介绍本申请实施例的方案,在介绍本申请实施例之前,先对本申请实施例中涉及到的术语或概念进行解释说明。
1、基本码率(basic rate,BR)技术
基本码率技术,也可以称为传统蓝牙、标准蓝牙或经典蓝牙,是一种低功率无线电,支持点对点通信。基本码率技术适用于数据量比较大的传输。
2、蓝牙低功耗(bluetooth low energy,BLE)技术
蓝牙低功耗技术,也可以称为低功耗蓝牙技术,是蓝牙技术联盟设计和销售的一种个人局域网技术,支持广播通信。蓝牙低功耗技术具有报文短、高效率编码、建立连接时间短等特点。
在一些实施例中,电子设备可以通过上述蓝牙技术连接外接设备。其中,电子设备支持基本码率技术和蓝牙低功耗技术。外接设备支持基本码率技术和蓝牙低功耗技术。
需要说明的是,上述蓝牙技术仅为示例性说明,随着蓝牙技术的演进,上述蓝牙技术,或者说无线连接方式可以包括更多的蓝牙连接方式,本申请实施例对此不作限定。
蓝牙低功耗技术与基本码率技术使用相同的无线电频率,使用不同的信道进行数据传输。蓝牙低功耗技术的通信距离大于基本码率技术的通信距离。
蓝牙低功耗技术相较于基本码率技术而言,功率更低,使用的调变系统更简单。并且,蓝牙低功耗技术在保持与基本码率技术相同通信范围的同时,能够显著降低功耗和成本。
3、蓝牙回连技术
蓝牙回连技术是指在设备之间建立蓝牙连接后,如果蓝牙连接中断,设备可以自动重新连接。蓝牙回连技术的实现原理是通过设备之间的信号传输来实现的。
请参阅图1,图1示出了本申请实施例提供的一种蓝牙连接方法的应用场景示意图。
如图1所示,本申请实施例提供的蓝牙连接系统可以包括电子设备100和第一外接设备200。第一外接设备200可以为一个或多个。电子设备100可以与第一外接设备200建立蓝牙连接,从而使得电子设备100可以与第一外接设备200正常进行无线通信,实现电子设备100与第一外接设备200之间的数据交互。
本申请实施例中的建立蓝牙连接也可以理解为蓝牙配对。蓝牙配对的目的是通过预设配对方法创建共享的链路密钥(link key)。该链路密钥可以用于电子设备100与第一外接设备200之间连接时的认证鉴权过程。该链路密钥还可以用于加密电子设备100与第一外接设备200之间相互交互的数据,从而保证电子设备100与第一外接设备200之间数据传输的安全性。
需要说明的是,链路密钥不仅可以用于电子设备100与第一外接设备200之间当前所建立的蓝牙连接中,还可以用于电子设备100与第一外接设备200之间后续的重连(例如,第一外接设备200自动发起的连接,或者,电子设备100在首次连接之后再次发起的连接)过程中。
还需说明的是,如果在认证鉴权的过程中,电子设备100发送的链路密钥与第一外接设备200发送的链路密钥不一致,那么需要重新建立电子设备100与第一外接设备200之间的蓝牙连接(或者说,蓝牙配对),从而再次创建一个链路密钥,来实现电子设备100与第一外接设备200之间的数据交互流程。
可选地,在一些实施例中,在电子设备100与第一外接设备200建立蓝牙连接之前,第一外接设备200响应于用户的触发(例如,单击、双击或滑动等)操作,可以恢复出厂设置。电子设备100响应于用户的触发操作,可以删除历史配对记录。从而能够避免在电子设备100与第一外接设备200建立蓝牙连接的过程中,出现其他因素的干扰。
本申请实施例提供的蓝牙连接方法应用于电子设备100。电子设备100可以为具有显示硬件以及相应软件支持的电子设备100。例如,电子设备100可以为手机、折叠屏、智慧屏、平板电脑、可穿戴电子设备、车载电子设备、增强现实(augmented reality,AR)设备、虚拟现实(virtual reality,VR)设备、笔记本电脑、超级移动个人计算机(ultra-mobilepersonal computer,UMPC)、上网本、个人数字助理(personal digital assistant,PDA)、家居设备、投影仪等。本申请实施例对电子设备100的具体类型不作任何限制。
第一外接设备200可以为具备蓝牙功能的外接设备。例如,第一外接设备200可以为手机、折叠屏、智慧屏、平板电脑、可穿戴电子设备、车载电子设备、增强现实(augmentedreality,AR)设备、虚拟现实(virtual reality,VR)设备、笔记本电脑、超级移动个人计算机(ultra-mobile personal computer,UMPC)、上网本、个人数字助理(personal digitalassistant,PDA)、家居设备、投影仪等。本申请实施例对第一外接设备200的具体类型不作任何限制。
可选地,在一些实施例中,电子设备100可以同时支持第一连接和第二连接。第一外接设备200也可以同时支持第一连接和第二连接。换句话说,电子设备100和第一外接设备200均可以支持双模蓝牙连接。在电子设备100和第一外接设备200均支持双模蓝牙连接的情况下,电子设备100和第一外接设备200可以统称为双模蓝牙设备。从而能够满足电子设备100和第一外接设备200之间不同的连接需求。
可选地,在一些实施例中,第一连接与第二连接为不同类型的连接。示例性地,第一连接为蓝牙低功耗连接,对应的,第二连接为基本码率连接。或者,第一连接为基本码率连接,对应的,第二连接为蓝牙低功耗连接。
在电子设备100与第一外接设备200均支持蓝牙低功耗连接和基本码率连接的情况下,电子设备100可以与第一外接设备200建立蓝牙低功耗连接,使得电子设备100和第一外接设备200可以通过蓝牙低功耗协议进行数据交互。电子设备100也可以与第一外接设备200建立基本码率连接,使得电子设备100和第一外接设备200可以通过基本码率协议进行数据交互。
然而,在电子设备100与第一外接设备200同时建立蓝牙低功耗连接和基本码率连接的情况下,两种不同类型的蓝牙连接会出现冲突,继而导致其中一种连接建立失败。
下面以电子设备100为手机,第一外接设备200为手表为例详细说明本申请实施例的应用场景。
如图1所示,手机当前显示的界面11中可以包括智慧生活101(或称为荣耀智慧空间等)、设置102、视频和运动健康等应用程序。手机响应于用户在不同应用程序中的触发操作,能够与手表建立不同的蓝牙连接。
可选地,在一些实施例中,手机可以通过智慧生活101实现对手表等外接设备的管理或连接等。具体而言,在手机与手表处于未连接的情况下,用户可以通过智慧生活101添加手表等外接设备,从而为手机与手表建立蓝牙连接做准备。
可选地,在另一实施例中,手机还可以通过设置102实现对手表等外接设备的管理或连接等。具体而言,在手机与手表处于未连接的情况下,用户可以通过设置102扫描手表等外接设备,从而为手机与手表建立蓝牙连接做准备。
需要说明的是,上述通过智慧生活101所建立的蓝牙连接与通过设置102所建立的蓝牙连接为不同类型的蓝牙连接。例如,智慧生活101所建立的蓝牙连接为蓝牙低功耗连接,以及,通过设置102所建立的蓝牙连接为基本码率连接。或者,智慧生活101所建立的蓝牙连接为基本码率连接,以及,通过设置102所建立的蓝牙连接为蓝牙低功耗连接。
基于此,本申请实施例中以通过智慧生活101所建立的蓝牙连接为蓝牙低功耗连接,以及,通过设置102所建立的蓝牙连接为基本码率连接为例,继续介绍本申请实施例的应用场景。
手机响应于用户对智慧生活101的相关操作,可以启动与手表之间的蓝牙低功耗连接的建立流程。
下面结合图2,详细介绍本申请实施例中的手机与手表建立蓝牙低功耗连接的具体实现过程。
请参阅图2,图2示出了本申请实施例提供的一种建立蓝牙低功耗连接的信令交互图。
如图2所示,本申请实施例中的手机,或者说,发起设备(initiator),与手表,或者说,应答设备(responder)建立蓝牙低功耗连接的具体步骤如下:
步骤11,在手表处于未配对的状态,且手表的可选的数据包(security manageprotocol,SMP)安全请求求(security request)这一可选项(optional)处于打开的状态下,手表可向手机发送安全请求。
其中,可选的数据包是蓝牙低功耗连接用来进行安全管理的数据包。可选的数据包中定义了配对和链路密钥分发的实现过程。
步骤12,手机在接收到安全请求之后,可向手表发送配对请求(pairing_request)。
步骤13,手表在接收到配对请求之后,可向手表发送配对响应(pairing_response)。
基于此,手机与手表可以完成蓝牙低功耗连接中的第一阶段(或者说,phase1),从而完成了配对交换功能。
步骤14,手机与手表通过蓝牙低功耗连接的可选的数据包进行配对(pairingover SMP)。具体而言,手机与手表可以采用传统配对(legacy)的方式进行连接,即生成短期密钥(short term key,STK)。或者,手机与手表还可以采用安全连接的方式进行连接,即生成长期密钥(long term key,LTK)。
由此,手机与手表可以完成蓝牙低功耗连接中的第二阶段(或者说,phase2),从而能够生成短期密钥或长期密钥。
需要说明的是,第二阶段中采用传统配对还是安全连接可以在第一阶段中的配对交换功能中进行确定。例如,在手机与手表均支持安全连接时,二者可采用安全连接的方式进行连接。
步骤15,手表向手机发送密钥分发(key distribution)。
示例性地,手表可以向手机发送身份解析密钥(identity resolving key,IRK),从而使得手机能够通过该身份解析密钥识别蓝牙设备是否为手表。手表也可以向手机发送连接签名解析密钥(connection signature resolving key,CSRK),从而使得手机能够通过该连接签名解析密钥验证手表的签名。手表也可以向手机发送加密多样化(encrypteddiversifier,EDIV)和随机值(random number,Rand),从而使得手机能够基于加密多样化和随机值来识别长期密钥。
步骤16,手机向手表发送密钥分发。步骤16与步骤15的区别在于发送密钥分发的设备和接收密钥分发的设备进行了互换,步骤16与步骤15的实现原理相同,故,步骤16的具体实现过程可以参见步骤15的相关描述,此处不做赘述。
基于此,手机与手表可以完成蓝牙低功耗连接中的第三阶段(或者说,phase3),从而能够使用第二阶段生成的密钥建立第三阶段的加密连接。
需要说明的是,上述手机与手表在建立蓝牙低功耗连接的过程中,还会建立蓝牙物理链路(asynchronous connection less,ACL),蓝牙物理链路主要用于分组数据传送。蓝牙物理链路能够定向发送数据包,例如,步骤15和步骤16采用第二阶段生成的密钥进行加密的数据交互。
还需要说明的是,如果手机将手表发送的加密多样化、随机值和长期密钥存储到手机的内存中,以及,手表将手机发送的加密多样化、随机值和长期密钥存储到手表的内存中,那么在手机与手表第二次建立蓝牙低功耗连接时,无需重复上述步骤12至步骤16,手机与手表可以直接使用存储的长期密钥进行加密的数据交互。
应理解,图2中以手机和手表为例对蓝牙低功耗连接的建立过程进行详细说明,图2中所示的步骤仅为建立蓝牙低功耗连接的部分步骤。图2所示的蓝牙低功耗连接的建立过程同样适用于其他电子设备100(即除了手机之外的电子设备100)与其他第一外接设备200(除了手表之外的第一外接设备200)。其他电子设备100与其他第一外接设备200之间的蓝牙低功耗连接的具体建立过程可参见图2及相关描述,此处不作赘述。
手机响应于用户对界面11中的智慧生活101的操作可以进入如图3中的(1)图所示的界面12,此处对进入界面12的具体细节不作赘述。
如图3中的(1)图所示,界面12为显示添加设备的界面。界面12中包括正在扫描和扫描时间(例如下午15:25:24)等功能选项。在界面12中,手机可以通过正在扫描这一功能选项扫描(通过图3中的(1)图中的嵌套圆形和虚线表示)到可通信距离范围内的全部第一外接设备200。应理解,全部第一外接设备200可以为一个或多个,本申请实施例中仅以第一外接设备200为一个,且为手表进行示例性说明。
如图3中的(1)图所示,界面12中还包括控件103。控件103用于表示手机扫描到的手表。示例性地,控件103可以显示手表的名称信息。应理解,手表的名称信息可以由本领域技术人员或用户根据实际情况进行设置,本申请实施例对此不作限定。
可选地,如图3中的(1)图所示,本申请实施例的界面12中还包括手动添加和扫码添加等控件。从而使得用户能够通过对不同的控件进行触发操作,来选择不同的添加设备的方式,本申请对此不作限定。
可选地,如图3中的(1)图所示,界面12中还包括正在扫描的提示信息。示例性地,正在扫描的提示信息可以为请确保设备(即手表)已连接电源,且位于手机附近,从而保证手机能够成功扫描到手表。
手机响应于用户对控件103的触发操作,显示图3中的(2)图中所示的界面13。如图3中的(2)图所示,界面13包括第一提醒框14。第一提醒框14主要用于显示手表的提示信息,从而提醒用户是否同意使用该手表进行蓝牙低功耗连接。示例性地,手表的提示信息可以为使用本设备的服务,需阅读并同意用户协议和隐私政策。并且,手机响应于用户对用户协议的触发操作,可以跳转至显示用户协议的详细内容的提醒框,或者,手机响应于用户对隐私政策的触发操作,可以跳转至显示隐私政策的详细内容的提醒框。
可选地,在一些实施例中,手表的提示信息也可以为用户协议的详细内容和/或隐私政策的详细内容,本申请实施例对此不作限定。
如图3中的(2)图所示,界面13中的第一提醒框14还包括取消控件。取消控件用于表示用户不同意使用该手表进行连接。手机响应于用户对取消控件的触发操作,可以不建立与手表之间的蓝牙低功耗连接。
如图3中的(2)图所示,第一提醒框14还包括控件104。控件104用于表示用户同意使用该手表进行连接。手机响应于用户对控件104的触发操作,可以开始建立与手表之间的蓝牙低功耗连接。
并且,手机响应于用户对控件104的触发操作,可显示如图3中的(3)图所示的界面15。界面15为显示连接设备的界面。界面15中包括设备连接状态(例如,图3中的(3)图所示的设备正在连接中…)和设备连接百分比(例如,图3中的(3)图所示的2%)等功能选项。
设备连接状态用于表示手机与手表之间的蓝牙低功耗连接的当前状态。设备连接状态还可以包括设备未连接和连接成功等,本申请实施例对此不作限定。设备连接百分比用于表示手机与手表之间的蓝牙低功耗连接的连接进度。设备连接百分比还可以为除了图3中的(3)图所示之外的其他百分比,例如40%,本申请实施例对此不作限定。
可选地,界面15中还可以包括用于提示用户连接过程中需要注意的信息。示例性地,如图3中的(3)图所示,用户连接过程中需要注意的信息可以为请确保手机靠近设备(即手表),且手机的无线网络畅通。从而使得用户在连接过程中不会将手机远离设备。
如图3中的(3)图所示,界面15还包括第二提醒框16。第二提醒框16主要用于显示蓝牙低功耗连接的信息(或者说,蓝牙低功耗连接的配对请求),从而提醒用户确定是否与手表建立蓝牙低功耗连接(或者说,以蓝牙低功耗协议进行蓝牙配对)。可选地,蓝牙低功耗连接的信息可以包括蓝牙低功耗连接的名称以及访问权限等。
示例性地,如图3中的(3)图所示,蓝牙低功耗连接的名称命名为手表蓝牙1。访问权限可以包括在建立连接(或者说,配对)之后,向已建立连接设备(或者说,已配对设备)授予通讯录的访问权限和通话记录的访问权限。手机响应于用户对访问权限的控件的选中操作(如图3中的(3)图中的黑色实心圆点所示),可以向手表开放对应的访问权限。对应的,在访问权限的控件未选中时,访问权限的控件显示为空心圆点(图3中的(3)图中未示出)。
需要说明的是,在实际应用中,蓝牙低功耗连接的名称可以由第一外接设备200的生产厂商进行设置,且蓝牙低功耗连接的名称并无任何实质性含义。例如,蓝牙低功耗连接的名称还可以命名为卡拉OK麦克风(karaoke microphone)BLE,本申请实施例对此不作限定。
还需说明的是,在实际应用中,本领域技术人员可根据实际情况增加或减少已建立连接设备的访问权限,本申请实施例对此不作限定。
如图3中的(3)图所示,界面15中的第二提醒框16还包括控件105。控件105用于表示用户确定与手表建立蓝牙低功耗连接,或者说,用户确定与手表以蓝牙低功耗协议进行蓝牙配对。对应的,界面15中的第二提醒框16还包括取消控件。取消控件用于表示用户取消与手表建立蓝牙低功耗连接,或者说,用户取消与手表之间基于蓝牙低功耗协议的蓝牙配对。
手机响应于用户对控件105的触发操作,可以继续建立与手表之间的蓝牙低功耗连接。在手机与手表之间的蓝牙低功耗连接建立成功之后,手机可显示如图3中的(4)图所示的界面17。界面17中可以包括连接成功和成功时间(例如,下午15:25:31)等功能选项。界面17中还可以包括连接成功时的百分比为100%等。
可选地,在一些实施例中,手机从显示如图3中的(3)图所示的界面15到显示如图3中的(4)图所示的界面17之间,还可以显示其他相关界面,例如,显示设备连接过程中的相关界面或者显示设备连接进度的相关界面。
基于此,手机可在智慧生活101中完成手机与手表之间的蓝牙低功耗连接的建立,从而使得手机与手表能够通过蓝牙低功耗协议进行数据交互。
在手机与手表之间的蓝牙低功耗连接建立成功之后,响应于用户对返回控件(图3中的(4)图中未标记)的触发操作,手机可以返回至显示界面11。手机响应于用户针对界面11中的设置102的触发操作,可以从显示界面11跳转为显示如图4中的(1)图所示的界面18。
如图4中的(1)图所示,界面18用于显示手机的不同类型的设置信息。界面18中包括无线局域网(wireless local area network,WLAN)设置条目、蓝牙设置条目106、移动网络设置条目、智慧互联条目、桌面和壁纸条目以及声音和振动条目等。从而使得用户能够在界面18中完成手机的各项设置,满足用户的个性化需求。
如图4中的(1)图所示,蓝牙设置条目106中显示有已开启。也就是说,此时手机的蓝牙功能处于开启状态。对应的,蓝牙设置条目106中还可以显示有未开启。也就是说,此时手机的蓝牙功能处于关闭状态。手机响应于用户针对蓝牙设置条目106的触发操作,可显示如图4中的(2)图所示的界面19。
如图4中的(2)图所示,界面19中包括蓝牙开关条目、设备名称条目、接收的文件条目。蓝牙开关条目中显示有控件107。控件107用于打开或关闭蓝牙功能。并且,图4中的(2)图中所示的控件107为打开状态。示例性地,在控件107处于关闭状态时,手机响应于用户针对控件107的触发操作,可以打开蓝牙功能。设备名称条目用于显示当前设备的名称,如图4中的(2)图所示,设备名称条目显示的当前设备为荣耀。
在手机的蓝牙功能打开的情况下,界面19中还包括已配对的设备列表和可用设备列表。已配对的设备列表中包括有一个或多个已配对的设备选项。由于手机已经建立与手表之间的蓝牙低功耗连接,故,已配对的设备列表中包括手表蓝牙1。
可用设备列表中包括一个或多个可连接的设备选项。由于手机未建立与手表之间的基本码率连接,故,可用设备列表中包括手表蓝牙2。可选地,手表蓝牙2可以命名为与手表蓝牙1不同的名称,从而可以避免在界面19中同时显示名称相同,但是类型不同的两种蓝牙连接,使得用户通过名称直接区分蓝牙低功耗连接和基本码率连接这两种类型不同的蓝牙连接。
应理解,可配对的设备列表和可用设备列表还可以包括其他设备(例如,荣耀亲选耳机等),为了便于说明,图4中的(2)图中以省略号表示其他设备。
需要说明的是,在实际应用中,基本码率连接的名称可以由第一外接设备200的生产厂商进行设置,且基本码率连接的名称并无任何实质性含义。例如,基本码率连接的名称还可以命名为荣耀亲选K歌麦克风,本申请实施例对此不作限定。
还需说明的是,本申请实施例中在手机建立与手表之间的蓝牙低功耗连接之前,手机的蓝牙功能已经处于开启状态,并且,手表的蓝牙功能也已经处于开启状态。手机的蓝牙功能可以通过上述方式开启,此处不再赘述。手表的蓝牙功能可以在手表的显示屏上进行开启,本申请对此不作限定。
在手表与手机之间的距离超出蓝牙低功耗连接的通信距离(例如,10米)时,手表与手机之间的蓝牙低功耗连接失败。手机可显示如图4中的(3)图所示的界面20。界面20中包括第三提醒框21。第三提醒框21主要用于显示蓝牙低功耗连接失败的信息,从而能够提醒用户查找失败原因。第三提醒框21还用于显示知道了和获取帮助等功能选项。知道了这一功能选项用于表示用户已知悉蓝牙低功耗连接失败。获取帮助这一功能选项用于表示用户可以获取蓝牙低功耗连接失败的具体原因以及恢复方法等。
需要说明的是,如图4中的(3)图所示,界面20中的第三提醒框21可以是手机响应于用户对界面20中的手表蓝牙1的触发操作所显示的提醒框。或者,界面20中的第三提醒框21也可以是在手表与手机之间的蓝牙低功耗连接失败时自动显示的提醒框,本申请实施例对此不作限定。
示例性地,如图4中的(3)图所示,蓝牙低功耗连接失败的信息可以包括该设备(即手表)不在通信范围内。蓝牙低功耗连接失败的信息还可以包括该设备的蓝牙关闭、设备已经与其他设备连接(图4中的(3)图中未示出)以及设备的软件程序或硬件出现问题(图4中的(3)图中未示出)等。应理解,除了上述列举的蓝牙低功耗连接失败的信息之外,界面20中的第三提醒框21中还可以显示其他蓝牙低功耗连接失败的信息,本申请实施例对此不作限定。
还应理解,在手机与手表之间的蓝牙低功耗连接建立失败的情况下,需要断开手机与手表之间的蓝牙低功耗连接后重试。
在手机与手表之间的距离超出蓝牙低功耗连接的通信距离之后,手机与手表之间的蓝牙低功耗连接会自动断开。或者说,在手机与手表之间构造拉锯场景,使得手机与手表之间的蓝牙低功耗连接断开。在手机与手表之间的蓝牙低功耗连接断开的情况下,用户可以在界面19中建立手机与手表之间的基本码率连接。
在手机与手表之间的蓝牙低功耗连接断开,且手机的蓝牙功能和手表的蓝牙功能均处于打开状态的情况下,如图4中的(4)图所示,手机可显示界面22。界面22中包括第四提醒框23。第四提醒框23用于显示基本码率连接的信息(或者说,基本码率连接的配对请求),从而提醒用户确定是否与手表建立基本码率连接(或者说,以基本码率协议进行蓝牙配对)。
可选地,基本码率连接的信息可以包括基本码率连接的名称以及访问权限等。示例性地,基本码率连接的名称可以命名为上述的手表蓝牙2(如图4中的(4)图所示)或者荣耀亲选K歌麦克风。访问权限可以包括在建立连接(或者说,配对)之后,向已建立连接设备(或者说,已配对设备)授予通讯录的访问权限和通话记录的访问权限。手机响应于用户对访问权限的控件的选中操作(如图4中的(4)图中的黑色实心圆点所示),可以向手表开放对应的访问权限。对应的,在访问权限的控件未选中时,访问权限的控件显示为空心圆点(图4中的(4)图中未示出)。
如图4中的(4)图所示,界面22中的第四提醒框23还包括控件108。控件108用于表示用户确定与手表建立基本码率连接,或者说,用户确定与手表以基本码率协议进行蓝牙配对。对应的,界面22中的第四提醒框23还包括取消控件。取消控件用于表示用户取消与手表建立基本码率连接,或者说,用户取消与手表之间基于基本码率协议的蓝牙配对。
手机响应于用户对控件108的触发操作,可以继续建立与手表之间的基本码率连接。需要说明的是,手机与手表之间建立基本码率连接的具体过程此处不作赘述。
由于手机与手表之间建立基本码率连接需要一定的时间,具体而言,基本码率连接的状态需要从未配对的状态转变为配对中的状态,再从配对中的状态转变为已配对的状态。在基本码率连接的状态转变为已配对的状态时,手机与手表之间的基本码率连接才能建立成功。
示例性地,在软件代码层面,未配对的状态可以通过未配对(bondnone)和数字0来表示,配对中的状态可以通过配对中(bonding)和数字1来表示,已配对的状态可以通过已配对(bonded)和数字2来表示。
因此,如图4中的(4)图所示,在手机与手表建立基本码率连接的过程中(也就是说,基本码率连接的状态从未配对转变为配对中),可能会出现手机与手表之间的距离恢复到蓝牙低功耗连接的通信距离的情况。
示例性地,手机与手表建立基本码率连接的过程在软件代码层面表示为从连接认证请求(host controller interface authentication requested)这一指令到认证完成(HCI authentication complete)这一指令之间的全部过程。
在手机与手表之间的距离恢复到蓝牙低功耗连接的通信距离的情况下,手表会自动发起回连。换句话说,手表会自动向手机发起蓝牙低功耗连接。示例性地,手表自动发起的蓝牙低功耗连接的状态为已配对。并且,手表自动发起的蓝牙低功耗连接是在连接认证请求这一指令对应的时刻A到认证完成这一指令对应的时刻B之间发起的。
需要说明的是,上述回连场景是针对于第一外接设备200为手表的场景,在第一外接设备200为除了手表之外的设备的场景中,第一外接设备200可以采用其他回连方式,本申请实施例对此不作限定。例如,在第一外接设备200为蓝牙耳机的场景中,蓝牙耳机响应于用户手动开盖的操作,可以自动回连手机。
由于手表中的蓝牙低功耗连接的可选项处于打开状态,具体而言,手表中的蓝牙低功耗连接的可选的数据包安全请处于打开状态。因此,在手表自动向手机发起蓝牙低功耗连接时,手表仍然会向手机发送SMP安全请求。手表发送的安全请求中会携带蓝牙低功耗连接的配对信息(例如,蓝牙低功耗连接的配对地址和蓝牙低功耗连接对应的传输协议等)。示例性地,蓝牙低功耗连接对应的传输协议在软件层面中可以通过传输(transport)表示。
基于此,手机在接收到安全请求之后,会将安全请求中携带的蓝牙低功耗连接的配对信息与正在建立的基本码率连接的配对信息(例如,基本码率连接的配对地址和基本码率连接对应的传输协议等)进行对比。对比结果为二者的配对信息不一致(例如,二者的配对地址不一致和/或者二者的传输协议不一致),或者说,安全请求中携带的蓝牙低功耗连接的配对信息与建立基本码率连接的配对信息发生了碰撞。
此时,手机中的蓝牙协议栈(bluetooth stack)会清空正在建立的基本码率连接的配对信息,终止手机与手表之间的基本码率连接的建立过程,导致手机与手表之间的基本码率连接建立失败。换句话说,手表发起的蓝牙低功耗连接的状态(已配对)会取代手机中正在建立的基本码率连接的状态(配对中),导致基本码率连接的配对终止,即无法完成基本码率连接的后续配对。
另外,由于手机与手表之间的蓝牙低功耗连接的状态为已经建立成功(或者说,已配对),故,手机在接收到安全请求之后,手机与手表之间的蓝牙低功耗连接可以恢复(如图1所示)。并且,由于已配对的设备列表中显示的是已配对的设备选项,而可用设备列表中显示的是可连接的设备选项,因此,如图5所示,界面24中已配对的设备列表中可以显示已配对的手表蓝牙1。
然而,由于手表蓝牙2处于正在建立连接(或者说,配对中)的状态,不属于已配对的设备,也不属于可连接的设备,因此,如图5所示,界面24中已配对的设备列表和可用设备列表中均未显示手表蓝牙2。图5可以直观反映出手机与手表之间的基本码率连接建立失败(如图1所示)的情况。
可选地,在手机与手表之间的基本码率连接建立失败时,手机中的蓝牙界面还可以显示基本码率连接建立失败的信息,从而提醒用户基本码率连接建立失败,使得用户能够及时查找原因。
需要说明的是,在手机与手表之间的基本码率连接建立失败时,手机中的蓝牙界面的可用设备列表中也可能会显示有手表蓝牙2。因此,在手机与手表之间的基本码率连接建立失败,且手机中的蓝牙界面的可用设备列表中显示有手表蓝牙2的情况下,响应于用户对手表蓝牙2的触发操作,手机中的蓝牙界面可以显示基本码率连接建立失败的信息。另外,在手机与手表之间的基本码率连接建立失败,且手机中的蓝牙界面的可用设备列表中未显示手表蓝牙2的情况下,手机中的蓝牙界面也可以自动显示基本码率连接建立失败的信息,本申请实施例对此不作限定。
应理解,上述各个界面以及各个界面中的控件均为示例说明,并不构成对本申请实施例中的界面的限定。在本申请的另一实施例中,基于不同的应用场景,各个界面可以包括比上述示例中的控件更多或更少的控件,各个界面还可以包括示意性的多个图标(例如蓝牙图标、设置图标和耳机图标)等,本申请对其不作具体限制。例如,图5所示的界面24中还可以包括返回控件(图5中未标记),返回控件用于实现从当前界面跳转至当前界面的上一级界面。也就是说,手机响应于用户对返回控件进行的触发操作后,手机可从显示如图5所示的界面24跳转为显示如图4中的(1)图所示的界面18。
有鉴于此,本申请实施例提供的蓝牙连接方法,在电子设备与第一外接设备正在建立基本码率连接的情况下,检测到第一外接设备发起蓝牙低功耗连接的回连。也就是说,电子设备与第一外接设备之间在同时建立两种类型的蓝牙连接。此时,电子设备会将第一外接设备发起的蓝牙低功耗连接的信息与正在建立的基本码率连接的信息进行比对。在二者不一致时,电子设备会存储第一外接设备发起的蓝牙低功耗连接的信息,能够避免电子设备与第一外接设备之间同时建立两种类型的蓝牙连接造成的连接冲突。并且,电子设备会继续建立与第一外接设备之间的基本码率连接,能够保证正在建立的基本码率连接建立成功。从而,通过将不一致的信息进行存储,能够保证在电子设备与第一外接设备之间同时建立不同类型的蓝牙连接的情况下,电子设备与第一外接设备之间正在建立的蓝牙连接不会终止,进而使得电子设备与第一外接设备之间正在建立的蓝牙连接建立成功。
以下将结合图6,详细描述本申请实施例的蓝牙连接方法。
请参阅图6,图6示出了本申请实施例提供的一种蓝牙连接方法的流程图。如图6所示,本申请实施例中的蓝牙连接方法包括:
S101,在电子设备与第一外接设备正在建立第一连接的情况下,检测到第一外接设备发起第二连接。
可选地,在一些实施例中,第一连接对应的配对信息为第一信息。第一信息包括第一地址信息和第一传输协议。第二连接对应的配对信息为第二信息。第二信息包括第二地址信息和第二传输协议。
示例性地,在第一连接为基本码率连接时,第一信息相当于上文所述的基本码率连接的信息。第一地址信息为基本码率连接的配对地址,第一传输协议为基本码率连接对应的硬件传输协议。此时,对应的,第二连接为蓝牙低功耗连接,第二信息相当于上文所述的蓝牙低功耗连接的信息。第二地址信息为蓝牙低功耗连接的配对地址,第二传输协议为蓝牙低功耗连接对应的硬件传输协议。
需要说明的是,第一地址信息和第二地址信息可以由第一外接设备200的生产厂商进行设置。第一外接设备200的生产厂商可以将第一地址信息设置为固定的静态地址信息。以及,第一外接设备200的生产厂商可以将第二地址信息设置为与第一地址信息不同的固定的静态地址信息。例如,在第一连接为基本码率连接,且第二连接为蓝牙低功耗连接时,第一外接设备200的生产厂商将基本码率连接的配对地址设置为18:FA:28:90:21:25,将蓝牙低功耗连接的配对地址设置为18:FA:29:90:21:25。或者,第一外接设备200的生产厂商还可以将第二地址信息设置为随机生成的动态地址信息。
还需说明的是,第一地址信息和第二地址信息均可以是媒体存取控制地址(mediaaccess control address),也称为局域网地址(local area network address)、MAC地址、以太网地址(ethernet address)或物理地址(physical address),也可以是蓝牙地址,本申请对此不作限定。
可选地,在一些实施例中,第一地址信息和第二地址信息可以是相同类型的地址,例如,第一地址信息为MAC地址,第二地址信息也为MAC地址。第一地址信息和第二地址信息还可以是不同类型的地址,例如,第一地址信息为MAC地址,第二地址信息为蓝牙地址。第一外接设备200的生产厂商可以基于实际情况将第一地址信息和第二地址信息设置为相同类型的地址,或者,将第一地址信息和第二地址信息设置为不同类型的地址信息,本申请对此不作限定。
在电子设备100与第一外接设备200开始建立第一连接之前,电子设备100可以通过扫描发现第一外接设备200。扫描到的第一外接设备200可显示在如图4中的(2)图所示的界面19中的可用设备列表中。在电子设备100扫描到第一外接设备200之后,可以判断第一外接设备是否处于可连接状态。
在第一外接设备200处于可连接状态的情况下,响应于用户的第一操作,能够建立电子设备100与第一外接设备200之间的第一连接。其中,第一操作用于指示电子设备100与第一外接设备200建立第一连接。例如,电子设备100响应于用户对如图4中的(4)图所示的控件108的触发操作,能够实现与第一外接设备200建立第一连接。
可选地,在一些实施例中,在第一外接设备200处于可连接的状态的情况下,响应于用户在如图4中的(4)图所示的界面22的第四提醒框23中对控件108的触发操作,能够建立电子设备100与第一外接设备200之间的第一连接(如图4中的(4)图所示的基本码率连接)。
可选地,在一些实施例中,在电子设备100与第一外接设备200开始建立第一连接时,电子设备100可以存储第一连接对应的配对信息,即第一信息。
可选地,在一些实施例中,电子设备100可以将第一信息保存在电子设备100的存储队列中。示例性地,在第一连接为基本码率连接时,电子设备100可以将用户确认请求(HCI user confirmation request)这一指令携带的第一信息存储到存储队列中。
在电子设备100与第一外接设备200正在建立第一连接的情况下,第一外接设备200可向电子设备100发起第二连接。示例性地,在软件层面,正在建立的第一连接可以通过pairing_cb这一变量表示。
在第一外接设备200向电子设备100发起第二连接之后,电子设备100可以检测到第一外接设备200发起的第二连接。
可选地,在一些实施例中,第二连接可以是第一外接设备200向电子设备100发起的自动回连。在第一外接设备200与电子设备100已经建立过第二连接,并且第二连接断开,以及第一外接设备200与电子设备100之间的通信距离满足预设通信距离的情况下,第一外接设备200可以自动回连电子设备100。从而使得,第一外接设备200能够基于蓝牙低功耗协议与电子设备100再次进行数据交互。
示例性地,在第一外接设备200与电子设备100已经建立过蓝牙低功耗连接(如图3中的(1)图-图3中的(4)图所示),并且蓝牙低功耗连接断开(如图4中的(3)图所示),以及第一外接设备200与电子设备100之间的通信距离小于或等于10米的情况下,第一外接设备200可以自动回连电子设备100。
S102,将第二信息与第一信息进行对比。
在电子设备100检测到第一外接设备200发起的第二连接之后,电子设备100可将第一连接对应的配对信息与第二连接对应的配对信息进行对比。也就是说,电子设备100可以将第二信息与已经存储在存储队列中的第一信息进行对比。从而使得电子设备100能够根据对比结果执行后续操作。
可选地,在一些实施例中,在第二连接为蓝牙低功耗连接时,第一外接设备200发起第二连接的指令可以为安全请求(SMP security request)。安全请求这一指令中携带有第二信息。
可选地,在一些实施例中,电子设备100可以将第二地址信息与存储队列中存储的第一地址信息进行对比。或者,电子设备100可以将第二传输协议与存储队列中存储的第一传输协议进行对比。
可选地,在另一实施例中,电子设备100还可以将第二地址信息与存储队列中存储的第一地址信息进行对比,以及,将第二传输协议与存储队列中存储的第一传输协议进行对比。
需要说明的是,由于第一外接设备200的生产厂商所设置的第一地址信息和第二地址信息可能相同,也可能不同,而不同类型的蓝牙连接的所对应的传输协议不同,因此,本领域技术人员可以首先对比第一地址信息和第二地址信息,在确定二者的地址信息相同时,对比二者的传输协议,也就是对比第一传输协议和第二传输协议。
示例性地,不同类型的蓝牙连接的所对应的传输协议可以包括蓝牙低功耗连接所对应的传输协议,以及,基本码率连接所对应的传输协议。蓝牙低功耗连接所对应的传输协议为通用属性协议和通用访问协议等。基本码率连接所对应的传输协议为传统蓝牙硬件传输协议(包括无线电接口协议和高级音频分发协议等)。
还需说明的是,在实际应用中,具体的比对方式和比对内容由第一信息中包括的内容和第二信息中包括的内容决定,本申请实施例对此不作限定。示例性地,在第一信息中既包括第一地址信息,又包括第一传输协议,以及第二信息中既包括第二地址信息,又包括第二传输协议的情况下,电子设备100可以选择上述任意一种比对方式。然而,在第一信息中包括第一地址信息,第二信息中包括第二地址信息,或者,第一信息中包括第一地址信息,第二信息中既包括第二地址信息,又包括第二传输协议的情况下,电子设备100可以比对二者的地址信息,无法比对二者的传输协议。
S103,在第二信息与第一信息不一致时,将第二信息保存到存储队列中,并继续执行第一连接。
在第二信息与第一信息不一致时,电子设备100可以将第二信息保存到存储队列中,并继续执行与第一外接设备200之间的第一连接。从而能够避免第二连接与第一连接发生蓝牙连接冲突,避免了第一连接由于蓝牙连接冲突导致的连接过程终止,进而保证了电子设备100与第一外接设备200之间的第一连接能够建立成功。
需要说明的是,本申请实施例中的继续执行用于表示在执行第一连接的过程中,需要将第二连接的第二信息与第一连接的第一信息进行比对,在比对之后继续执行第一连接,并不表示对第一连接的过程进行实质性的中断或暂停。也就是说,电子设备100在比对第二信息与第一信息的过程中,第一连接仍然处于执行状态中。
可选地,在存储队列中,第二信息所占据的存储空间与第一信息所占据的存储空间为相互独立的存储空间,故,第一信息的存储与第二信息的存储互不影响。也就是说,本申请实施例中已存储的第一信息不会对未存储的第二信息的存储过程造成影响。示例性地,电子设备100可以基于寄存器地址对第一信息所占据的存储空间和第二信息所占据的存储空间进行划分,以确保第一信息和第二信息相互独立,互不影响。
由于在电子设备100与第一外接设备200之间建立任一类型蓝牙连接的过程中,第一外接设备200向电子设备100发送的每一条指令均会携带有该类型蓝牙连接的配对信息,因此,在任一蓝牙连接的认证过程中,电子设备100可以遍历存储队列,将该类型蓝牙连接的配对信息与存储队列中已存储的配对信息进行比对即可。
可见,在存储队列中存储有第一信息和第二信息之后,电子设备100执行第一连接与电子设备100执行第二连接这两个执行过程之间互不影响,本领域技术人员可以根据实际情况设置电子设备100执行第一连接和第二连接的先后顺序,本申请实施例对此不作限定。
可选地,在一些实施例中,电子设备100可以同时执行第一连接和第二连接,从而能够加快电子设备100与第一外接设备200之间的蓝牙连接速度,提高电子设备100与第一外接设备200之间的蓝牙连接效率。
可选地,在另一实施例中,电子设备100也可以按照存储顺序的先后执行第一连接和第二连接。并且,在调用存储队列中已存储的信息进行比对时,先执行的一种类型的蓝牙连接不会因为后执行的另一种类型的蓝牙连接的影响导致第一连接的建立过程终止,从而能够确保第一连接建立成功。
示例性地,在将第二信息保存到存储队列中,电子设备100可以继续接收第一外接设备200发送的执行第一连接的指令。此时,第一外接设备200发送的执行第一连接的指令中携带有第一信息。电子设备100在接收到该指令后,可以遍历存储队列,将该指令携带的第一信息与存储队列中已存储的第一信息和第二信息进行比对。电子设备100在确定该指令携带的第一信息与存储队列中已存储的第一信息一致的情况下,可以成功建立第一连接。也就是说,存储队列中已存储的第二信息不会对第一连接的建立过程产生影响。
可选地,在一些实施例中,如图7所示,在电子设备100与第一外接设备200正在建立第一连接的情况下,检测到第一外接设备200发起第二连接的情况下,电子设备100可以判断第二地址信息与第一地址信息是否一致。在第二地址信息与第一地址信息不一致时,电子设备100可以将第二地址信息保存在存储队列中,并继续执行第一连接。
可选地,在一些实施例中,如图7所示,在第二地址信息与第一地址信息一致的情况下,电子设备100还可以判断第二传输协议与第一传输协议是否一致。在第二地址信息与第一地址信息一致,且第二传输协议与第一传输协议不一致时,电子设备100可以将第二传输协议保存在存储队列中,并继续执行第一连接。
可选地,在一些实施例中,在第二地址信息与第一地址信息不一致,且第二传输协议与第一传输协议不一致时,电子设备100可以将第二地址信息和第二传输协议保存在存储队列中,并继续执行第一连接。
需要说明的是,上述电子设备100存储第二信息(例如,第二地址信息或第二传输协议等)的时机仅作为示例性说明。在实际应用中,电子设备100存储第二信息的时机可以由本领域技术人员根据实际情况进行设置,本申请实施例对此不作限定。
可选地,在一些实施例中,在第一连接的认证过程中,电子设备100可以确定存储队列中是否包括第一信息。在确定存储队列中包括第一信息时,电子设备100可以继续执行第一连接。从而能够确保在第一连接的认证过程中的每条指令所携带的第一信息已经保存到存储队列中(或者说,确保在认证过程中的每条指令所携带的第一信息能够与存储队列中已保存的第一信息匹配成功),进而保证电子设备100与第一外接设备200之间的第一连接能够建立成功。示例性地,在第一连接为蓝牙低功耗连接时,第一连接的认证过程为如图2中所示的步骤15和步骤16。
可选地,在一些实施例中,在第一连接为基本码率连接时,电子设备100可以通过将认证完成(HCI authentication complete)这一指令中携带的第一信息与存储队列中已保存的第一信息进行匹配,在二者匹配成功时,电子设备100通过电子设备100中的配对状态函数可以将第一连接的配对状态更新为已配对。并且,电子设备100还可以通过配对状态函数将第一连接处于已配对状态反馈给应用程序层中的设置应用。
可选地,在一些实施例中,在第一连接建立成功之后,电子设备100可以从存储队列中删除第一信息。从而能够避免已经建立成功的蓝牙连接的信息占据存储队列中的存储空间,减少了存储队列中的存储空间的占用,进而能够加快电子设备100与第一外接设备200建立除了第一连接之外的其他类型的蓝牙连接(如第二连接)的速度。
本申请实施例中的蓝牙连接方法,通过在电子设备与第一外接设备正在建立第一连接的情况下,可以检测到第一外接设备发起第二连接的回连,也就是说,电子设备与第一外接设备之间在同时建立两种类型的蓝牙连接。此时,电子设备可以将第二信息(即第一外接设备发起的第二连接所对应的配对信息)与第一信息(即正在建立的第一连接所对应的配对信息)进行对比。在第二信息与第一信息不一致时,电子设备可以将第二信息保存到存储队列中,能够避免电子设备与第一外接设备之间同时建立两种类型的蓝牙连接造成的连接冲突。并且,电子设备会继续建立与第一外接设备之间的第一连接,能够保证正在建立的第一连接建立成功。从而,可实现在第一外接设备发起的蓝牙连接所对应的配对信息与电子设备中正在建立的蓝牙连接所对应的配对信息不同时,通过将第一外接设备发起的蓝牙连接所对应的配对信息进行存储,能够避免两种不同类型的蓝牙连接发生连接冲突,避免了电子设备与第一外接设备之间正在建立的蓝牙连接发生终止,进而保证了电子设备与第一外接设备之间正在建立的蓝牙连接建立成功。
基于S103的相关描述,电子设备100在将第二信息保存到存储队列中后,可以采用多种可能的实现方式继续执行第二连接。下面详细介绍电子设备100继续执行第二连接的一种可能的实现方式。
可选地,在一些实施例中,在第二连接的认证过程中,电子设备100可以确定存储队列中是否包括第二信息。在确定存储队列中包括第二信息时,电子设备100可以继续执行第二连接。从而能够确保在第二连接的认证过程中的每条指令所携带的第二信息已经保存到存储队列中(或者说,确保在第二连接的认证过程中的每条指令所携带的第二信息能够与存储队列中已保存的第二信息匹配成功),进而保证电子设备100与第一外接设备200之间的第二连接能够建立成功。示例性地,在第二连接为蓝牙低功耗连接时,第二连接的认证过程为如图2中所示的步骤15和步骤16。
可选地,在一些实施例中,在第二连接为蓝牙低功耗连接时,电子设备100可以通过将安全请求(SMP security request)这一指令中携带的第二信息与存储队列中已保存的第二信息进行匹配,在二者匹配成功时,电子设备100通过电子设备100中的配对状态函数可以将第二连接的配对状态更新为已配对。并且,电子设备100还可以通过配对状态函数将第二连接处于已配对状态反馈给应用程序层中的设置应用。
示例性地,在第一连接和第二连接均建立成功的情况下,电子设备100的显示如图8所示的界面25。界面25中的已配对的设备列表中包括手表蓝牙1和手表蓝牙2。由此,通过将图8所示的界面25与图5所示的界面24对比,明显可以看出,图8所示的两种类型的蓝牙连接均建立成功的界面25中的手表蓝牙1和手表蓝牙2均会显示在图8所示已配对的设备列表中,而图5中手表蓝牙1可以建立成功,显示在图5所示的已配对的设备列表中,手表蓝牙2由于蓝牙连接冲突导致终止,在图5所示的已配对的设备列表和可用设备列表中均不显示。
应理解,此处电子设备100与第一外接设备200之间建立蓝牙低功耗连接的流程可参照图2的相关描述,此处不作赘述。
还应理解,第一外接设备200首次发起安全请求(如图2所示的步骤11)时,第一外接设备200首次发起的安全请求中携带有第二连接的状态为未配对的信息。配对状态函数将第二连接的状态为未配对转变为配对中,并继续执行后续配对流程。在第二连接建立成功之后,第一外接设备200发起回连时,第一外接设备200会再次发起安全请求。此时,由于第二连接已经建立成功,故,第二连接的状态为已配对。也就是说,第一外接设备200再次发起的安全请求中携带有第二连接的状态为已配对的信息。
可选地,在一些实施例中,在第二连接建立成功之后,电子设备100可以从存储队列中删除第二信息。从而能够避免已经建立成功的蓝牙连接的信息占据存储队列中的存储空间,减少了存储队列中的存储空间的占用,进而能够加快电子设备100与第一外接设备200建立除了第二连接之外的其他类型的蓝牙连接(如第一连接)的速度。
需要说明的是,本申请实施例中均以第一连接为基本码率连接,第二连接为蓝牙低功耗连接作为示例性说明。本申请实施例的蓝牙连接方法同样适用于第一连接为蓝牙低功耗连接,第二连接为基本码率连接的情况,二者的区别仅在于两种类型的蓝牙连接所对应的指令发生变化。
示例性地,在第一连接为蓝牙低功耗连接,第二连接为基本码率连接时,电子设备100开始建立第一连接的指令为安全请求(SMP security request)。电子设备100可以将安全请求这一指令中携带的第一信息保存到存储队列中。由于此时的蓝牙低功耗连接属于首次连接,并非是第一外接设备200所发起的回连,因此,在认证过程中,电子设备100可以通过将SMP transport specific key distribution这一指令携带的第一信息与存储队列中已保存的第一信息进行比对。在二者一致时,电子设备100可以确定认证成功。
需要说明的是,上述蓝牙连接方法是基于第一外接设备为一个的示例性说明,本申请实施例的蓝牙连接方法同样适用于第一外接设备为多个的情况,本申请实施例对此不作限定。示例性地,在第一外接设备为两个时,其中一个第一外接设备支持第一连接和第二连接,另一个第一外接设备支持第二连接。基于此,如果电子设备在与一个第一外接设备建立第一连接的过程中,一个第一外接设备向电子设备发起第二连接(第二连接为已经建立成功但断开的连接)的自动回连,同时,另一个第一外接设备也向电子设备发起第二连接的自动回连,此时,一个外接设备可以采用本申请实施例中的蓝牙连接方法进行连接。而由于另一个第一外接设备仅支持一种类型的蓝牙连接,即第二连接,因此,另一个第一外接设备与电子设备的回连不会产生连接冲突,可以成功回连。
上文详细描述了应用于电子设备100的蓝牙连接方法,下面介绍电子设备100中的软件系统。软件系统可以采用分层架构、事件驱动架构、微核架构、微服务架构或云架构,本申请实施例以分层架构为例,示例性地描述电子设备100中的软件系统。
请参阅图9,图9示出了本申请实施例提供的一种电子设备中的软件系统示意图。
电子设备100中的软件系统可以分成若干个层,每一层都有清晰的角色和分工。层与层之间通过软件接口通信。在一些实施例中,如图9所示,电子设备100的软件系统从上至下分别为应用程序层(application,APP)、应用程序框架层(application framework)、硬件抽象层(hardware abstraction layer,HAL)、驱动层(driver)和硬件层(hardware)。
应用程序层可以包括多个应用程序。例如,多个应用程序可以为智慧生活应用程序(如图1所示)、如图10所示的设置应用程序(settings.apk)、如图10所示的蓝牙应用程序(bluetooth.apk)、日历应用程序和音乐应用程序等。可以理解,应用程序层中的多个应用程序可以是用户安装的第三方应用程序,也可以是系统应用程序。
应用程序框架层是用于支持应用程序层中的多个应用程序运行的框架层。应用程序框架层包括标准的安卓(android)应用程序编程接口(application programminginterface,API)和如图10所示的蓝牙应用程序编程接口(bluetooth framework API)等,多个接口均能够被应用程序层的多个应用程序调用。
应用程序框架层还包括核心服务(core service)。核心服务用于提供软件系统的核心功能(例如数据存储等)。
硬件抽象层中采用的语言是一种用于定义硬件抽象层接口的语言(HALinterface definition language,HIDL)。硬件抽象层中的语言用于描述硬件组成的接口和功能。HIDL框架为原生安卓提供的HAL框架。
硬件抽象层包括原生的蓝牙接口、蓝牙协议栈和扩展的驱动接口。示例性地,原生的蓝牙接口可以包括采用硬件抽象层接口的语言定义的蓝牙接口(bluetooth HIDLinterface)等。扩展的驱动接口可以包括蓝牙芯片厂商提供的操作驱动的接口(vendorHAL)等。
如图10所示,蓝牙协议栈中包括配对状态函数。配对状态函数用于将不同类型的蓝牙连接(如图10所示的基本码率连接和蓝牙低功耗连接)所对应的状态反馈至蓝牙应用程序。示例性地,配对状态函数在软件层面中可以表示为bond_state_changed函数。应理解,配对状态函数还可以表示为其他字符,本申请实施例对此不作限定。
由于蓝牙协议栈处于如图9所示的硬件抽象层,故,图10所示的配对状态函数也处于图9所示的硬件抽象层。
可选地,在一些实施例中,配对状态函数中设置有存储队列(图10中未示出)。存储队列也处于图9所示的硬件抽象层。存储队列用于存储第一连接的第一信息和第二连接的第二信息。也就是说,基本码率连接的配对信息和/或蓝牙低功耗连接的配对信息的存储位置为图9所示的硬件抽象层的存储队列中。
可选地,在一些实施例中,配对状态函数中还包括正在建立的第一连接的变量(例如,pairing_cb变量)。
如图9所示,驱动层属于硬件和软件之间的抽象层。驱动层包括如图9和图10所示的蓝牙驱动(bluetooth driver)、硬件接口驱动、音频驱动和传感器驱动等。硬件接口驱动包括蓝牙和处理器之间的硬件连接驱动。具体而言,硬件接口驱动可以为通用串行总线(universal serial bus,USB)接口驱动。或者,硬件接口驱动也可以为通用异步收发器(universal asynchronous receiver/transmitter,UART)接口驱动。从而能够使得电子设备100通过不同的硬件驱动接口与对应的硬件连接。
如图9所示,硬件层用于定义蓝牙芯片和蓝牙以及处理器之间的连接硬件。硬件层包括无线电接口(radio)和硬件接口。示例性地,硬件接口可以为USB接口,也可以为UART接口。
应理解,图9所示的分层结构并不构成对电子设备100的软件系统的具体限定。在本申请另一些实施例中,电子设备100的软件系统可以包括比图9所示的分层架构更多或更少的架构,或者,电子设备100的软件系统的每层架构中可以包括比图9所示的组成结构更多或更少的结构,本申请实施例并不限于此。
本申请实施例的蓝牙连接方法(如图6和图7所示)发生于硬件抽象层,可以通过硬件抽象层中的蓝牙协议栈执行。下面以蓝牙低功耗连接为例,详细说明电子设备100建立蓝牙连接的实现过程。
如图10所示的蓝牙驱动是电子设备100与第一外接设备200连接的桥梁。电子设备100可以通过蓝牙驱动与第一外接设备200进行通信。
如图10所示,电子设备100与第一外接设备200之间建立蓝牙低功耗连接(具体建立过程如图2所示)具体包括:电子设备100通过蓝牙驱动向蓝牙协议栈发送蓝牙低功耗连接的配对信息。此时,蓝牙协议栈中的配对状态函数可以将蓝牙低功耗连接的状态从未配对的状态转变为配对中的状态。并且,配对状态函数还可以将转变后的蓝牙低功耗连接的状态,即配对中的状态反馈至上层的蓝牙应用程序。然后,电子设备100可继续蓝牙低功耗连接的认证过程。
同理,在认证完成后,配对状态函数可以将蓝牙低功耗连接的状态从配对中的状态转变为已配对的状态。在蓝牙应用程序接收到已配对的状态之后,蓝牙应用程序可以通过应用框架层中设置的蓝牙应用程序编程接口向设置应用程序反馈蓝牙低功耗连接的状态为已配对状态。此时,设置应用程序显示界面如图4中的(2)图所示,手表蓝牙1(表示蓝牙低功耗连接)显示在界面19中的已配对的设备列表中。
上述过程为图10所示的从下至上的蓝牙低功耗连接的建立过程,下面详细说明图10所示的从上至下的蓝牙低功耗连接的建立过程。
如图10所示,电子设备100与第一外接设备200之间建立蓝牙低功耗连接具体包括:电子设备100响应于用户在设置应用程序(如图4中的(1)图)中的操作,可以通过应用程序框架层中的蓝牙应用程序编程接口进入蓝牙应用程序(如图4中的(2)图)。在进入蓝牙应用程序之后,电子设备100可以通过蓝牙协议栈以及蓝牙驱动建立与第一外接设备200之间的蓝牙低功耗连接。
需要说明的是,基本码率连接建立的具体实现原理与蓝牙低功耗连接建立的实现原理相同,二者的区别在于所采用的指令以及建立的时长不同,可参见上文中有关蓝牙低功耗连接建立的相关描述,此处不作赘述。
上文详细描述了应用于电子设备100的蓝牙连接方法,以及电子设备100的软件系统,下面介绍电子设备100中的硬件系统。
请参阅图11,图11示出了本申请实施例提供的一种电子设备的硬件系统示意图。
如图11所示,电子设备100可以包括处理器110、外部存储器接口120、内部存储器121、通用串行总线(universal serial bus,USB)接口,即USB接口130、充电管理模块140、电源管理模块141、电池142、天线1、天线2、移动通信模块150、无线通信模块160、音频模块170、扬声器170A、受话器170B、麦克风170C、耳机接口170D、传感器模块180、按键190、马达191、指示器192、摄像头193、显示屏194以及用户标识模块(subscriber identificationmodule,SIM)卡接口,即SIM卡接口195等。其中,传感器模块180可以包括压力传感器180A、陀螺仪传感器180B、气压传感器180C、磁传感器180D、加速度传感器180E、距离传感器180F、接近光传感器180G、指纹传感器180H、温度传感器180J、触摸传感器180K、环境光传感器180L和骨传导传感器180M等。
需要说明的是,图11所示的结构并不构成对电子设备100的硬件系统的具体限定。在本申请另一些实施例中,电子设备100的硬件系统可以包括比图11所示的部件更多或更少的部件,或者,电子设备100的硬件系统可以包括图11所示的部件中某些部件的组合,或者,电子设备100的硬件系统可以包括图11所示的部件中某些部件的子部件。比如,图11所示的接近光传感器180G可以是可选的。图11所示的部件可以以硬件、软件、或软件和硬件的组合实现。
处理器110可以包括一个或多个处理单元。例如,处理器110可以包括以下处理单元中的至少一个:应用处理器(application processor,AP)、调制解调处理器、图形处理器(graphics processing unit,GPU)、图像信号处理器(image signal processor,ISP)、控制器、视频编解码器、数字信号处理器(digital signal processor,DSP)、基带处理器、神经网络处理器(neural-network processing unit,NPU)。其中,不同的处理单元可以是独立的器件,也可以是集成的器件。
控制器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。
处理器110中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器110中的存储器为高速缓冲存储器。该存储器可以保存处理器110刚用过或循环使用的指令或数据。如果处理器110需要再次使用该指令或数据,可从所述存储器中直接调用。避免了重复存取,减少了处理器110的等待时间,因而提高了系统的效率。
图11所示的各模块间的连接关系只是示意性说明,并不构成对电子设备100的各模块间的连接关系的限定。可选地,电子设备100的各模块也可以采用上述实施例中多种连接方式的组合。
无线通信模块160可以提供应用在电子设备100上的包括无线局域网(例如,无线保真(wireless fidelity,Wi-Fi)网络)、蓝牙,全球导航卫星系统(global navigationsatellite system,GNSS)、调频(frequency modulation,FM)、近距离无线通信技术(nearfield communication,NFC)、红外技术(infrared,IR)等无线通信的解决方案。无线通信模块160可以是集成至少一个通信处理模块的一个或多个器件。无线通信模块160经由天线2接收电磁波,将电磁波信号调频以及滤波处理,将处理后的信号发送到处理器110。无线通信模块160还可以从处理器110接收待发送的信号,对其进行调频,放大,经天线2转为电磁波辐射出去。
电子设备100可以通过GPU、显示屏194以及应用处理器实现显示功能。GPU为图像处理的微处理器,连接显示屏194和应用处理器。GPU用于执行数学和几何计算,用于图形渲染。处理器110可包括一个或多个GPU,其执行程序指令以生成或改变显示信息。
显示屏194可以用于显示图像或视频。显示屏194包括显示面板。显示面板可以采用液晶显示屏(liquid crystal display,LCD)、有机发光二极管(organic light-emitting diode,OLED)、有源矩阵有机发光二极体(active-matrix organic light-emitting diode,AMOLED)、柔性发光二极管(flex light-emitting diode,FLED)、迷你发光二极管(mini light-emitting diode,Mini LED)、微型发光二极管(micro light-emitting diode,Micro LED)、微型OLED(micro OLED)或量子点发光二极管(quantum dotlight emitting diodes,QLED)。在一些实施例中,电子设备100可以包括1个或N个显示屏194,N为大于1的正整数。在一些实施例中,显示屏194的展开状态可以为如图3中的(1)图-图3中的(4)图中所示的任意一个界面。
电子设备100可以通过ISP、摄像头193、视频编解码器、GPU、显示屏194以及应用处理器等实现拍摄功能。电子设备100可以通过音频模块170、扬声器170A、受话器170B、麦克风170C、耳机接口170D以及应用处理器等实现音频功能,例如,音乐播放和录音。
可选地,在一些实施例中,处理器110用于在第一外接设备200发起的第二连接的第二信息与电子设备100中正在建立的第一连接的第一信息不一致时,存储第一外接设备200发起的第二连接的信息,并继续执行电子设备100中正在建立的与第一外接设备200之间的第一连接。从而避免两种不同类型的蓝牙连接发生冲突,进而确保电子设备100中正在建立的与第一外接设备200之间的第一连接建立成功。
本申请实施例还提供了一种蓝牙连接装置,本申请实施例的蓝牙连接装置可以包括:
检测模块,用于在电子设备100与第一外接设备200正在建立第一连接的情况下,检测到第一外接设备200发起第二连接;其中,第一外接设备200同时支持第一连接和第二连接;第一连接与第二连接为不同类型的连接;第二连接对应的配对信息为第二信息;第一连接对应的配对信息为第一信息;
对比模块,用于将第二信息与第一信息进行对比;第一信息在开始建立第一连接时保存在电子设备100的存储队列中;
处理模块,用于在第二信息与第一信息不一致时,将第二信息保存到存储队列中,并继续执行第一连接。
可选地,在一些实施例中,第一信息包括第一地址信息和第一传输协议;第二信息包括第二地址信息和第二传输协议;对比模块,还用于将第二地址信息与第一地址信息进行对比;和/或,将第二传输协议与第一传输协议进行对比。
可选地,在一些实施例中,处理模块,还用于在第二地址信息与第一地址信息不一致时,将第二地址信息保存在存储队列中,并继续执行第一连接;在第二地址信息与第一地址信息一致,且第二传输协议与第一传输协议不一致时,将第二传输协议保存在存储队列中,并继续执行第一连接。
可选地,在一些实施例中,处理模块,还用于在第二地址信息与第一地址信息不一致,且第二传输协议与第一传输协议不一致时,将第二地址信息和第二传输协议保存在存储队列中,并继续执行第一连接。
可选地,在一些实施例中,处理模块,还用于在第一连接的认证过程中,确定存储队列中是否包括第一信息;若存储队列中包括第一信息,则继续执行第一连接。
可选地,在一些实施例中,在第一连接建立成功之后,处理模块,还用于从存储队列中删除第一信息。
可选地,在一些实施例中,在将第二信息保存到存储队列中之后,处理模块,还用于在第二连接的认证过程中,确定存储队列中是否包括第二信息;若存储队列中包括第二信息,则执行第二连接;第二连接是第一外接设备200向电子设备100发起的自动回连;在第一外接设备200与电子设备100之间的通信距离满足预设通信距离的情况下,第一外接设备200自动回连电子设备100。
可选地,在一些实施例中,在第二连接建立成功之后,处理模块,还用于从存储队列中删除第二信息。
可选地,在一些实施例中,在电子设备100与第一外接设备200开始建立第一连接之前,检测模块,还用于通过扫描发现第一外接设备200;判断第一外接设备200是否处于可连接状态;在第一外接设备200处于可连接状态的情况下,响应于用户的第一操作,第一操作用于指示电子设备100与第一外接设备200建立第一连接。
可选地,在一些实施例中,第一连接为蓝牙低功耗连接,第二连接为基本码率连接;或者,第一连接为基本码率连接,第二连接为蓝牙低功耗连接。
示例性地,本申请提供一种可读存储介质,可读存储介质中存储有计算机程序,处理器110调用指令,使得电子设备100执行时实现前文实施例中的方法。
示例性地,本申请提供一种芯片系统,芯片系统应用于包括存储器、显示屏194和传感器的电子设备100;芯片系统包括:一个或多个接口电路和一个或者多个处理器110;接口电路和处理器110通过线路互联;接口电路用于从存储器接收信号,并向处理器110发送信号,信号包括存储器中存储的计算机代码或指令;处理器110调用指令,使得电子设备100执行前文实施例中的方法。
示例性地,本申请提供一种计算机程序产品,当计算机程序产品在计算机上运行时,使得电子设备100实现前文实施例中的方法。
在上述实施例中,全部或部分功能可以通过软件、硬件、或者软件加硬件的组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。计算机程序产品包括一个或多个计算机代码或指令。在计算机上加载和执行计算机程序代码或指令时,全部或部分地产生按照本申请的流程或功能。计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。计算机代码或指令可以存储在计算机可读存储介质中。计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如,固态硬盘(solid state disk,SSD))等。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,该流程可以由计算机程序来指令相关的硬件完成,该程序可存储于计算机可读取存储介质中,该程序在执行时,可包括如上述各方法实施例的流程。而前述的存储介质包括:只读存储器(read only memory,ROM)或随机存取存储器(random access memory,RAM)、磁碟或者光盘等各种可存储程序代码的介质。
Claims (12)
1.一种蓝牙连接方法,其特征在于,所述方法应用于电子设备,所述方法包括:
在所述电子设备与第一外接设备正在建立第一连接的情况下,检测到所述第一外接设备发起第二连接;其中,所述第一外接设备同时支持所述第一连接和所述第二连接;所述第一连接与所述第二连接为不同类型的连接;所述第二连接对应的配对信息为第二信息;所述第一连接对应的配对信息为第一信息;
将所述第二信息与所述第一信息进行对比;所述第一信息在开始建立所述第一连接时保存在所述电子设备的存储队列中;
在所述第二信息与所述第一信息不一致时,将所述第二信息保存到所述存储队列中,并继续执行所述第一连接。
2.根据权利要求1所述的方法,其特征在于,所述第一信息包括第一地址信息和第一传输协议;所述第二信息包括第二地址信息和第二传输协议;
所述将所述第二信息与所述第一信息进行对比,包括以下一项或多项:
将所述第二地址信息与所述第一地址信息进行对比;
将所述第二传输协议与所述第一传输协议进行对比。
3.根据权利要求2所述的方法,其特征在于,所述在所述第二信息与所述第一信息不一致时,将所述第二信息保存在所述存储队列中,并继续执行所述第一连接,包括:
在所述第二地址信息与所述第一地址信息不一致时,将所述第二地址信息保存在所述存储队列中,并继续执行所述第一连接;
在所述第二地址信息与所述第一地址信息一致,且所述第二传输协议与所述第一传输协议不一致时,将所述第二传输协议保存在所述存储队列中,并继续执行所述第一连接。
4.根据权利要求2所述的方法,其特征在于,所述在所述第二信息与所述第一信息不一致时,将所述第二信息保存在所述存储队列中,并继续执行所述第一连接,还包括:
在所述第二地址信息与所述第一地址信息不一致,且所述第二传输协议与所述第一传输协议不一致时,将所述第二地址信息和所述第二传输协议保存在所述存储队列中,并继续执行所述第一连接。
5.根据权利要求1至4中任一项所述的方法,其特征在于,所述继续执行所述第一连接,包括:
在所述第一连接的认证过程中,确定所述存储队列中是否包括所述第一信息;
若所述存储队列中包括所述第一信息,则继续执行所述第一连接。
6.根据权利要求1至4中任一项所述的方法,其特征在于,在所述第一连接建立成功之后,所述方法还包括:
从所述存储队列中删除所述第一信息。
7.根据权利要求1至4中任一项所述的方法,其特征在于,在将所述第二信息保存到所述存储队列中之后,所述方法还包括:
在所述第二连接的认证过程中,确定所述存储队列中是否包括所述第二信息;
若所述存储队列中包括所述第二信息,则执行所述第二连接;所述第二连接是所述第一外接设备向所述电子设备发起的自动回连;在所述第一外接设备与所述电子设备之间的通信距离满足预设通信距离的情况下,所述第一外接设备自动回连所述电子设备。
8.根据权利要求1所述的方法,其特征在于,在所述电子设备与所述第一外接设备开始建立所述第一连接之前,所述方法还包括:
通过扫描发现所述第一外接设备;
判断所述第一外接设备是否处于可连接状态;
在所述第一外接设备处于可连接状态的情况下,响应于用户的第一操作,所述第一操作用于指示所述电子设备与所述第一外接设备建立所述第一连接。
9.根据权利要求1所述的方法,其特征在于,所述第一连接为蓝牙低功耗连接,所述第二连接为基本码率连接;或者,所述第一连接为基本码率连接,所述第二连接为蓝牙低功耗连接。
10.一种电子设备,其特征在于,包括处理器和存储器,所述处理器和所述存储器耦合,所述存储器用于存储计算机程序,所述处理器调用指令,使得所述电子设备执行权利要求1至9中任一项所述的方法。
11.一种可读存储介质,其特征在于,所述可读存储介质存储有计算机程序,处理器调用指令,使得电子设备执行权利要求1至9中任一项所述的方法。
12.一种芯片系统,其特征在于,所述芯片系统应用于包括存储器、显示屏和传感器的终端设备;芯片系统包括:一个或多个接口电路和一个或者多个处理器;接口电路和处理器通过线路互联;接口电路用于从存储器接收信号,并向处理器发送信号,信号包括存储器中存储的计算机代码或指令;所述处理器调用指令,使得电子设备执行如权利要求1至9中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311728936.1A CN117479344B (zh) | 2023-12-15 | 2023-12-15 | 一种蓝牙连接方法、电子设备及可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311728936.1A CN117479344B (zh) | 2023-12-15 | 2023-12-15 | 一种蓝牙连接方法、电子设备及可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117479344A true CN117479344A (zh) | 2024-01-30 |
CN117479344B CN117479344B (zh) | 2024-05-24 |
Family
ID=89638140
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311728936.1A Active CN117479344B (zh) | 2023-12-15 | 2023-12-15 | 一种蓝牙连接方法、电子设备及可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117479344B (zh) |
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012231429A (ja) * | 2011-04-27 | 2012-11-22 | Canon Inc | 通信装置、通信装置の制御方法、およびプログラム |
CN105120524A (zh) * | 2015-07-21 | 2015-12-02 | 美国掌赢信息科技有限公司 | 一种建立通信连接的方法和电子设备 |
CN108551670A (zh) * | 2018-03-30 | 2018-09-18 | 深圳市冠旭电子股份有限公司 | 一种蓝牙连接方法、装置及智能终端 |
CN108966194A (zh) * | 2018-07-24 | 2018-12-07 | 重庆长安汽车股份有限公司 | 实现手机和车载终端蓝牙无感连接的系统及方法 |
CN110351802A (zh) * | 2019-08-27 | 2019-10-18 | 中国联合网络通信集团有限公司 | 发送寻呼请求的方法和装置 |
US20200100307A1 (en) * | 2018-09-20 | 2020-03-26 | Qualcomm Incorporated | Coordination between wireless audio devices |
CN112469015A (zh) * | 2019-09-06 | 2021-03-09 | 华为技术有限公司 | 蓝牙连接的方法和电子设备 |
US20210297525A1 (en) * | 2019-02-12 | 2021-09-23 | Samsung Electronics Co., Ltd. | Method for sharing bluetooth communication information and electronic device therefor |
CN113923641A (zh) * | 2021-12-07 | 2022-01-11 | 荣耀终端有限公司 | 一种连接方法及装置 |
CN114079893A (zh) * | 2020-08-13 | 2022-02-22 | 华为技术有限公司 | 蓝牙通信方法、终端设备及计算机可读存储介质 |
US20220304094A1 (en) * | 2019-08-14 | 2022-09-22 | Huawei Technologies Co., Ltd. | Bluetooth Reconnection Method and Related Apparatus |
CN115811719A (zh) * | 2021-09-15 | 2023-03-17 | 华为技术有限公司 | 蓝牙连接方法及电子设备 |
-
2023
- 2023-12-15 CN CN202311728936.1A patent/CN117479344B/zh active Active
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012231429A (ja) * | 2011-04-27 | 2012-11-22 | Canon Inc | 通信装置、通信装置の制御方法、およびプログラム |
CN105120524A (zh) * | 2015-07-21 | 2015-12-02 | 美国掌赢信息科技有限公司 | 一种建立通信连接的方法和电子设备 |
CN108551670A (zh) * | 2018-03-30 | 2018-09-18 | 深圳市冠旭电子股份有限公司 | 一种蓝牙连接方法、装置及智能终端 |
CN108966194A (zh) * | 2018-07-24 | 2018-12-07 | 重庆长安汽车股份有限公司 | 实现手机和车载终端蓝牙无感连接的系统及方法 |
US20200100307A1 (en) * | 2018-09-20 | 2020-03-26 | Qualcomm Incorporated | Coordination between wireless audio devices |
US20210297525A1 (en) * | 2019-02-12 | 2021-09-23 | Samsung Electronics Co., Ltd. | Method for sharing bluetooth communication information and electronic device therefor |
US20220304094A1 (en) * | 2019-08-14 | 2022-09-22 | Huawei Technologies Co., Ltd. | Bluetooth Reconnection Method and Related Apparatus |
CN110351802A (zh) * | 2019-08-27 | 2019-10-18 | 中国联合网络通信集团有限公司 | 发送寻呼请求的方法和装置 |
CN112469015A (zh) * | 2019-09-06 | 2021-03-09 | 华为技术有限公司 | 蓝牙连接的方法和电子设备 |
CN114079893A (zh) * | 2020-08-13 | 2022-02-22 | 华为技术有限公司 | 蓝牙通信方法、终端设备及计算机可读存储介质 |
CN115811719A (zh) * | 2021-09-15 | 2023-03-17 | 华为技术有限公司 | 蓝牙连接方法及电子设备 |
CN113923641A (zh) * | 2021-12-07 | 2022-01-11 | 荣耀终端有限公司 | 一种连接方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN117479344B (zh) | 2024-05-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3958533B1 (en) | Method for accessing wireless local area network and terminal | |
WO2020211714A1 (zh) | 蓝牙扫描方法和电子设备 | |
US20230422154A1 (en) | Method for using cellular communication function, and related apparatus and system | |
CN114205805B (zh) | 一种迁移配置文件的方法及装置 | |
EP4106366A1 (en) | Bluetooth device identifier display method and electronic device | |
WO2021017894A1 (zh) | 一种使用远程sim模块的方法及电子设备 | |
CN115297405A (zh) | 一种音频输出方法及终端设备 | |
EP3944600A1 (en) | Display method and device | |
EP4243556A1 (en) | Method for monitoring link and terminal device | |
US20190373541A1 (en) | Electronic device supporting multiple wireless communication protocols and method therefor | |
CN113923611A (zh) | 一种呼叫转移系统及相关装置 | |
JP7569829B2 (ja) | 車両におけるオペレーティングシステム投影のための自動無線接続 | |
US11597351B2 (en) | Electronic device for managing application relating to key of external electronic device, and operating method of electronic device | |
CN117479344B (zh) | 一种蓝牙连接方法、电子设备及可读存储介质 | |
EP4020936B1 (en) | Switchable communication transport for communication between primary devices and vehicle head units | |
CN114928899B (zh) | 物理链路的建立方法和电子设备 | |
WO2024139633A1 (zh) | 登录认证的系统、方法及电子设备 | |
CN116669027B (zh) | 认证方法、系统、终端设备及蓝牙设备 | |
CN114915996B (zh) | 通信异常处理方法及相关装置 | |
WO2022267656A1 (zh) | 组件访问方法和装置、计算机可读存储介质以及芯片 | |
WO2023088106A1 (zh) | 降低功耗的方法和电子设备 | |
CN115150832A (zh) | 一种网络接入方法及装置 | |
CN118102321A (zh) | 配置网络的方法、设备及系统 | |
CN117353945A (zh) | 互联协同的方法和电子设备 | |
CN114915996A (zh) | 通信异常处理方法及相关装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |