掌桥专利:专业的专利平台
掌桥专利
首页

一种蓝牙连接切换方法、蓝牙芯片以及蓝牙设备

文献发布时间:2023-06-19 10:00:31


一种蓝牙连接切换方法、蓝牙芯片以及蓝牙设备

技术领域

本申请涉及通信技术领域,尤其涉及一种蓝牙连接切换方法、蓝牙芯片以及蓝牙设备。

背景技术

蓝牙(Bluetooth)技术是一种支持不同设备之间进行短距离的无线数据传输的技术。现有的蓝牙耳机通常仅支持连接到一个终端设备,但是随着终端设备的形态多样化及其技术性能的差异化,用户一般拥有多个终端设备以适应不同的使用场景,包括手机、笔记本电脑、平板电脑等。目前,例如用户已经将蓝牙耳机连接到笔记本电脑并开始播放音乐,若此时用户的手机有电话拨入,则用户需要手动断开该蓝牙耳机与该笔记本电脑之间的蓝牙连接,然后将该蓝牙耳机连接至该手机,才能够通过该蓝牙耳机进行语音通话;若用户在完成语音通话后,想切换回使用该笔记本电脑来播放音乐,则需要再手动断开该蓝牙耳机与该手机之间的蓝牙连接,然后将该蓝牙耳机连接至该笔记本电脑。这种方式不但会为用户带来操作上的不便,而且用户需要花费较长的时间来完成蓝牙耳机的连接和切换,严重影响了用户的体验感。

发明内容

有鉴于此,本申请实施例提供了一种蓝牙连接切换方法、蓝牙芯片以及蓝牙设备,以使蓝牙设备与多个终端设备之间的连接和切换更加简洁高效,从而降低用户操作的复杂性,提升用户的体验感。

第一方面,本申请实施例提供一种蓝牙连接切换方法,应用于蓝牙设备,包括:

所述蓝牙设备与第一终端设备、第二终端设备建立蓝牙连接;

所述蓝牙设备接收所述第一终端设备的内容播放请求,并与所述第一终端设备进行数据传输;

所述蓝牙设备接收所述第二终端设备的内容播放请求,并向所述第一终端设备发送暂停数据传输的通知信息;

所述蓝牙设备暂停与所述第一终端设备进行数据传输,并保持与所述第一终端设备之间的蓝牙连接;以及

所述蓝牙设备与所述第二终端设备进行数据传输。

通过使蓝牙设备与各个可使用的终端设备均建立蓝牙连接,并始终保持与各个可使用的终端设备之间的蓝牙连接,可以使得用户在切换所使用的终端设备时,仅需启动待使用的终端设备的播放内容,便可以使蓝牙设备自动暂停与当前使用的终端设备进行数据传输,并切换为与该待使用的终端设备进行数据传输,降低了用户操作的复杂性,缩短了用户在连接和切换使用不同终端设备的过程中所需的等待时间,提升了用户的体验感。

可选地,所述第一终端设备或所述第二终端设备为所述蓝牙设备的历史连接设备;所述历史连接设备为与所述蓝牙设备建立过蓝牙连接的终端设备;

所述蓝牙设备的内存中存储有所述第一终端设备的标识信息或所述第二终端设备的标识信息。

可选地,所述蓝牙设备与第一终端设备、第二终端设备建立蓝牙连接,进一步包括:

所述蓝牙设备根据所述第一终端设备的标识信息或所述第二终端设备的标识信息自动与所述第一终端设备或所述第二终端设备建立蓝牙连接。

可选地,所述蓝牙设备根据所述第一终端设备的标识信息或所述第二终端设备的标识信息自动与所述第一终端设备或所述第二终端设备建立蓝牙连接,进一步包括:

所述蓝牙设备向所述第一终端设备或所述第二终端设备发送建立蓝牙物理链路的请求;所述蓝牙设备接收所述第一终端设备或所述第二终端设备发送的建立蓝牙物理链路的响应;

所述蓝牙设备向所述第一终端设备或所述第二终端设备发送建立信令通道和数据通道的请求;所述蓝牙设备接收所述第一终端设备或所述第二终端设备发送的建立信令通道和数据通道的响应;

所述蓝牙设备向所述第一终端设备或所述第二终端设备发送建立远程控制连接的请求;以及所述蓝牙设备接收所述第一终端设备或所述第二终端设备发送的建立远程控制连接的响应。

可选地,所述蓝牙设备根据所述第一终端设备的标识信息或所述第二终端设备的标识信息自动与所述第一终端设备或所述第二终端设备建立蓝牙连接,进一步包括:

所述蓝牙设备实施与所述第一终端设备或所述第二终端设备建立第一ACL链路或第二ACL链路的操作;

所述蓝牙设备实施与所述第一终端设备或所述第二终端设备建立第一AVDTP连接或第二AVDTP连接的操作;以及

所述蓝牙设备实施与所述第一终端设备或所述第二终端设备建立第一AVRCP连接或第二AVRCP连接的操作。

可选地,在所述蓝牙设备实施与所述第一终端设备或所述第二终端设备建立第一AVDTP连接或第二AVDTP连接的操作之后,所述第一AVDTP连接或所述第二AVDTP连接的状态由空闲状态切换为打开状态。

可选地,在所述蓝牙设备接收所述第一终端设备或所述第二终端设备的内容播放请求之后,所述第一AVDTP连接或所述第二AVDTP连接的状态由打开状态切换为音频流状态。

可选地,所述蓝牙设备暂停与所述第一终端设备进行数据传输,并保持与所述第一终端设备之间的蓝牙连接,进一步包括:

所述第一AVDTP连接的状态由音频流状态切换回打开状态。

可选地,所述蓝牙设备与所述第一终端设备、所述第二终端设备建立蓝牙连接的顺序根据所述第一终端设备、所述第二终端设备的优先级确定;

所述第一终端设备、所述第二终端设备的优先级根据以下方式中的至少一种确定:与所述蓝牙设备建立蓝牙连接的频率或时间先后,或者与所述蓝牙设备进行数据传输的频率或时间先后。

可选地,所述蓝牙设备的内存中存储的历史连接设备的标识信息的个数小于或等于所述蓝牙设备的最大连接数。

可选地,当与所述蓝牙设备已经建立蓝牙连接的历史连接设备的个数达到所述蓝牙设备的最大连接数,并有新的终端设备请求与所述蓝牙设备建立蓝牙连接时,删除优先级最低的历史连接设备的标识信息,将所述新的终端设备的标识信息存储在所述蓝牙设备的内存中。

可选地,在将所述新的终端设备的标识信息存储在所述蓝牙设备的内存中之后,重新排列所述蓝牙设备的内存中存储有相应标识信息的终端设备的优先级。

可选地,所述方法进一步包括:

所述蓝牙设备再次接收所述第一终端设备的内容播放请求,并向所述第二终端设备发送暂停数据传输的通知信息;

所述蓝牙设备暂停与所述第二终端设备进行数据传输,并保持与所述第二终端设备之间的蓝牙连接;以及

所述蓝牙设备再次与所述第一终端设备进行数据传输。

第二方面,本申请实施例提供一种蓝牙芯片,包括存储器和处理器,所述存储器与所述处理器耦合;

所述存储器,用于存储计算机程序指令;

所述处理器,用于调用所述存储器存储的计算机程序指令,使得所述蓝牙芯片执行如第一方面或第一方面的任一可选方式所述的蓝牙连接切换方法。

第三方面,本申请实施例提供一种蓝牙设备,包括外壳和置于所述外壳内部的如第二方面所述的蓝牙芯片。

可以理解的是,上述提供的第二方面所述的蓝牙芯片和第三方面所述的蓝牙设备均用于执行上文所提供的对应的方法,因此,其所能达到的有益效果可参考上文所提供的对应的方法中的有益效果,此处不再赘述。

附图说明

一个或多个实施例通过与之对应的附图中的图片进行示例性说明,这些示例性说明并不构成对实施例的限定。下面的描述涉及附图时,不同附图中的相同数字表示相同或相似的要素。除非有特别申明,附图中的图不构成比例限制。

图1为本申请实施例提供的一种蓝牙系统的组成示意图;

图2为本申请实施例提供的一种蓝牙连接切换方法的流程示意图;

图3为本申请实施例提供的一种蓝牙连接切换示意图;

图4为现有技术中蓝牙连接切换方法的流程示意图;

图5为本申请实施例提供的另一种蓝牙连接切换方法的流程示意图;

图6为本申请实施例提供的一种蓝牙框架的组成示意图;

图7为本申请实施例提供的一种蓝牙设备与第一终端设备自动建立蓝牙连接的流程示意图;

图8为本申请实施例提供的另一种蓝牙设备与第一终端设备自动建立蓝牙连接的流程示意图;

图9为本申请实施例提供的一种蓝牙连接切换方法中AVDTP连接的状态机的举例示意图;

图10为本申请实施例提供的又一种蓝牙连接切换方法的流程示意图;

图11为本申请实施例提供的一种历史连接设备的优先级示意图;

图12为本申请实施例提供的另一种历史连接设备的优先级示意图;

图13为本申请实施例提供的又一种历史连接设备的优先级示意图;

图14为本申请实施例提供的一种添加新的终端设备后的历史连接设备的优先级示意图;

图15为本申请实施例提供的一种蓝牙芯片的组成示意图。

具体实施方式

下面将结合附图对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请的一部分实施例,而不是全部的实施例。

本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。

除非在本申请的上下文中清楚地说明了指定的顺序,否则可与指定的顺序不同地执行在此描述的处理步骤。也就是说,可以以指定的顺序执行每个步骤、基本上同时执行每个步骤、以相反的顺序执行每个步骤或者以不同的顺序执行每个步骤。

另外,“第一”、“第二”等术语仅用于区别类似的对象,而不能理解为指示或暗示相对重要性,或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”等的特征可以明示或者隐含地包括一个或者更多个该特征。

本申请实施例提供一种蓝牙连接切换方法、蓝牙芯片以及蓝牙设备;其中,蓝牙设备的示例包括但不限于蓝牙耳机和蓝牙音箱。

蓝牙设备与终端设备建立蓝牙连接的过程一般包括:蓝牙设备开启蓝牙功能后,搜索在其可连接范围内的终端设备,并与搜索到的终端设备进行配对,而后与配对成功的终端设备建立蓝牙连接。

本申请实施例中,基于蓝牙回连技术,若蓝牙设备曾与某些终端设备建立过蓝牙连接,则该蓝牙设备的内存中会存储有该些终端设备的标识信息;具体的,标识信息可以为终端设备的地址信息,如MAC(Media Access Control,媒体访问控制)地址。为了便于描述,下面将该些与蓝牙设备建立过蓝牙连接的设备称为历史连接设备。

当该蓝牙设备再次开启蓝牙功能时,可以根据该些历史连接设备的标识信息,自动尝试与该些历史连接设备依次建立蓝牙连接,而无需再次进行搜索和配对,也无需手动建立蓝牙连接。若该蓝牙设备与某个历史连接设备建立蓝牙连接失败,例如某个历史连接设备不在该蓝牙设备的可连接范围内,则自动跳过该连接失败的历史连接设备,并自动尝试与另一个历史连接设备建立蓝牙连接,直到与所有被存储有标识信息的历史连接设备均尝试过建立蓝牙连接。

当该蓝牙设备的内存中未存储有任何终端设备的标识信息时,例如,该蓝牙设备为首次使用,则该蓝牙设备的蓝牙功能开启后,该蓝牙设备需等待有终端设备向其发送蓝牙连接请求,并存储与其成功建立蓝牙连接的终端设备的标识信息。由此,当该蓝牙设备再次开启蓝牙功能时,可自动与内存中存储有相应标识信息的终端设备依次尝试建立蓝牙连接。

本申请实施例中,可以有两个或两个以上历史连接设备在该蓝牙设备的可连接范围内,该蓝牙设备可以根据相应的标识信息自动与该两个或两个以上历史连接设备建立蓝牙连接。

为便于清楚地描述本申请实施例提供的蓝牙连接切换方法,下面以有两个历史连接设备在该蓝牙设备的可连接范围内为例进行说明。

如图1所示,为本申请实施例提供的一种蓝牙系统的组成示意图。蓝牙系统10包括:蓝牙设备101,第一终端设备102和第二终端设备103。当第一终端设备102和第二终端设备103为蓝牙设备101的历史连接设备,并且第一终端设备102和第二终端设备103均在蓝牙设备101的可连接范围内时,由于蓝牙设备101的内存中存储有第一终端设备102和第二终端设备103的标识信息,所以蓝牙设备101可以分别根据第一终端设备102和第二终端设备103的标识信息与第一终端设备102和第二终端设备103自动建立蓝牙连接。

示例性的,蓝牙设备101可以为TWS(True Wireless Stereo,真无线立体声)耳机,第一终端设备102或第二终端设备103可以为笔记本电脑,所以蓝牙设备101可以作为第一终端设备102或第二终端设备103的音频数据输出设备,用于播放音乐;或者,蓝牙设备101可以为TWS耳机,第一终端设备102或第二终端设备103可以为智能手机,所以蓝牙设备101可以作为第一终端设备102或第二终端设备103的音频数据输入/输出设备,用于进行语音通话。

第一方面,本申请实施例提供一种蓝牙连接切换方法。如图2所示,为本申请实施例提供的一种蓝牙连接切换方法的流程示意图,该方法可应用于图1所示的蓝牙系统10中的蓝牙设备101,该方法具体包括以下步骤:

步骤S101:蓝牙设备101与第一终端设备102、第二终端设备103建立蓝牙连接。

若第一终端设备102和第二终端设备103为蓝牙设备101的历史连接设备,则蓝牙设备101可以根据第一终端设备102和第二终端设备103的标识信息,自动与第一终端设备102和第二终端设备103建立蓝牙连接;若第一终端设备102和第二终端设备103为首次与蓝牙设备101建立蓝牙连接,则可以通过搜索、配对、连接的方式与蓝牙设备101建立蓝牙连接,成功建立蓝牙连接后,第一终端设备102和第二终端设备103则可以成为蓝牙设备101的历史连接设备。

步骤S102:蓝牙设备101接收第一终端设备102的内容播放请求,并与第一终端设备102进行数据传输。

第一终端设备102开始通过蓝牙设备101进行内容播放。

步骤S103:蓝牙设备101接收第二终端设备103的内容播放请求,并向第一终端设备102发送暂停数据传输的通知信息。

当第一终端设备102正在通过蓝牙设备101进行内容播放时,第二终端设备103请求通过蓝牙设备101进行内容播放,则蓝牙设备101可以通知第一终端设备102暂停内容播放。

步骤S104:蓝牙设备101暂停与第一终端设备102进行数据传输,并保持与第一终端设备102之间的蓝牙连接。

尽管第一终端设备102暂停通过蓝牙设备101进行内容播放,但是仍然保持与蓝牙设备101之间的蓝牙连接。

步骤S105:蓝牙设备101与第二终端设备103进行数据传输。

由于蓝牙设备101已经与第二终端设备103建立了蓝牙连接,所以第二终端设备103可以直接通过蓝牙设备101进行内容播放。

示例性的,如图3所示,蓝牙设备101为TWS耳机,第一终端设备102和第二终端设备103均为智能手机,并均已与蓝牙设备101建立蓝牙连接。当第一终端设备102正在通过蓝牙设备101播放音乐时,用户启动了第二终端设备103的音乐播放业务,则蓝牙设备101通知第一终端设备102暂停播放音乐,并接收第二终端设备103传输的音频数据,使得第二终端设备103可以通过蓝牙设备101播放音乐,同时蓝牙设备101仍然保持与第一终端设备102之间的蓝牙连接。

图4为现有技术中蓝牙连接切换方法的流程示意图,图5为本申请实施例提供的另一种蓝牙连接切换方法的流程示意图,对比图4和图5可以看到:本申请实施中,当第一终端设备102和第二终端设备103为蓝牙设备101的历史连接设备时,蓝牙设备101能够自动与第一终端设备102和第二终端设备103建立蓝牙连接,并且在用户启动其中一个待使用的终端设备的业务功能后,蓝牙设备接收到该终端设备所发送的内容播放请求,即可自动开始与该终端设备进行数据传输,即用户无需如图4所示先断开蓝牙设备与当前使用的终端设备之间的蓝牙连接,再手动建立蓝牙设备与该待使用的终端设备之间的蓝牙连接,才能启动该待使用的终端设备的业务功能并进行数据传输,从而减少用户在建立蓝牙连接和切换终端设备过程中的等待时间,降低用户操作的复杂性,提高用户的体验感,并且也不会占用过多的信道资源。

本申请实施例中,终端设备的业务功能可以为音频业务,即可以为能够提供音频功能(如音频播放、音频录制、语音通话等)的服务(service)或应用(application);具体的,音频业务可以根据所能提供的服务类型划分为:语音(voice)、媒体(media)音频、背景声等业务;或者,音频业务可以根据应用的不同划分为:音乐、游戏、录音、视频、语音通话、语音助手、导航提示音、消息提示音等业务。

音频业务涉及音频数据的传输,具体的,音频数据可以包括:与音频内容对应的音频数据、用于控制音频数据播放的内容控制(contentcontrol)等;以将音频业务划分为语音、媒体音频、背景声为例,对应地,与音频内容对应的音频数据可以分为:语音数据、媒体音频数据、背景声数据;其中,语音数据可以包括:语音通话过程中的声音等;媒体音频数据可以包括:音乐、视频、游戏等;背景声数据可以包括:消息提示音等。内容控制可以包括:音量控制(volumecontrol)、通话控制(callcontrol)、媒体控制(mediacontrol)等;其中,音量控制可以包括:调高音量、降低音量等控制指令;通话控制可以包括:语音拨号、接听来电、保持通话、挂断电话、拒接来电、回拨来电等控制指令;媒体控制可以包括:播放、暂停、跳转至上一首、跳转至下一首等控制指令。

蓝牙设备101与第一终端设备102、第二终端设备103之间需要遵循一定的蓝牙框架才能够通过蓝牙技术实现蓝牙通信。如图6所示,为本申请实施例提供的一种蓝牙框架的组成示意图;蓝牙框架可以包括:应用(application)层和蓝牙协议栈;其中,蓝牙协议栈可以包括:主机(host)、主机控制器接口(Host Controller Interface,HCI)以及控制器(controller)。

具体的,应用层可以包括电话应用、媒体播放器应用(如音频播放器、视频播放器)等。

主机定义了蓝牙框架中的多个应用程序的协议(profile)和核心协议(protocol)。每个协议定义了各自相应的消息格式和应用规则,例如,高级音频分发协议(Advanced Audio Distribution Profile,A2DP)、免提协议(Hans Free Profile,HFP)、音视频遥控协议(Audio/Video Remote Control Profile,AVRCP)、音视频分发传输协议(Audio/Video Distribution Transport Protocol,AVDTP)、音视频控制传输协议(Audio/Video Control Transport Protocol,AVCTP)。

控制器定义了底层硬件部分,包括链路管理器(Link Manager,LM)、无线射频(Radio Frequency,RF)和基带(Baseband,BB)等;其中,链路管理器负责管理蓝牙设备之间的通信,实现链路的建立、配置、拆除、验证等操作,如建立异步面向连接(AsynchronousConnection-Oriented Link,ACL)链路、同步面向连接(Synchronous Connection-Oriented,SCO)链路,以及使蓝牙设备进入节能状态的工作模式等。无线射频主要定义了蓝牙收发器正常工作所需满足的条件,可以通过2.4 GHz的工业科学医学(IndustrialScientific Medical,ISM)频段的微波实现数据位流的过滤和传输。基带负责跳频以及蓝牙数据和信息帧的传输,特点是短距离、低功耗。

HCI位于主机和控制器之间,为主机提供了进入控制器中的链路管理器的统一接口和进入基带的统一方式,在主机的核心协议层与控制器之间会存在若干传输层,该些传输层是透明的,用于完成数据传输的任务。

如图7所示,为本申请实施例提供的一种蓝牙设备与第一终端设备自动建立蓝牙连接的流程示意图,其中,第一终端设备102为蓝牙设备101的历史连接设备;本实施例具体包括以下步骤:

步骤S201:蓝牙设备101向第一终端设备102发送建立蓝牙物理链路的请求。

步骤S202:第一终端设备102向蓝牙设备101发送建立蓝牙物理链路的响应。

步骤S203:蓝牙设备101向第一终端设备102发送建立信令通道和数据通道的请求。

步骤S204:第一终端设备102向蓝牙设备101发送建立信令通道和数据通道的响应。

步骤S205:蓝牙设备101向第一终端设备102发送建立远程控制连接的请求。

步骤S206:第一终端设备102向蓝牙设备101发送建立远程控制连接的响应。

需要说明的是,当第二终端设备103为蓝牙设备101的历史连接设备时,蓝牙设备101也可以通过图7所示的方法与第二终端设备103建立蓝牙连接。

进一步地,蓝牙设备101、第一终端设备102和第二终端设备103可以均支持A2DP协议。

A2DP是一种音频传输协议,可以通过传输层将音频流从音频信源(Source,SRC)分发至音频信宿(Sink,SNK),进行点对点的音频数据传输。

如图8所示,为本申请实施例提供的另一种蓝牙设备与第一终端设备自动建立蓝牙连接的流程示意图,其中,第一终端设备102为蓝牙设备101的历史连接设备,并且蓝牙设备101和第一终端设备102均支持A2DP协议。蓝牙设备101与第一终端设备102建立蓝牙连接需要依次执行如下操作:建立第一ACL链路(ACL connection)、建立第一AVDTP连接(AVDTPconnection)、建立第一AVRCP连接;本实施例具体包括以下步骤:

步骤S301:蓝牙设备101向第一终端设备102发送创建ACL连接的请求。

步骤S302:第一终端设备102向蓝牙设备101发送ACL连接完成的响应。

上述步骤S301~步骤S302可以理解为蓝牙设备101实施与第一终端设备102建立第一ACL链路(ACL Link)的操作,即建立蓝牙物理链路。由于A2DP协议的音频数据需要在ACL链路上进行传输,所以需要首先在蓝牙设备101与第一终端设备102之间建立第一ACL链路。

步骤S303:蓝牙设备101向第一终端设备102发送AVDTP信令连接(AVDTPsignaling connection)的请求。

步骤S304:蓝牙设备101与第一终端设备102进行AVDTP指令交互(AVDTP commandinteraction)。

步骤S305:蓝牙设备101向第一终端设备102发送AVDTP数据流连接(AVDTP datastream connection)的请求。

步骤S306:蓝牙设备101向第一终端设备102发送第一AVDTP连接的状态信息:打开状态。

上述步骤S303~步骤S306可以理解为蓝牙设备101实施与第一终端设备102建立第一AVDTP连接的操作,即建立信令通道和数据通道。

步骤S307:蓝牙设备101向第一终端设备102发送AVRCP能力获取(AVRCPgetcapabilities)的请求。

AVRCP能力获取可以包括:支持的事件(如播放状态、播放进度、播放器等)、生产厂商等。

步骤S308:第一终端设备102向蓝牙设备101发送AV/C稳定响应(AV/Cstableresponse)。

步骤S309:蓝牙设备101向第一终端设备102发送播放状态改变的AVRCP注册通知(AVRCP registernotification)。

注册成功后,若第一终端设备102的播放状态发生改变,会自动通知到蓝牙设备101,从而做出正确的处理。

步骤S310:第一终端设备102向蓝牙设备101发送AV/C临时响应(AV/Cinterimresponse)。

上述步骤S307~步骤S310可以理解为蓝牙设备101实施与第一终端设备102建立第一AVRCP连接的操作,即建立远程控制连接。蓝牙设备101与第一终端设备102建立第一AVRCP连接后,蓝牙设备101可以实现对第一终端设备102的播放状态进行控制,例如,控制第一终端设备102开始播放音乐或暂停播放音乐,以及控制音量的调高或降低等。

完成上述步骤S301~步骤S310后,即建立蓝牙设备101与第一终端设备102之间的蓝牙连接后,若用户启动第一终端设备102的音频业务,则可以开始进行蓝牙设备101与第一终端设备102之间的音频数据传输。

相应地,蓝牙设备101自动与第二终端设备103建立蓝牙连接需要依次执行如下操作:建立第二ACL链路、建立第二AVDTP连接、建立第二AVRCP连接;具体的操作步骤可以与图8所示的步骤S301~步骤S310相同,此处不再赘述。

图9为本申请实施例提供的一种蓝牙连接切换方法中AVDTP连接的状态机的举例示意图。请参照图9,AVDTP连接的六种状态机分别为:空闲(idle)、配置(configured)、打开(open)、音频流(streaming)、关闭(close)以及报错(aborting)。例如,蓝牙设备101实施与第一终端设备102建立第一AVDTP连接的操作后,第一AVDTP连接的状态可以由空闲状态切换为打开状态;蓝牙设备101实施与第二终端设备103建立第二AVDTP连接的操作后,第二AVDTP连接的状态可以由空闲状态切换为打开状态。

另外,蓝牙设备与多个历史连接设备建立蓝牙连接的顺序可以根据历史连接设备的优先级确定。示例性的,当第一终端设备102的优先级高于第二终端设备103时,蓝牙设备101先与第一终端设备102建立蓝牙连接,而后与第二终端设备103建立蓝牙连接。

如图10所示,为本申请实施例提供的又一种蓝牙连接切换方法的流程示意图。其中,第一终端设备102和第二终端设备103均为蓝牙设备101的历史连接设备,并且第一终端设备102的优先级高于第二终端设备103;本实施例具体包括以下步骤:

步骤S400:开启蓝牙设备101的蓝牙功能。

示例性的,蓝牙设备101可以为TWS耳机,用户打开TWS耳机的充电盒,即可开启该TWS耳机的蓝牙功能,当蓝牙设备101的蓝牙功能被开启时,可以根据其内存中存储的各个历史连接设备的标识信息,自动与在其可连接范围内的历史连接设备建立蓝牙连接。

步骤S401:蓝牙设备101向第一终端设备102发送创建ACL连接的请求。

步骤S402:第一终端设备102向蓝牙设备101发送ACL连接完成的响应。

上述步骤S401~步骤S402可以理解为蓝牙设备101实施与第一终端设备102建立第一ACL链路的操作。

步骤S403:蓝牙设备101向第一终端设备102发送AVDTP信令连接的请求。

步骤S404:蓝牙设备101与第一终端设备102进行AVDTP指令交互。

步骤S405:蓝牙设备101向第一终端设备102发送AVDTP数据流连接的请求。

步骤S406:蓝牙设备101向第一终端设备102发送第一AVDTP连接的状态信息:打开状态。

上述步骤S403~步骤S406可以理解为蓝牙设备101实施与第一终端设备102建立第一AVDTP连接的操作;建立第一AVDTP连接后,第一AVDTP连接的状态由空闲状态切换为打开状态。

步骤S407:蓝牙设备101向第一终端设备102发送AVRCP能力获取的请求。

步骤S408:第一终端设备102向蓝牙设备101发送AV/C稳定响应。

步骤S409:蓝牙设备101向第一终端设备102发送播放状态改变的AVRCP注册通知。

步骤S410:第一终端设备102向蓝牙设备101发送AV/C临时响应。

上述步骤S407~步骤S410可以理解为蓝牙设备101实施与第一终端设备102建立第一AVRCP连接的操作。

上述步骤S401~步骤S410可以理解为蓝牙设备101自动与第一终端设备102建立蓝牙连接的过程。

步骤S411:蓝牙设备101向第二终端设备103发送创建ACL连接的请求。

步骤S412:第二终端设备103向蓝牙设备101发送ACL连接完成的响应。

上述步骤S411~步骤S412可以理解为蓝牙设备101实施与第二终端设备103建立第二ACL链路的操作。

步骤S413:蓝牙设备101向第二终端设备103发送AVDTP信令连接的请求。

步骤S414:蓝牙设备101与第二终端设备103进行AVDTP指令交互。

步骤S415:蓝牙设备101向第二终端设备103发送AVDTP数据流连接的请求。

步骤S416:蓝牙设备101向第二终端设备103发送第二AVDTP连接的状态信息:打开状态。

上述步骤S413~步骤S416可以理解为蓝牙设备101实施与第二终端设备103建立第二AVDTP连接的操作;建立第二AVDTP连接后,第二AVDTP连接的状态由空闲状态切换为打开状态。

步骤S417:蓝牙设备101向第二终端设备103发送AVRCP能力获取的请求。

步骤S418:第二终端设备103向蓝牙设备101发送AV/C稳定响应。

步骤S419:蓝牙设备101向第二终端设备103发送播放状态改变的AVRCP注册通知。

步骤S420:第二终端设备103向蓝牙设备101发送AV/C临时响应。

上述步骤S417~步骤S420可以理解为蓝牙设备101实施与第二终端设备103建立第二AVRCP连接的操作。

上述步骤S411~步骤S420可以理解为蓝牙设备101自动与第二终端设备103建立蓝牙连接的过程。

步骤S421:第一终端设备102启动音频业务。

具体的,第一终端设备102启动音频业务可以为播放音乐、接听电话、播放导航提示音等。为了便于描述,下面以播放音乐为例进行说明。

步骤S422:第一终端设备102向蓝牙设备101发送激活(start)第一AVDTP连接的状态信息。

步骤S423:蓝牙设备101向第一终端设备102发送确认(ACK)激活的响应。

上述步骤S422~步骤S423可以理解为激活第一AVDTP连接的状态,并使得第一AVDTP连接的状态由打开状态切换为音频流状态,能够用于音频数据的传输。

步骤S424:第一终端设备102通过AV/C消息向蓝牙设备101发送改变播放状态为“播放”(AV/C changed:playing)的指令。

步骤S425:蓝牙设备101向第一终端设备102发送播放状态改变的AVRCP注册通知。

步骤S426:第一终端设备102向蓝牙设备101发送AV/C临时响应。

上述步骤S424~步骤S426可以理解为第一终端设备102向蓝牙设备发送音乐播放请求,并使得第一终端设备102与蓝牙设备101之间的第一AVRCP连接的状态改变为播放。

步骤S427:第一终端设备102将音频数据发送给蓝牙设备101。

上述步骤S427可以理解为蓝牙设备101接收第一终端设备102传输的音频数据,进行音乐播放。

步骤S428:第二终端设备103启动音频业务。

具体的,第二终端设备103启动音频业务可以为播放音乐、接听电话、播放导航提示音等。为了便于描述,下面以播放音乐进行示例性说明。

步骤S429:第二终端设备103向蓝牙设备101发送激活第二AVDTP连接的状态信息。

步骤S430:蓝牙设备101向第二终端设备103发送确认激活的响应。

上述步骤S429~步骤S430可以理解为激活第二AVDTP连接的状态,并使得第二AVDTP连接的状态由打开状态切换为音频流状态,能够用于音频数据的传输。

步骤S431:第二终端设备103通过AV/C消息向蓝牙设备101发送改变播放状态为“播放”的指令。

步骤S432:蓝牙设备101向第二终端设备103发送播放状态改变的AVRCP注册通知。

步骤S433:第二终端设备103向蓝牙设备101发送AV/C临时响应。

上述步骤S431~步骤S433可以理解为,第二终端设备103向蓝牙设备发送音乐播放请求,并使得第二终端设备103与蓝牙设备101之间的第二AVRCP连接的状态改变为播放。

步骤S434:蓝牙设备101通过AVRCP消息将暂停播放的状态信息(AVRCP status:suspend)发送给第一终端设备102。

步骤S434可以理解为蓝牙设备101通知第一终端设备102暂停播放音乐。

步骤S435:第一终端设备102通过AV/C消息向蓝牙设备101发送播放状态改变为“暂停”(AV/C changed:pause)的指令。

步骤S436:蓝牙设备101向第一终端设备102发送播放状态改变的AVRCP注册通知。

步骤S437:第一终端设备102向蓝牙设备101发送AV/C临时响应。

上述步骤S435~步骤S437可以理解为第一终端设备102与蓝牙设备101之间的第一AVRCP连接的状态由播放改变为暂停,并且第一AVDTP连接的状态由音频流状态切换回打开状态。

步骤S438:第二终端设备103将音频数据发送给蓝牙设备101。

上述步骤S438可以理解为蓝牙设备101接收第二终端设备103传输的音频数据,进行音乐播放。

需要说明的是,由于本实施例中第一终端设备102和第二终端设备103的音频业务均为播放音乐,所以在步骤S427和步骤S438中,第一终端设备102和第二终端设备103作为音频信源端,用于发送音频数据,蓝牙设备101作为音频信宿端,用于接收音频数据;但是,当音频业务为录音或语音通话等业务时,蓝牙设备101可以作为音频信源端,用于发送音频数据,而第一终端设备102和第二终端设备103可以作为音频信宿端,用于接收音频数据。

另外,若根据用户的指令,蓝牙设备101需切换回与第一终端设备102进行音频数据传输,则可以采用与图10所示的蓝牙连接切换方法基本相同的方式实现。

本申请实施例提供的蓝牙连接切换方法通过使蓝牙设备自动与多个历史连接设备进行连接,并根据用户的需求自动切换至与目标设备进行数据传输,不但可以减少用户手动建立蓝牙连接的过程,而且能够简化用户在切换终端设备时所需的操作,从而缩短用户在整个过程中的等待时间,提升用户的体验感。

需要说明的是,本申请实施例提供的蓝牙连接切换方法还可用于实现蓝牙设备与三个或三个以上终端设备进行连接和切换。

另外,本申请实施例中,若用户启动了任一已经与该蓝牙设备建立蓝牙连接的历史连接设备的业务功能,则该蓝牙设备即可开始与该历史连接设备进行数据传输。因此,蓝牙设备与历史连接设备自动建立蓝牙连接的顺序会影响用户在使用蓝牙设备进行通信之前的等待时间。

作为一种可能的实施方式,蓝牙设备自动与历史连接设备建立蓝牙连接的顺序可以根据历史连接设备的优先级确定;具体的,历史连接设备的优先级可以根据以下方式中的至少一种确定:与蓝牙设备建立蓝牙连接的频率或时间先后,或者与蓝牙设备进行数据传输的频率或时间先后。

当蓝牙设备初次开启蓝牙功能,即不存在与该蓝牙设备建立过蓝牙连接的历史连接设备时,该蓝牙设备的内存中未存储有任何终端设备的标识信息,此时可以等待有终端设备向该蓝牙设备发起蓝牙连接请求,在与该蓝牙设备成功建立蓝牙连接后,可以根据上述方式中的至少一种确定其优先级。

如图11所示,为本申请实施例提供的一种历史连接设备的优先级示意图;本实施例中,终端设备的优先级根据终端设备与蓝牙设备建立蓝牙连接的时间先后决定,最后与蓝牙设备建立蓝牙连接的终端设备的优先级最高,最先与蓝牙设备建立蓝牙连接的终端设备的优先级最低。请参照图11,为蓝牙设备初次开启蓝牙功能,终端设备1最先与该蓝牙设备建立蓝牙连接,并且终端设备1与该蓝牙设备之间的AVDTP连接的状态为打开状态。之后,终端设备2、终端设备3、终端设备4依次先后与该蓝牙设备建立蓝牙连接,并且与该蓝牙设备之间的AVDTP连接的状态均为打开状态;此时,最后与该蓝牙设备建立蓝牙连接的终端设备4的优先级最高,终端设备3、终端设备2、终端设备1的优先级依次下降。

由于上述四个终端设备已经与该蓝牙设备建立过蓝牙连接,所以均为该蓝牙设备的历史连接设备,该蓝牙设备的内存中可以存储有上述四个终端设备的标识信息;当该蓝牙设备再次开启蓝牙功能时,可以自动根据上述优先级顺序依次尝试与四个历史连接设备建立蓝牙连接。

如图12所示,为本申请实施例提供的另一种历史连接设备的优先级示意图;本实施例中,终端设备的优先级根据终端设备与蓝牙设备建立蓝牙连接的时间先后以及与蓝牙设备进行数据传输的时间先后共同决定。具体的,请参照图12,在上一实施例的基础上,终端设备2启动音频业务,并与该蓝牙设备进行音频数据传输,终端设备2与该蓝牙设备之间的AVDTP连接的状态由打开状态切换为音频流状态;此时,可以设置终端设备2为优先级最高的终端设备,当该蓝牙设备再次开启蓝牙功能时,最先尝试与终端设备2建立蓝牙连接。

如图13所示,为本申请实施例提供的又一种历史连接设备的优先级示意图。在上一实施例的基础上,终端设备2暂停与该蓝牙设备进行音频数据传输,而后终端设备1启动音频业务,并与该蓝牙设备进行音频数据传输,终端设备2与该蓝牙设备之间的AVDTP连接的状态由音频流状态切换为打开状态,终端设备1与该蓝牙设备之间的AVDTP连接的状态由打开状态切换为音频流状态;此时,终端设备1变为优先级最高的终端设备,当该蓝牙设备再次开启蓝牙功能时,最先尝试与终端设备1建立蓝牙连接。

若在上一实施例的基础上,有一个新的终端设备与该蓝牙设备成功建立蓝牙连接,则可以设置该新的终端设备为优先级最高的终端设备;或者,可以设置该新的终端设备的优先级仅次于正在与该蓝牙设备进行音频数据传输的终端设备1的优先级。

本申请实施例提供的优先级排列方式是将用户最新连接过的终端设备或最新使用过的终端设备设置为优先级最高的设备,有利于使蓝牙设备在尽可能短的时间内与目标设备建立蓝牙连接,缩短用户的等待时间,进一步提升用户的体验感。

需要说明的是,本申请实施例提供的优先级排列方式也适用于两个或两个以上的其他数量的终端设备。

另外,考虑到蓝牙设备可能存在最大连接数,一般情况下,蓝牙设备的最大连接数为7,即一个蓝牙设备最多可以与7个终端设备建立蓝牙连接,因而,可以设置蓝牙设备的内存中最多能够保存7个终端设备的标识信息。

当与蓝牙设备建立蓝牙连接的终端设备的个数已经达到最大连接数,并且又有新的终端设备向该蓝牙设备发送蓝牙连接请求时,可以先将该蓝牙设备的内存中优先级最低的终端设备的标识信息删除,而后将新的终端设备的标识信息添加至该蓝牙设备的内存中,并对当前被存储有相应标识信息的全部终端设备的优先级进行重新排列。

示例性的,如图14所示,为本申请实施例提供的一种添加新的终端设备后的历史连接设备的优先级示意图。请参照图14,该蓝牙设备已经与7个终端设备(终端设备1~终端设备7)建立蓝牙连接,并且从终端设备1到终端设备7,对应的优先级依次升高;该蓝牙设备收到终端设备A发送的蓝牙连接请求后,由于终端设备1的优先级最低,所以该蓝牙设备删除了内存中存储的终端设备1的标识信息,而后将终端设备A的标识信息添加至内存中,并且重新排列了终端设备A以及终端设备2~终端设备7的优先级。最终,终端设备A的优先级最高,终端设备7到终端设备2的优先级依次降低。当该蓝牙设备再次开启蓝牙功能时,可以自动根据上述优先级顺序依次尝试与七个历史连接设备建立蓝牙连接。

需要说明的是,还可以根据终端设备与蓝牙设备建立蓝牙连接的频率,或者与蓝牙设备进行数据传输的频率对终端设备的优先级进行排列,以使蓝牙设备在较短的时间内与常用的终端设备建立蓝牙连接,减少用户的等待时间,进一步提升用户的体验感;或者,也可以采用上述多种优先级排列方式的组合,例如,当与蓝牙设备建立蓝牙连接的终端设备个数未超过最大连接数时,可以根据终端设备与蓝牙设备建立蓝牙连接的时间先后以及与蓝牙设备进行数据传输的时间先后确定各个终端设备的优先级;而当与蓝牙设备建立蓝牙连接的终端设备个数超过最大连接数时,可以将与蓝牙设备建立蓝牙连接的频率最低或与蓝牙设备进行数据传输的频率最低的历史连接设备定义为优先级最低的终端设备。

第二方面,如图15所示,为本申请实施例提供的一种蓝牙芯片的组成示意图。蓝牙芯片20包括:存储器201和处理器202;其中,存储器201用于存储计算机程序指令,处理器202用于调用存储器201存储的计算机程序指令,使得所述蓝牙芯片20可以执行如上述第一方面或第一方面的任意一种可能的实施方式所提供的蓝牙连接切换方法。

具体的,存储器201可以是易失性存储器(Volatile Memory,VM),如随机存取存储器(Random Access Memory,RAM)等,或者非易失性存储器(Non-Volatile Memory,NVM),如硬盘(Hard Disk Drive,HDD)、固态硬盘(Solid State Drive,SSD)等,又或者是电路或者其他任意能够实现存储功能的装置。存储器201是可以存储或携带具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,并且不限于此。

处理器202可以是通用处理器(如微处理器)、数字信号处理器、专用集成电路、晶体管逻辑器件、现场可编程门阵列或者其他可编程逻辑器件,并且不限于此,可以实现或执行本申请实施例提供的各方法、步骤以及逻辑框图。结合本申请实施例所提供的各方法、步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。

本申请各实施例提供的方法可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当通过软件实现时,可以全部或部分地以计算机程序产品的形式实现,该计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行该计算机指令时,可以全部或部分地产生按照本申请实施例所述的流程或功能,该计算机可以是通用计算机、专用计算机、计算机网络、网络设备、用户设备或者其他可编程装置,该计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,该计算机指令可以从一个计算机、服务器、网站站点或数据中心通过有线(如光线、同轴电缆、数字用户线(Digital Subscriber Line,DSL)等)或者无线(如微波、毫米波、红外等)的方式向另一个计算机、服务器、网站站点或数据中心进行传输。该计算机可读存储介质可以是计算机可以存取的任何可用介质,或者是一个或多个可用介质集成的服务器、数据中心等数据存储设备。该可用介质可以是磁性介质(如硬盘、软盘、磁带等)、半导体介质(如固态硬盘等),或者光介质(如数字视频光盘(Digital Video Disk,DVD)等),并且不限于此。

第三方面,本申请实施例提供一种蓝牙设备,包括:外壳和置于外壳内部的如上述第二方面所提供的蓝牙芯片。

示例性的,该蓝牙设备可以为蓝牙耳机(如TWS耳机)或蓝牙音箱等。

应理解,本申请实施例中的具体实施方式仅是为了帮助本领域技术人员更好地理解本申请实施例,而非限制本申请实施例的范围,本领域技术人员可以在上述实施例的基础上进行各种改进和变形,而这些改进或者变形均落入本申请的保护范围。

相关技术
  • 一种蓝牙连接切换方法、蓝牙芯片以及蓝牙设备
  • 模式可切换的蓝牙设备、蓝牙连接系统和蓝牙连接方法
技术分类

06120112380885