CN111918258B - 一种实现蓝牙服务连接的方法、装置及设备 - Google Patents

一种实现蓝牙服务连接的方法、装置及设备 Download PDF

Info

Publication number
CN111918258B
CN111918258B CN202010743545.7A CN202010743545A CN111918258B CN 111918258 B CN111918258 B CN 111918258B CN 202010743545 A CN202010743545 A CN 202010743545A CN 111918258 B CN111918258 B CN 111918258B
Authority
CN
China
Prior art keywords
bluetooth
paired
devices
service connection
request
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.)
Active
Application number
CN202010743545.7A
Other languages
English (en)
Other versions
CN111918258A (zh
Inventor
田朋伟
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Neusoft Corp
Original Assignee
Neusoft Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Neusoft Corp filed Critical Neusoft Corp
Priority to CN202010743545.7A priority Critical patent/CN111918258B/zh
Publication of CN111918258A publication Critical patent/CN111918258A/zh
Application granted granted Critical
Publication of CN111918258B publication Critical patent/CN111918258B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/80Services using short range communication, e.g. near-field communication [NFC], radio-frequency identification [RFID] or low energy communication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W76/00Connection management
    • H04W76/10Connection setup
    • H04W76/11Allocation or use of connection identifiers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W76/00Connection management
    • H04W76/10Connection setup
    • H04W76/14Direct-mode setup

Abstract

本申请实施例公开了一种实现蓝牙服务连接的方法、装置及设备,包括:响应于蓝牙操作请求,获取当前已配对蓝牙设备的蓝牙服务连接状态,向处于已连接或连接中的已配对蓝牙设备发送蓝牙服务断开请求;如果蓝牙操作请求为蓝牙设备配对请求,向目标蓝牙设备发送配对请求;之后,按照第一顺序依次向各个已配对蓝牙设备发送蓝牙服务连接请求;如果蓝牙操作请求为蓝牙服务自动连接请求,按照第二顺序依次向各个已配对蓝牙设备发送蓝牙服务连接请求,直到与预设数量的已配对蓝牙设备建立蓝牙服务连接或者向全部已配对蓝牙设备发送蓝牙服务连接请求完成。由此,可以实现多个蓝牙服务的同时使用,并且便于对多个已配对蓝牙设备的蓝牙服务进行切换。

Description

一种实现蓝牙服务连接的方法、装置及设备
技术领域
本申请涉及通信技术领域,具体涉及一种实现蓝牙服务连接的方法、装置及设备。
背景技术
车载蓝牙设备可以与多个具有蓝牙功能的移动终端进行蓝牙配对连接,与车载蓝牙设备进行了蓝牙配对连接的移动终端可以称为已配对蓝牙设备。车载蓝牙设备还可以与一个已配对蓝牙设备的蓝牙服务进行连接。蓝牙服务例如可以为HFP(Hands-freeProfile,蓝牙控制电话)服务,以实现车载蓝牙设备对于移动终端的通话功能的控制。
目前,车载蓝牙设备在同一时间内,仅能与一个已配对蓝牙设备的蓝牙服务进行连接,而不能同时与多个已配对蓝牙设备的蓝牙服务进行连接,不能实现多个已配对蓝牙设备的蓝牙服务同时使用。
发明内容
有鉴于此,本申请实施例提供一种实现蓝牙服务连接的方法、装置及设备,可以实现同时对多个已配对蓝牙设备的蓝牙服务进行使用。
为解决上述问题,本申请实施例提供的技术方案如下:
一种实现蓝牙服务连接的方法,所述方法包括:
响应于蓝牙操作请求,获取当前已配对蓝牙设备的蓝牙服务连接状态,所述蓝牙操作请求包括蓝牙设备配对请求或者蓝牙服务自动连接请求,所述蓝牙设备配对请求携带目标蓝牙设备的标识;
将所述蓝牙服务连接状态为已连接或连接中的已配对蓝牙设备确定为第一已配对蓝牙设备,向所述第一已配对蓝牙设备发送蓝牙服务断开请求,以断开与所述第一已配对蓝牙设备的蓝牙服务连接;
如果所述蓝牙操作请求为蓝牙设备配对请求,向所述目标蓝牙设备发送配对请求,以建立与所述目标蓝牙设备的蓝牙配对;
在建立与所述目标蓝牙设备的蓝牙配对之后,按照第一顺序依次向各个已配对蓝牙设备发送蓝牙服务连接请求,直到与预设数量的已配对蓝牙设备建立蓝牙服务连接或者向全部已配对蓝牙设备发送蓝牙服务连接请求完成;
如果所述蓝牙操作请求为蓝牙服务自动连接请求,按照第二顺序依次向各个已配对蓝牙设备发送蓝牙服务连接请求,直到与预设数量的已配对蓝牙设备建立蓝牙服务连接或者向全部已配对蓝牙设备发送蓝牙服务连接请求完成。
在一种可能的实现方式中,所述在建立与所述目标蓝牙设备的蓝牙配对之后,按照第一顺序依次向各个已配对蓝牙设备发送蓝牙服务连接请求,直到与预设数量的已配对蓝牙设备建立蓝牙服务连接或者向全部已配对蓝牙设备发送蓝牙服务连接请求完成,包括:
在建立与所述目标蓝牙设备的蓝牙配对之后,如果所述目标蓝牙设备是首个已配对蓝牙设备,向所述目标蓝牙设备发送蓝牙服务连接请求,以建立与所述目标蓝牙设备的蓝牙服务连接。
在一种可能的实现方式中,所述在建立与所述目标蓝牙设备的蓝牙配对之后,按照第一顺序依次向各个已配对蓝牙设备发送蓝牙服务连接请求,直到与预设数量的已配对蓝牙设备建立蓝牙服务连接或者向全部已配对蓝牙设备发送蓝牙服务连接请求完成,包括:
在建立与所述目标蓝牙设备的蓝牙配对之后,如果所述目标蓝牙设备不是首个已配对蓝牙设备,判断第二已配对蓝牙设备的数量是否小于预设数量,所述第二已配对蓝牙设备为设置了优先级的已配对蓝牙设备;
如果第二已配对蓝牙设备的数量小于预设数量,按照所述目标蓝牙设备、所述第二已配对蓝牙设备以及其他已配对蓝牙设备的顺序,依次向各个已配对蓝牙设备发送蓝牙服务连接请求,直到与预设数量的已配对蓝牙设备建立蓝牙服务连接或者向全部已配对蓝牙设备发送蓝牙服务连接请求完成;其中,所述第二已配对蓝牙设备中按照优先级顺序排序,其他已配对蓝牙设备中按照蓝牙配对时间排序;
如果第二已配对蓝牙设备的数量不小于预设数量,按照所述第二已配对蓝牙设备以及其他已配对蓝牙设备的顺序,依次向各个已配对蓝牙设备发送蓝牙服务连接请求,直到与预设数量的已配对蓝牙设备建立蓝牙服务连接或者向全部已配对蓝牙设备发送蓝牙服务连接请求完成;其中,所述第二已配对蓝牙设备中按照优先级顺序排序,其他已配对蓝牙设备中按照蓝牙配对时间排序。
在一种可能的实现方式中,所述如果所述蓝牙请求为蓝牙服务自动连接请求,按照第二顺序依次向各个已配对蓝牙设备发送蓝牙服务连接请求,直到与预设数量的已配对蓝牙设备建立蓝牙服务连接或者向全部已配对蓝牙设备发送蓝牙服务连接请求完成,包括:
如果所述蓝牙请求为蓝牙服务自动连接请求,按照第二已配对蓝牙设备以及其他已配对蓝牙设备的顺序,依次向各个已配对蓝牙设备发送蓝牙服务连接请求,直到与预设数量的已配对蓝牙设备建立蓝牙服务连接或者向全部已配对蓝牙设备发送蓝牙服务连接请求完成;其中,所述第二已配对蓝牙设备为设置了优先级的已配对蓝牙设备;所述第二已配对蓝牙设备中按照优先级顺序排序,其他已配对蓝牙设备中按照蓝牙配对时间排序。
在一种可能的实现方式中,所述方法还包括:
如果所述目标蓝牙设备是首个已配对蓝牙设备,在向所述目标蓝牙设备发送蓝牙服务连接请求之后,如果建立与所述目标蓝牙设备的蓝牙服务连接,将所述目标蓝牙设备的优先级设置为优先级首位的已配对蓝牙设备。
在一种可能的实现方式中,所述方法还包括:
如果第二已配对蓝牙设备的数量小于预设数量,在按照所述目标蓝牙设备、所述第二已配对蓝牙设备以及其他已配对蓝牙设备的顺序,依次向各个已配对蓝牙设备发送蓝牙服务连接请求,直到与预设数量的已配对蓝牙设备建立蓝牙服务连接或者向全部已配对蓝牙设备发送蓝牙服务连接请求完成之后,将除了所述第二已配对蓝牙设备以外的建立了蓝牙服务连接的已配对蓝牙设备,在所述第二已配对蓝牙设备的优先级顺序之后依次设置优先级顺序。
在一种可能的实现方式中,所述方法还包括:
对各个已配对蓝牙设备的设备信息、蓝牙服务连接状态以及优先级中的一项或多项进行显示。
在一种可能的实现方式中,所述方法还包括:
响应于优先级变更操作,触发所述蓝牙服务自动连接请求。
在一种可能的实现方式中,所述方法还包括:
将优先级首位且建立了蓝牙服务连接的已配对蓝牙设备确定为主蓝牙设备;
当存在所述主蓝牙设备时,将优先级非首位且建立了蓝牙服务连接的已配对蓝牙设备确定为副蓝牙设备,和/或,将未设置优先级且建立了蓝牙服务连接的已配对蓝牙设备确定为临时副蓝牙设备;
当不存在所述主蓝牙设备时,将优先级在非首位中排序最高的且建立了蓝牙服务连接的已配对蓝牙设备确定为临时主设备,将其他建立了蓝牙服务连接的已配对蓝牙设备确定为临时副设备;
当不存在所述主蓝牙设备且建立了蓝牙服务连接的已配对蓝牙设备中不存在设置有优先级的已配对蓝牙设备时,将建立了蓝牙服务连接的已配对蓝牙设备中配对时间最早的确定为临时主设备,将其他建立了蓝牙服务连接的已配对蓝牙设备确定为临时副设备。
一种实现蓝牙服务连接的装置,所述装置包括:
获取单元,用于响应于蓝牙操作请求,获取当前已配对蓝牙设备的蓝牙服务连接状态,所述蓝牙操作请求包括蓝牙设备配对请求或者蓝牙服务自动连接请求,所述蓝牙设备配对请求携带目标蓝牙设备的标识;
断开单元,用于将所述蓝牙服务连接状态为已连接或连接中的已配对蓝牙设备确定为第一已配对蓝牙设备,向所述第一已配对蓝牙设备发送蓝牙服务断开请求,以断开与所述第一已配对蓝牙设备的蓝牙服务连接;
配对单元,用于如果所述蓝牙操作请求为蓝牙设备配对请求,向所述目标蓝牙设备发送配对请求,以建立与所述目标蓝牙设备的蓝牙配对;
第一连接单元,用于在建立与所述目标蓝牙设备的蓝牙配对之后,按照第一顺序依次向各个已配对蓝牙设备发送蓝牙服务连接请求,直到与预设数量的已配对蓝牙设备建立蓝牙服务连接或者向全部已配对蓝牙设备发送蓝牙服务连接请求完成;
第二连接单元,用于如果所述蓝牙操作请求为蓝牙服务自动连接请求,按照第二顺序依次向各个已配对蓝牙设备发送蓝牙服务连接请求,直到与预设数量的已配对蓝牙设备建立蓝牙服务连接或者向全部已配对蓝牙设备发送蓝牙服务连接请求完成。
一种实现蓝牙服务连接设备,包括:存储器,处理器,及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时,实现如上述的实现蓝牙服务连接的方法。
一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当所述指令在终端设备上运行时,使得所述终端设备执行如上述的实现蓝牙服务连接的方法。
由此可见,本申请实施例具有如下有益效果:
本申请实施例提供的实现蓝牙服务连接的方法中,响应于蓝牙操作请求,获取当前已配对蓝牙设备的蓝牙服务连接状态,向处于已连接或连接中的已配对蓝牙设备发送蓝牙服务断开请求;如果蓝牙操作请求为蓝牙设备配对请求,向目标蓝牙设备发送配对请求;之后,按照第一顺序依次向各个已配对蓝牙设备发送蓝牙服务连接请求,直到与预设数量的已配对蓝牙设备建立蓝牙服务连接或者向全部已配对蓝牙设备发送蓝牙服务连接请求完成;如果蓝牙操作请求为蓝牙服务自动连接请求,按照第二顺序依次向各个已配对蓝牙设备发送蓝牙服务连接请求,直到与预设数量的已配对蓝牙设备建立蓝牙服务连接或者向全部已配对蓝牙设备发送蓝牙服务连接请求完成。
先将处于已连接或者是连接中的已配对蓝牙设备的蓝牙服务断开。如果是蓝牙设备配对请求,先与目标蓝牙设备建立配对,之后按照第一顺序依次向已配对蓝牙设备发送蓝牙服务连接请求,以便与已配对蓝牙设备连接蓝牙服务,实现对于目标蓝牙设备的配对以及多个已配对蓝牙设备的蓝牙服务的连接控制。如果是蓝牙服务自动连接请求,按照第二顺序依次向已配对蓝牙设备发送蓝牙服务连接请求,实现对于多个已配对蓝牙设备的蓝牙服务的连接控制。由此可见,本申请实施例提供的实现蓝牙服务连接的方法可以按照一定的顺序与多个已配对蓝牙设备建立蓝牙服务的连接,高效地实现与已配对蓝牙设备的蓝牙服务的连接和断开,使得用户可以同时使用多个蓝牙服务,并且便于多个已配对蓝牙设备的蓝牙服务的切换。
附图说明
图1为本申请实施例提供的实现蓝牙服务连接的方法的示例性应用场景的框架示意图;
图2为本申请实施例提供的一种实现蓝牙服务连接的方法流程图;
图3本申请实施例提供的一种实现蓝牙服务连接的方法流程图;
图4本申请实施例提供的显示已配对蓝牙设备的相关信息的示意图;
图5为本申请实施例提供的一种实现蓝牙服务连接中的信息交互过程的示意图;
图6为本申请实施例提供的另一种实现蓝牙服务连接中的信息交互过程的示意图;
图7为本申请实施例提供的又一种实现蓝牙服务连接中的信息交互过程的示意图;
图8为本申请实施例提供的一种实现蓝牙服务连接装置的结构示意图。
具体实施方式
为使本申请的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本申请实施例作进一步详细的说明。
为了便于理解和解释本申请实施例提供的技术方案,下面将先对本申请的背景技术进行说明。
发明人在对传统的蓝牙服务连接的方法进行研究后发现,传统的蓝牙服务的连接方法仅能实现与已配对蓝牙设备中的一个已配对蓝牙设备进行蓝牙服务的连接,不能实现对已配对的蓝牙设备中的多个蓝牙设备进行蓝牙服务的连接。并且,在需要进行建立蓝牙服务连接的已配对蓝牙设备的切换时,需要用户手动进行对于已配对的蓝牙设备的切换。传统的蓝牙服务连接方法不能实现与多个已配对蓝牙设备的蓝牙服务进行连接以及快捷高效地进行多个蓝牙服务之间的切换。
基于此,本申请实施例提供了一种实现蓝牙服务连接的方法,该方法包括:
响应于蓝牙操作请求,获取当前已配对蓝牙设备的蓝牙服务连接状态,向处于已连接或连接中的已配对蓝牙设备发送蓝牙服务断开请求;如果蓝牙操作请求为蓝牙设备配对请求,向目标蓝牙设备发送配对请求;之后,按照第一顺序依次向各个已配对蓝牙设备发送蓝牙服务连接请求,直到与预设数量的已配对蓝牙设备建立蓝牙服务连接或者向全部已配对蓝牙设备发送蓝牙服务连接请求完成;如果蓝牙操作请求为蓝牙服务自动连接请求,按照第二顺序依次向各个已配对蓝牙设备发送蓝牙服务连接请求,直到与预设数量的已配对蓝牙设备建立蓝牙服务连接或者向全部已配对蓝牙设备发送蓝牙服务连接请求完成。
为了便于理解本申请实施例提供的实现蓝牙服务连接的方法,下面先结合图1对本申请实施例提供的实现蓝牙服务连接的方法的应用场景进行说明。其中,图1为本申请实施例提供的实现蓝牙服务连接的方法的示例性应用场景的框架示意图。其中,本申请实施例提供的实现蓝牙服务连接的方法可以应用于车载蓝牙设备101。虚线表示蓝牙服务的建立,实线表示配对关系的建立。
在实际应用中,当车载蓝牙设备101收到蓝牙操作请求时,响应于蓝牙操作请求,先获取当前已配对蓝牙设备的蓝牙服务连接状态。将蓝牙服务连接状态为已连接或连接中的已配对蓝牙设备确定为第一已配对蓝牙设备102。向第一已配对蓝牙设备102发送蓝牙服务断开请求,使得车载蓝牙设备101与第一已配对蓝牙设备102之间的蓝牙服务连接断开。如果蓝牙操作请求是蓝牙设备配对请求,车载蓝牙设备101向目标蓝牙设备103发送配对请求,以建立与目标蓝牙设备的蓝牙配对,在与目标蓝牙设备进行配对后,再按照第一顺序依次向各个已配对蓝牙设备发送蓝牙服务连接请求,以实现与多个已配对蓝牙设备建立蓝牙服务的连接。如果蓝牙请求为蓝牙服务自动连接请求,则按照第二顺序依次向各个已配对蓝牙设备,发送蓝牙服务连接请求,以实现与多个已配对蓝牙设备建立蓝牙服务的连接。
本领域技术人员可以理解,图1所示的框架示意图仅是本申请的实施方式可以在其中得以实现的一个示例。本申请实施方式的适用范围不受到该框架任何方面的限制。
需要注意的是,已配对蓝牙设备可以承载于终端,该终端可以是现有的、正在研发的或将来研发的、能够通过任何形式的有线和/或无线连接(例如,Wi-Fi、LAN、蜂窝、同轴电缆等)相互交互的任何用户设备,包括但不限于:现有的、正在研发的或将来研发的智能可穿戴设备、智能手机、非智能手机、平板电脑、膝上型个人计算机、桌面型个人计算机、小型计算机、中型计算机、大型计算机等。本申请的实施方式在此方面不受任何限制。还需要注意的是,本申请实施例中车载蓝牙设备101可以是现有的、正在研发的或将来研发的、能够与其他蓝牙设备建立蓝牙服务连接的设备的一个示例。本申请的实施方式在此方面不受任何限制。
为便于理解本申请实施例提供的技术方案,下面将结合附图对本申请实施例提供的实现蓝牙服务连接的方法进行说明。
参见图2,该图为本申请实施例提供的一种实现蓝牙服务连接的方法流程图。
本申请实施例提供的实现蓝牙服务连接的方法,包括S201-S205:
S201:响应于蓝牙操作请求,获取当前已配对蓝牙设备的蓝牙服务连接状态,蓝牙操作请求包括蓝牙设备配对请求或者蓝牙服务自动连接请求,蓝牙设备配对请求携带目标蓝牙设备的标识。
在使用蓝牙技术与蓝牙设备进行信息交互时,先需要利用蓝牙技术与蓝牙设备进行配对。在与蓝牙设备配对成功后,与已配对蓝牙设备中的蓝牙服务建立连接,实现对于蓝牙服务功能的使用。
蓝牙操作请求具体可以包括蓝牙设备配对请求或者蓝牙服务自动连接请求。其中,蓝牙设备配对请求是目标蓝牙设备需要进行配对的配对请求。蓝牙设备配对请求携带目标蓝牙设备的标识,以便根据目标蓝牙设备的标识与目标蓝牙设备配对。蓝牙服务自动连接请求是实现按照一定的顺序与已配对蓝牙设备的蓝牙服务自动连接的请求。
响应于蓝牙操作请求,获取当前已配对蓝牙设备的蓝牙服务连接状态。其中,蓝牙服务可以为HFP服务。已配对蓝牙设备的蓝牙服务连接状态可以包括蓝牙服务已连接或者是蓝牙服务连接中或者为蓝牙服务未连接。蓝牙服务已连接的状态为已配对蓝牙设备的蓝牙服务已经成功与车载蓝牙设备建立连接,车载蓝牙设备可以根据建立连接的蓝牙服务实现蓝牙服务对应的功能。蓝牙服务连接中的状态为已配对蓝牙设备的蓝牙服务与车载蓝牙设备正在建立连接。蓝牙服务未连接的状态为已配对蓝牙设备的蓝牙服务并未与车载蓝牙设备建立连接,车载蓝牙设备不能通过已配对蓝牙设备的蓝牙服务实现蓝牙服务的功能。
S202:将蓝牙服务连接状态为已连接或连接中的已配对蓝牙设备确定为第一已配对蓝牙设备,向第一已配对蓝牙设备发送蓝牙服务断开请求,以断开与第一已配对蓝牙设备的蓝牙服务连接。
处于已连接或者是连接中的蓝牙服务连接状态会影响对于其他蓝牙设备的配对或者是已配对蓝牙设备的蓝牙服务连接状态的调整。将蓝牙服务连接状态为已连接或连接中的已配对蓝牙设备确定为第一已配对蓝牙设备,向第一已配对蓝牙设备发送蓝牙服务断开请求。通过蓝牙服务断开请求使得第一已配对蓝牙设备的蓝牙服务断开,以便根据蓝牙操作请求进行后续操作。
需要说明的是,断开第一已配对蓝牙设备的蓝牙服务并不会影响第一已配对蓝牙设备的已配对状态,断开蓝牙服务的第一已配对蓝牙设备仍处于蓝牙配对状态。
S203:如果蓝牙操作请求为蓝牙设备配对请求,向目标蓝牙设备发送配对请求,以建立与目标蓝牙设备的蓝牙配对。
当蓝牙操作请求为蓝牙设备配对请求时,可以根据蓝牙配对请求中携带的目标蓝牙设备的标识,确定所要进行配对的目标蓝牙设备。
向目标蓝牙设备发送配对请求,以便通过配对请求建立与目标蓝牙设备的蓝牙配对。配对请求中具有与目标蓝牙设备建立蓝牙配对所需要的配对信息,例如,请求配对设备标识,配对密码等。
S204:在建立与目标蓝牙设备的蓝牙配对之后,按照第一顺序依次向各个已配对蓝牙设备发送蓝牙服务连接请求,直到与预设数量的已配对蓝牙设备建立蓝牙服务连接或者向全部已配对蓝牙设备发送蓝牙服务连接请求完成。
在与目标蓝牙设备建立配对,完成与目标蓝牙设备进行蓝牙配对的操作之后,可以基于全部的已配对蓝牙设备,与预设数量的已配对蓝牙设备建立蓝牙服务连接。
可以按照第一顺序依次向各个已配对蓝牙设备发送蓝牙服务连接请求。已配对蓝牙设备中包括第一已配对蓝牙设备、已配对的目标蓝牙设备以及之前未建立蓝牙服务连接的其他已配对蓝牙设备。
蓝牙服务连接请求是用于与各个已配对蓝牙设备建立蓝牙服务连接的,可以是针对于单个已配对蓝牙设备的。在向一个已配对蓝牙设备发送蓝牙服务连接请求,接收到该已配对蓝牙设备反馈的信息后,按照第一顺序,再向下一个已配对蓝牙设备发送蓝牙服务连接请求。蓝牙服务连接请求中可以具有与所要连接的蓝牙服务对应的蓝牙设备的信息,例如,所要进行蓝牙服务连接的已配对蓝牙设备的标识、所要建立的蓝牙服务的类型等。
通过按照第一顺序依次向各个已配对蓝牙设备发送蓝牙服务连接请求,直到建立蓝牙服务连接的已配对蓝牙设备的数量为预设数量,或者是向全部已配对蓝牙设备发送蓝牙服务连接请求后,完成蓝牙服务连接请求。
可以理解的是,建立蓝牙服务连接的已配对蓝牙设备的数量是一定的,即预设数量。当按照第一顺序向各个已配对蓝牙设备发送蓝牙服务连接请求时,接收到蓝牙服务连接请求的已配对蓝牙设备,根据蓝牙服务连接请求建立蓝牙服务的连接。当建立蓝牙服务连接的已配对蓝牙设备的数量达到预设数量时,不能再与其他已配对蓝牙设备建立蓝牙服务的连接,蓝牙服务连接请求完成。
但是,并非所有的已配对蓝牙设备均可以建立蓝牙服务的连接,或者已配对蓝牙设备的数量小于预设数量。若建立蓝牙服务连接的已配对蓝牙设备的数量不能达到预设数量,就继续按照第一顺序依次向已配对蓝牙设备发送蓝牙服务连接请求,直到向全部的已配对蓝牙设备发送蓝牙服务连接请求后,完成蓝牙服务连接。
另外,对于不同配对次序的目标蓝牙设备,对应的依次向各个已配对蓝牙设备发送蓝牙服务连接请求的第一顺序不同。本申请实施例还提供了两种按照第一顺序向各个已配对蓝牙设备发送蓝牙服务连接请求的实施方式,请参见下文具体实施方式。
S205:如果蓝牙操作请求为蓝牙服务自动连接请求,按照第二顺序依次向各个已配对蓝牙设备发送蓝牙服务连接请求,直到与预设数量的已配对蓝牙设备建立蓝牙服务连接或者向全部已配对蓝牙设备发送蓝牙服务连接请求完成。
在另外一种可能的情况中,蓝牙操作请求为蓝牙服务自动连接请求。通过蓝牙服务自动连接请求可以实现对于蓝牙服务的自动连接或者是对蓝牙服务的连接进行自动调整。
当蓝牙操作请求为蓝牙服务自动连接请求时,按照第二顺序依次向各个已配对蓝牙设备发送蓝牙服务连接请求。
需要说明的是,对于蓝牙服务自动连接请求,按照第二顺序发送的蓝牙服务连接请求是针对于需要进行蓝牙服务连接的全部已配对蓝牙设备的。服务连接请求中可以具有多个已配对蓝牙设备的标识,以及与多个已配对蓝牙设备建立蓝牙服务的顺序等。
按照第二顺序依次向各个已配对蓝牙设备发送蓝牙服务连接请求,直到与预设数量的已配对蓝牙设备建立蓝牙服务连接或者向全部已配对蓝牙设备发送蓝牙服务连接请求完成。
可以理解的是,建立蓝牙服务连接的已配对蓝牙设备的数量是一定的,也就是预设数量。当按照第二顺序向各个已配对蓝牙设备发送蓝牙服务连接请求,根据蓝牙服务连接请求建立蓝牙服务连接的已配对蓝牙设备的数量达到预设数量时,完成本次蓝牙服务自动连接。
若建立蓝牙服务连接的已配对蓝牙设备的数量不能达到预设数量,就按照第二顺序依次向已配对蓝牙设备发送蓝牙服务连接请求,直到向全部的已配对蓝牙设备发送蓝牙服务连接请求,本次蓝牙服务自动连接完成。
本申请实施例还提供了一种按照第二顺序依次向各个已配对蓝牙设备发送蓝牙服务连接请求的实施方式,请参见下文具体实施方式。
基于上述S201-S205的相关内容可知,本申请实施例提供的实现蓝牙服务连接的方法,通过响应于蓝牙操作请求,先获取当前已配对蓝牙设备的蓝牙服务连接状态,将第一已配对蓝牙设备的蓝牙服务断开,以便后续根据蓝牙设备配对请求进行配对以及蓝牙服务的连接或者是根据蓝牙服务自动连接请求进行蓝牙服务的自动连接。如此可以实现快速的连接和断开蓝牙服务,较为方便地对于多个蓝牙服务的断开以及连接进行控制,实现对于多个蓝牙服务的同时使用。
在一种可能的实现方式中,蓝牙操作请求为蓝牙设备配对请求,并且所要配对的目标蓝牙设备为首个已配对的蓝牙设备。
本申请实施例提供了一种目标蓝牙设备为首个已配对的蓝牙设备时,按照第一顺序向各个已配对蓝牙设备发送蓝牙服务连接请求(也就是S204)的实施方式,具体包括:
在建立与目标蓝牙设备的蓝牙配对之后,如果目标蓝牙设备是首个已配对蓝牙设备,向目标蓝牙设备发送蓝牙服务连接请求,以建立与目标蓝牙设备的蓝牙服务连接。
当配对的目标蓝牙设备为首个已配对蓝牙设备时,除目标蓝牙设备以外不具有其他已配对蓝牙设备。向目标蓝牙设备发送蓝牙服务连接请求,通过蓝牙服务连接请求建立与目标蓝牙设备的蓝牙服务连接。
作为示例,蓝牙设备1为目标蓝牙设备,需要进行配对。在通过蓝牙设备配对请求与蓝牙设备1建立蓝牙配对后,如果蓝牙设备1是首个已配对蓝牙设备,向蓝牙设备1发送蓝牙服务连接请求,使得能够与蓝牙设备1建立蓝牙服务。
进一步的,当建立蓝牙服务连接的已配对蓝牙设备的数量可能较多时,为了便于对各个已配对蓝牙设备进行管理,可以为建立蓝牙服务的已配对蓝牙设备设置优先级。
如果目标蓝牙设备是首个已配对蓝牙设备,在向目标蓝牙设备发送蓝牙服务连接请求之后,如果建立与目标蓝牙设备的蓝牙服务连接,将目标蓝牙设备的优先级设置为优先级首位的已配对蓝牙设备。
当目标蓝牙设备是首个已配对蓝牙设备,并且通过向目标蓝牙设备发送蓝牙服务连接请求,与目标蓝牙设备建立蓝牙服务连接后,可以将目标蓝牙设备设置为优先级首位的已配对蓝牙设备。
仍以上述为例,当通过蓝牙服务连接请求与蓝牙设备1建立蓝牙服务的连接后,可以将蓝牙设备1的优先级设置为第一优先级。
在本申请实施例中,若配对后的目标蓝牙设备是首个已配对蓝牙设备,向目标蓝牙设备发送蓝牙服务连接请求,如此可以实现与目标蓝牙设备的蓝牙服务建立连接。进一步的,还可以将目标蓝牙设备设置为优先级首位的已配对蓝牙设备,以便对目标蓝牙设备进行管理,并且优先使用目标蓝牙设备的蓝牙服务。
在另一种可能的实现方式中,蓝牙操作请求为蓝牙设备配对请求,并且所要配对的目标蓝牙设备并非是首个已配对的蓝牙设备,在目标蓝牙设备配对之间已经具有其他已配对蓝牙设备。
本申请实施例提供了一种目标蓝牙设备不是首个已配对的蓝牙设备时,按照第一顺序向各个已配对蓝牙设备发送蓝牙服务连接请求(也就是S204)的实施方式。参见图3,该图为本申请实施例提供的一种实现蓝牙服务连接的方法流程图,具体包括以下三个步骤:
S301:在建立与目标蓝牙设备的蓝牙配对之后,如果目标蓝牙设备不是首个已配对蓝牙设备,判断第二已配对蓝牙设备的数量是否小于预设数量,第二已配对蓝牙设备为设置了优先级的已配对蓝牙设备。
在与目标蓝牙设备建立蓝牙配对之后,可以判断目标蓝牙设备是否为首个已配对蓝牙设备。如果目标蓝牙设备不是首个已配对蓝牙设备,需要按照顺序向已配对蓝牙设备发送蓝牙服务连接请求。
可以理解的是,在具有设置了优先级的已配对蓝牙设备,也就是第二已配对蓝牙设备时,需要先与第二已配对蓝牙设备进行蓝牙服务的连接。而可以建立蓝牙服务连接的已配对蓝牙设备是有限的,可以将最多建立蓝牙服务连接的已配对蓝牙设备的数量设置为预设数量。为了确保优先进行第二已配对蓝牙设备的连接,先进行第二已配对蓝牙设备数量与预设数量的判断,判断第二已配对蓝牙设备的数量是否小于预设数量。
需要说明的是,本申请实施例不限定第二已配对蓝牙设备之前的蓝牙服务的连接状态。属于第二已配对蓝牙设备的已配对蓝牙设备也可以属于第一已配对蓝牙设备,也可以不属于第一已配对蓝牙设备。第二已配对蓝牙设备可以是蓝牙服务连接断开的已配对蓝牙设备,也可以为未曾建立蓝牙服务连接的已配对蓝牙设备。
S302:如果第二已配对蓝牙设备的数量小于预设数量,按照目标蓝牙设备、第二已配对蓝牙设备以及其他已配对蓝牙设备的顺序,依次向各个已配对蓝牙设备发送蓝牙服务连接请求,直到与预设数量的已配对蓝牙设备建立蓝牙服务连接或者向全部已配对蓝牙设备发送蓝牙服务连接请求完成;其中,第二已配对蓝牙设备中按照优先级顺序排序,其他已配对蓝牙设备中按照蓝牙配对时间排序。
当第二已配对蓝牙设备的数量小于预设数量,说明即使与全部的第二已配对蓝牙设备建立蓝牙服务的连接,还可以与其他已配对蓝牙设备建立蓝牙服务的连接。
其中,目标蓝牙设备是最新配对的,可能是用户需要使用的蓝牙设备。在可以与除第二已配对蓝牙设备以外的已配对蓝牙设备建立蓝牙服务连接的情况下,优先与目标蓝牙设备建立蓝牙服务的连接,再与第二已配对蓝牙设备建立连接,最后与其他已配对蓝牙设备建立连接。
对应的,第一顺序具体可以为目标蓝牙设备、第二已配对蓝牙设备和其他已配对蓝牙设备。
第二已配对蓝牙设备是按照各个第二已配对蓝牙设备的优先级顺序进行蓝牙服务连接请求发送的,可以按照优先级由高到低的顺序依次发送蓝牙服务连接请求。例如,在向目标蓝牙设备发送蓝牙服务连接请求并且确定是否连接之后。根据顺序,先向优先级最高的第二已配对蓝牙设备发送蓝牙服务连接请求,确定是否连接后,再向优先级较低的第二已配对蓝牙设备发送蓝牙服务连接请求。
其他已配对蓝牙设备的连接顺序可以根据蓝牙配对时间排序。具体的,考虑到配对时间最近的已配对设备可能是当前常用的蓝牙设备,可以按照配对时间由近到远的顺序进行连接。例如,将配对时间距离当前时间最近的已配对设备作为先进行蓝牙服务连接的已配对设备,并以此类推,将配对时间距离当前时间最远的已配对设备作为最后进行蓝牙服务连接的已配对设备。在另一种可能的实现方式中,配对时间最近的设备可能是临时使用的设备,可以按照配对时间由远到近的顺序进行连接,相对应的,可以将配对时间距离当前时间最远的已配对设备作为先进行蓝牙服务连接的已配对设备,并以此类推。
需要说明的是,向已配对蓝牙设备发送蓝牙服务连接请求后,会接收到是否连接成功的反馈信息。在一些情况下,并不能与已配对蓝牙设备的蓝牙服务建立连接,例如,已配对蓝牙设备的位置不在建立蓝牙服务的位置范围之内,或者已配对蓝牙设备的蓝牙服务不能建立连接等。
在确定了本次建立蓝牙服务连接的已配对蓝牙设备是否成功建立蓝牙服务之后,按照目标蓝牙设备、第二已配对蓝牙设备和其他已配对蓝牙设备的连接顺序,向下一个已配对蓝牙设备发送蓝牙服务连接请求。当已建立蓝牙服务的已配对蓝牙设备的数量满足预设数量时,不能再与其他的已配对蓝牙设备建立蓝牙服务的连接,停止向后续的已配对蓝牙设备发送蓝牙服务连接请求。如果已建立蓝牙服务的已配对蓝牙设备的数量小于预设数量时,按照顺序继续向已配对蓝牙设备发送蓝牙服务连接请求,直到向全部的已配对蓝牙设备发送蓝牙服务连接请求后停止。
作为一种示例,已配对蓝牙设备为蓝牙设备1、蓝牙设备2、蓝牙设备3和蓝牙设备4,预设数量为3。其中目标蓝牙设备为蓝牙设备1,具有优先级的已配对蓝牙设备为蓝牙设备3和蓝牙设备4,蓝牙设备4为第一优先级,蓝牙设备3为第二优先级。在蓝牙设备1建立蓝牙配对后,蓝牙设备1不是首位已配对的蓝牙设备。并且,第二已配对蓝牙设备为蓝牙设备3和蓝牙设备4,数量为2小于预设数量3。对应的发送蓝牙服务连接请求的顺序为蓝牙设备1、蓝牙设备4、蓝牙设备3和蓝牙设备2。
进一步的,在完成蓝牙服务连接之后,为了便于对已连接蓝牙服务的已配对蓝牙设备进行管理,还可以对未设置优先级的已连接蓝牙服务的已配对蓝牙设备进行优先级的设置,具体可以包括:
将除了第二已配对蓝牙设备以外的建立了蓝牙服务连接的已配对蓝牙设备,在第二已配对蓝牙设备的优先级顺序之后依次设置优先级顺序。
第二已配对蓝牙设备的数量小于预设数量,建立蓝牙服务连接的已配对蓝牙设备中可能具有未设置优先级的已配对蓝牙设备。将建立了蓝牙服务连接的已配对蓝牙设备中,除第二已配对蓝牙设备以外的已配对蓝牙设备设置优先级。设置的优先级在全部第二已配对蓝牙设备的优先级之后。
设置的优先级的顺序可以与建立蓝牙服务连接的顺序一致。
以上述示例为例,如果建立蓝牙服务连接的已配对蓝牙设备为蓝牙设备1、蓝牙设备4和蓝牙设备2,可以为蓝牙设备1和蓝牙设备2设置优先级。由于蓝牙设备3为第二优先级,新设置的建立蓝牙服务连接的已配对的蓝牙设备的优先级从第三优先级开始,蓝牙设备1为第三优先级,蓝牙设备2为第四优先级。
S303:如果第二已配对蓝牙设备的数量不小于预设数量,按照第二已配对蓝牙设备以及其他已配对蓝牙设备的顺序,依次向各个已配对蓝牙设备发送蓝牙服务连接请求,直到与预设数量的已配对蓝牙设备建立蓝牙服务连接或者向全部已配对蓝牙设备发送蓝牙服务连接请求完成;其中,第二已配对蓝牙设备中按照优先级顺序排序,其他已配对蓝牙设备中按照蓝牙配对时间排序。
当第二已配对蓝牙设备的数量不小于预设数量,需要优先进行与第二已配对蓝牙设备的蓝牙服务连接的建立,若第二已配对蓝牙设备不能全部建立蓝牙服务连接,可以继续与其他已配对蓝牙设备建立蓝牙服务的连接。
需要说明的是,预设数量是最多建立蓝牙服务连接的已配对蓝牙设备的数量。在一种可能的情况下,第二已配对蓝牙设备的数量应当小于或者等于预设数量。此时,第二已配对蓝牙设备的数量不小于预设数量,即为第二已配对蓝牙设备的数量等于预设数量。
对应的,第一顺序具体可以为第二已配对蓝牙设备以及其他已配对蓝牙设备,根据目标蓝牙设备是否具有优先级决定,可以确定目标蓝牙设备属于其他已配对蓝牙设备或者属于第二已配对蓝牙设备。
第二已配对蓝牙设备是按照各个第二已配对蓝牙设备的优先级顺序进行蓝牙服务连接请求发送的,可以按照优先级由高到低的顺序依次发送蓝牙服务连接请求。其他已配对蓝牙设备的连接顺序可以根据蓝牙配对时间排序,具体可以按照配对时间由远到近的顺序进行连接或者是按照配对时间由近到远的顺序进行连接。
同样的,当已建立蓝牙服务的已配对蓝牙设备的数量为预设数量时,不能再与其他的已配对蓝牙设备建立蓝牙服务的连接,停止向后续的已配对蓝牙设备发送蓝牙服务连接请求。如果已建立蓝牙服务的已配对蓝牙设备的数量小于预设数量时,按照顺序继续向已配对蓝牙设备发送蓝牙服务连接请求,直到向全部的已配对蓝牙设备发送蓝牙服务连接请求后停止。
例如,已配对蓝牙设备为蓝牙设备1、蓝牙设备2、蓝牙设备3和蓝牙设备4,预设数量为2。其中,目标蓝牙设备为蓝牙设备1,具有优先级的已配对蓝牙设备为蓝牙设备3和蓝牙设备4,蓝牙设备4为第一优先级,蓝牙设备3为第二优先级。在蓝牙设备1建立蓝牙配对后,蓝牙设备1不是首位已配对的蓝牙设备。并且,第二已配对蓝牙设备为蓝牙设备3和蓝牙设备4,数量为2等于预设数量2。若其他已配对蓝牙设备的连接顺序按照配对时间由近到远的顺序进行连接,对应的发送蓝牙服务连接请求的顺序为蓝牙设备4、蓝牙设备3、蓝牙设备1和蓝牙设备2。若其他已配对蓝牙设备的连接顺序按照配对时间由远到近的顺序进行连接,对应的发送蓝牙服务连接请求的顺序为蓝牙设备4、蓝牙设备3、蓝牙设备2和蓝牙设备1。
在本申请实施例中,通过已建立蓝牙配对的目标蓝牙设备在已配对蓝牙设备中的次序,对应地确定进行蓝牙服务连接的顺序。从而实现在具有新的蓝牙设备配对的基础上,将已配对蓝牙设备的蓝牙服务按序连接,满足用户对多蓝牙设备的蓝牙服务功能的使用,可以实现多蓝牙设备的蓝牙服务的同时使用。
另外,蓝牙操作请求可以为蓝牙服务自动连接请求,此时无需进行新的蓝牙设备的配对,需要按照第二顺序向各个已配对蓝牙设备发送蓝牙服务连接请求。
本申请实施例提供了一种按照第二顺序依次向各个已配对蓝牙设备发送蓝牙服务连接请求(也就是S205)的实施方式,具体包括:
如果蓝牙请求为蓝牙服务自动连接请求,按照第二已配对蓝牙设备以及其他已配对蓝牙设备的顺序,依次向各个已配对蓝牙设备发送蓝牙服务连接请求,直到与预设数量的已配对蓝牙设备建立蓝牙服务连接或者向全部已配对蓝牙设备发送蓝牙服务连接请求完成;其中,第二已配对蓝牙设备为设置了优先级的已配对蓝牙设备;第二已配对蓝牙设备中按照优先级顺序排序,其他已配对蓝牙设备中按照蓝牙配对时间排序。
本申请实施例不限定蓝牙服务自动连接请求的触发方式,例如,当车载蓝牙设备重启,或者是停止新的蓝牙设备搜索时,都会触发进行蓝牙服务自动连接请求。
当蓝牙请求为蓝牙服务自动连接请求时,在将已连接或者是连接中的蓝牙服务断开的基础上,需要对已配对蓝牙设备的蓝牙服务按照第二顺序依次进行重新连接。
第二顺序具体为先连接第二已配对蓝牙设备,再连接其他已配对蓝牙设备。
在进行蓝牙服务的自动连接时,已配对蓝牙设备是较为固定的,可以根据蓝牙服务自动连接请求,按照先连接第二已配对蓝牙设备,再连接其他已配对蓝牙设备的顺序自动进行蓝牙服务连接请求的发送。
其中,第二已配对蓝牙设备为具有优先级的已配对蓝牙设备,第二已配对蓝牙设备是按照优先级顺序进行连接的。第二已配对蓝牙设备的优先级可以是用户设置的,也可以是根据已配对蓝牙设备的配对时间或者是其他因素自动设置的。
其他已配对蓝牙设备的连接顺序可以根据配对时间确定,与上述S303中的已配对蓝牙设备的连接顺序类似,在此不再赘述。
同样的,完成蓝牙服务的自动连接的条件也包括与预设数量的已配对蓝牙设备建立蓝牙服务连接和向全部已配对蓝牙设备发送蓝牙服务连接请求。当满足与预设数量的已配对蓝牙设备建立蓝牙服务连接,或者满足向全部已配对蓝牙设备发送蓝牙服务连接请求时,完成蓝牙服务的连接。
在本申请实施例中,当蓝牙请求为蓝牙服务自动连接请求时,按照第二已配对蓝牙设备以及其他已配对蓝牙设备的顺序,依次向各个已配对蓝牙设备发送蓝牙服务连接请求。通过自动连接蓝牙服务,可以实现对于已配对蓝牙设备按序自动连接,无需用户手动依次连接,使得多蓝牙服务的连接操作更为简单和便捷,便于对多个已配对蓝牙设备的蓝牙服务进行使用。
当已配对蓝牙设备较多,并且同时可以使用的蓝牙服务较多时,为了便于用户获取各个已配对蓝牙设备的信息,还可以对各个已配对蓝牙设备的相关信息进行显示,具体可以包括:
对各个已配对蓝牙设备的设备信息、蓝牙服务连接状态以及优先级中的一项或多项进行显示。
参见图4,该图为本申请实施例提供的显示已配对蓝牙设备的相关信息的示意图。
其中,图4中的左图为各个已配对蓝牙设备的设备名称、不同的蓝牙服务连接状态,以及已配对蓝牙设备的删除按键。图4中的右图为各个已配对蓝牙设备对应的优先级。
已配对蓝牙设备的设备信息是指区别各个已配对蓝牙设备的设备信息。例如,可以包括已配对蓝牙设备的设备名称、已配对蓝牙设备的配对时间,已配对蓝牙设备的设备型号等设备信息。
蓝牙服务连接状态是已配对蓝牙设备对应的蓝牙服务连接状态,比如,连接中、已连接或者未连接等。还可以包括蓝牙服务的类型,例如HFP服务或者AV(Audio Video,声音视频)服务等。
优先级为已配对蓝牙设备的优先级,显示已配对蓝牙设备的优先级可以便于用户确定已配对蓝牙设备之间的优先级关系。
将各个已配对蓝牙设备的设备信息、蓝牙服务连接状态以及优先级中的一项或者是多项进行显示,可以便于用户通过显示的信息明确各个已配对蓝牙设备以及当前的状态。并且用户可以根据显示的各个已配对蓝牙设备的优先级进行设置,方便用户对已配对蓝牙设备的蓝牙服务的操控。
在一种可能的实现方式中,已配对蓝牙设备的优先级可以根据使用的需要进行变更。比如,当具有优先级的已配对蓝牙设备取消匹配或者是不在建立蓝牙匹配的范围之内时,可以调整其他已配对蓝牙设备的优先级。
基于此,本申请实施例提供的实现蓝牙服务连接的方法,还可以包括:
响应于优先级变更操作,触发蓝牙服务自动连接请求。
当已配对蓝牙设备的优先级发生变更时,需要根据优先级重新对已配对蓝牙设备的蓝牙服务进行连接。
优先级变更操作是指对于已配对蓝牙设备的优先级变更的操作,具体可以包括用户对于已配对蓝牙设备的优先级进行变更的优先级变更操作,例如,用户通过显示的已配对蓝牙设备的优先级对已配对蓝牙设备的优先级进行调整。
优先级变更操作还可以为自动对已配对蓝牙设备的优先级进行设置或者调整的优先级变更操作。例如,根据已配对蓝牙设备的蓝牙服务连接状态进行已配对蓝牙设备的优先级的自动设置。或者根据具有优先级的已配对蓝牙设备的蓝牙服务连接状态发生变更,进而进行对具有优先级的已配对蓝牙设备的优先级的调整。
可以理解的是,已配对蓝牙设备的优先级与已配对蓝牙设备的蓝牙服务连接顺序有关。优先级较高的已配对蓝牙设备需要先进行蓝牙服务的连接,以确保优先级高的已配对蓝牙设备的蓝牙服务的连接。
响应于优先级变更操作,触发蓝牙服务自动连接请求,以便进行后续的蓝牙服务自动连接。也就是,先获取当前已配对蓝牙设备的蓝牙服务连接状态,断开与第一已配对蓝牙设备的蓝牙服务连接,再按照第二顺序依次向各个已配对蓝牙设备发送蓝牙服务连接请求,直到与预设数量的已配对蓝牙设备建立蓝牙服务连接或者向全部已配对蓝牙设备发送蓝牙服务连接请求完成。第二顺序具体可以为先连接第二已配对蓝牙设备,再连接其他已配对蓝牙设备。其中,第二已配对蓝牙设备是优先级变更后的具有优先级的已配对蓝牙设备。
在本申请实施例中,当接收到优先级变更操作后,响应于优先级变更操作,触发蓝牙服务自动连接请求。可以实现在优先级变更后,根据变更后的已配对蓝牙设备的优先级顺序进行蓝牙服务的自动连接。可以根据用户的使用需要进行蓝牙服务连接的调整,保证用户所需要的已配对蓝牙设备处于高优先级且优先进行蓝牙服务连接,提高用户的使用体验。
当用户进行多已配对蓝牙设备的蓝牙服务的使用时,用户常使用的已配对蓝牙设备有限。为了便于用户的使用,可以根据蓝牙服务的连接情况,对已配对蓝牙设备设置主从设备种类。
基于此,本申请实施例还提供了一种设置已配对蓝牙设备主从设备种类的方法,包括以下四个步骤:
A1:将优先级首位且建立了蓝牙服务连接的已配对蓝牙设备确定为主蓝牙设备。
首先需要说明的是,已配对蓝牙设备的主从设备种类是根据已配对蓝牙设备的优先级和蓝牙服务的连接关系共同决定的。
如果优先级首位的已配对蓝牙设备建立了蓝牙服务连接,则将该已配对蓝牙设备确定为主蓝牙设备。主蓝牙设备的个数可以为一个。
车载蓝牙设备可以获取主蓝牙设备中的电话簿或拨号方式,实现拨打电话、历史通话记录查询等通话功能,还可以启动主蓝牙设备的VR(Virtual Reality,虚拟现实技术)功能或Siri(Speech Interpretation&Recognition Interface,语音助手)功能。以上功能均可以在车载蓝牙设备上进行显示,用户可以通过车载蓝牙设备显示的信息对主蓝牙设备进行操作。
A2:当存在主蓝牙设备时,将优先级非首位且建立了蓝牙服务连接的已配对蓝牙设备确定为副蓝牙设备,和/或,将未设置优先级且建立了蓝牙服务连接的已配对蓝牙设备确定为临时副蓝牙设备。
当具有主蓝牙设备时,可以将具有非首位优先级且建立了蓝牙服务连接的已配对蓝牙设备确定为副蓝牙设备。
当具有主蓝牙设备时,可以将未设置优先级且建立了蓝牙服务连接的已配对蓝牙设备确定为临时副蓝牙设备。
车载蓝牙设备可以显示副蓝牙设备和临时副蓝牙设备的电话画面,并进行相关的通话操作。车载蓝牙设备也可以同步副蓝牙设备和临时副蓝牙设备中的电话簿,以便在用户需要时及时显示。
副蓝牙设备的数量可以根据建立蓝牙服务连接的已配对蓝牙设备中非首位优先级的已配对蓝牙设备的个数决定。临时副蓝牙设备的数量可以根据建立蓝牙服务连接的已配对蓝牙设备中未设置优先级的已配对蓝牙设备的个数决定。
需要说明的是,在对已配对蓝牙设备进行主从设备种类的设置后,在具有主蓝牙设备时,车载蓝牙设备优先进行主蓝牙设备的管理。当用户需要对副蓝牙设备或临时副蓝牙设备进行操作时,可以切换主从设备种类,使得原有的副蓝牙设备或临时副蓝牙设备作为主蓝牙设备,便于用户使用。
作为一种示例,建立蓝牙服务连接的已配对蓝牙设备的主从设备种类的设置如表1所示:
已配对蓝牙设备 HFP服务 Priority1 Priority2 主从设备种类
1 主蓝牙设备
2 副蓝牙设备
3
4
表1
其中,“已配对蓝牙设备”对应已配对蓝牙设备的序号,HFP服务为蓝牙服务,Priority1是第一优先级,Priority2为第二优先级。“●”表示建立HFP服务连接,“○”表示未建立HFP服务连接,“√”表示该已配对蓝牙设备具有的优先级。
已配对蓝牙设备1具有第一优先级,并且建立了蓝牙服务连接,所以已配对蓝牙设备1为主蓝牙设备。已配对蓝牙设备2具有第二优先级,优先级非首位并且建立了蓝牙服务连接,所以已配对蓝牙设备2为副蓝牙设备。
需要说明的是,已配对蓝牙设备的序号用于区别不同的已配对蓝牙设备,并且可以通过序号的大小表示已配对蓝牙设备配对时间。
主蓝牙设备和副蓝牙设备的设置与已配对蓝牙设备配对时间无关。表2对应的一种示例中,已配对蓝牙设备4为主蓝牙设备,已配对蓝牙设备2为副蓝牙设备,已配对蓝牙设备1为临时副蓝牙设备。其中,主蓝牙设备和副蓝牙设备的设置与优先级有关,与序号,也就是匹配时间无关。
已配对蓝牙设备 HFP服务 Priority1 Priority2 主从设备种类
1 临时副蓝牙设备
2 副蓝牙设备
3
4 主蓝牙设备
表2
在另一种可能的实现方式中,仅具有设置了第一优先级的已配对蓝牙设备。对应的,建立蓝牙服务连接的已配对蓝牙设备的主从设备种类的设置示例如表3所示:
已配对蓝牙设备 HFP服务 Priority1 Priority2 主从设备种类
1 主蓝牙设备
2 临时副设备
3
4
表3
存在主蓝牙设备已配对蓝牙设备1。已配对蓝牙设备2未设置优先级并且建立了蓝牙服务连接,将已配对蓝牙设备2确定为临时副蓝牙设备。
A3:当不存在主蓝牙设备时,将优先级在非首位中排序最高的且建立了蓝牙服务连接的已配对蓝牙设备确定为临时主设备,将其他建立了蓝牙服务连接的已配对蓝牙设备确定为临时副设备。
当优先级首位的已配对蓝牙设备未进行蓝牙服务连接时,蓝牙服务已连接的已配对蓝牙设备中不存在主蓝牙设备。此时,可以将优先级在非首位中排序最高的且建立了蓝牙服务连接的已配对蓝牙设备确定为临时主设备。
临时主设备的功能与主蓝牙设备的功能类似,在此不再赘述。临时主设备的数量可以为一个。
将其他建立了蓝牙服务连接的已配对蓝牙设备确定为临时副设备,临时副设备的数量可以为多个。
临时副设备的功能与上述副蓝牙设备和临时副蓝牙设备的功能类似,在此不再赘述。
如表4所示,本申请实施例提供了一种设置临时主设备和临时副设备的示例。
已配对蓝牙设备 HFP服务 Priority1 Priority2 主从设备种类
1 临时副设备
2 临时主设备
3
表4
由于不具有优先级首位且建立了蓝牙服务连接的已配对蓝牙设备,所以主蓝牙设备不存在。已配对蓝牙设备2为具有第二优先级,并且建立了蓝牙服务连接的已配对蓝牙设备,将已配对蓝牙设备2设置为临时主设备。对应的,将建立了蓝牙服务连接的已配对蓝牙设备1作为临时副设备。
A4:当不存在主蓝牙设备且建立了蓝牙服务连接的已配对蓝牙设备中不存在设置有优先级的已配对蓝牙设备时,将建立了蓝牙服务连接的已配对蓝牙设备中配对时间最早的确定为临时主设备,将其他建立了蓝牙服务连接的已配对蓝牙设备确定为临时副设备。
如果不具有主蓝牙设备,并且建立了蓝牙服务连接的已配对蓝牙设备中不存在设置有优先级的已配对蓝牙设备时,根据配对时间设置建立了蓝牙服务连接的已配对蓝牙设备的主从设备种类。
在建立了蓝牙服务连接的已配对蓝牙设备中不具有设置了优先级的已配对蓝牙设备时,将建立了蓝牙服务连接的已配对蓝牙设备中配对时间最早的确定为临时主设备,将其他建立了蓝牙服务连接的已配对蓝牙设备确定为临时副设备。临时主设备的数量为一个,临时副设备的数量为多个。
需要说明的是,建立了蓝牙服务连接的已配对蓝牙设备中不存在设置有优先级的已配对蓝牙设备,可以为并未对已配对蓝牙设备进行优先级的设置。
表5
如表5所示,已配对蓝牙设备1至已配对蓝牙设备5均未设置优先级。此时,主从设备种类由配对时间确定。表5中已配对蓝牙设备序号越小的已配对蓝牙设备配对时间越早,所以已配对蓝牙设备1确定为临时主设备,已配对蓝牙设备2确定为临时副设备。
在另一种可能的情况中,建立了蓝牙服务连接的已配对蓝牙设备中不存在设置有优先级的已配对蓝牙设备,可以为设置有优先级的已配对蓝牙设备并未建立蓝牙服务连接。
对应的示例参见表6。
已配对蓝牙设备 HFP服务 Priority1 Priority2 主从设备种类
1 临时主设备
2 临时副设备
3
4
5
表6
如表6所示,已配对蓝牙设备3和已配对蓝牙设备4设置有优先级,但是,并未建立蓝牙服务连接。此时,主从设备种类由配对时间确定。将已配对蓝牙设备1确定为临时主设备,已配对蓝牙设备2确定为临时副设备。
需要说明的是,已配对蓝牙设备的主从设备种类并非是固定的。已配对设备的蓝牙服务连接状态可能发生改变。比如,已配对设备关闭蓝牙连接或者不在蓝牙连接范围之内,又或者断开蓝牙服务连接。用户可以根据已配对蓝牙设备的蓝牙服务连接状态进行已配对蓝牙设备优先级的切换,进行优先级变更操作。用户还可以根据已配对蓝牙设备的使用情况对已配对蓝牙设备的优先级进行切换,进行优先级变更操作。对应的,响应于优先级变更操作,触发蓝牙服务自动连接请求。之后,再根据建立蓝牙服务连接的已配对设备重新进行已配对蓝牙设备的主从设备种类的确定。
为了实现高效切换,可以通过QML计算机语言在车载蓝牙设备的显示画面中设置优先级变更的按键,用户可以通过触发优先级变更的按键进行优先级变更操作,从而快速的进行已配对设备优先级的切换。
对应的一种切换示例如表7和表8所示:
表7为切换之前的已配对蓝牙设备的主从设备种类设置。
已配对蓝牙设备 HFP服务 Priority1 Priority2 主从设备种类
1 主蓝牙设备
2 副蓝牙设备
3
4
表7
如果用户切换已配对蓝牙设备1和已配对蓝牙设备2的优先级,将已配对蓝牙设备2的优先级设置为首位,将已配对蓝牙设备4的优先级设置为非首位。响应于优先级变更操作,触发蓝牙服务自动连接请求,先进行已配对蓝牙设备2的连接,再进行已配对蓝牙设备4的连接,最后进行其他已配对蓝牙设备的连接。若预设数量为2,切换后的已配对蓝牙设备的主从设备种类设置如表8所示。
已配对蓝牙设备 HFP服务 Priority1 Priority2 主从设备种类
1
2 主蓝牙设备
3
4 副蓝牙设备
表8
基于上述四步的相关内容可知,本申请实施中,通过根据已配对蓝牙设备的优先级和蓝牙服务的连接关系,对建立了蓝牙服务连接的已配对蓝牙设备的主从设备种类进行设置。在用户使用的过程中,主要进行对主蓝牙设备或临时主设备的蓝牙服务功能的使用。此外,副蓝牙设备、临时副设备或临时副蓝牙设备作为备用设备,向用户提供基本的蓝牙服务的信息,以便用户根据蓝牙服务的信息进行已配对蓝牙设备的优先级切换。如此可以实现不同的已配对蓝牙设备之间的快速切换,便于用户同时使用多个已配对蓝牙设备的蓝牙服务,给用户带来更好的使用体验。
在一种具体的应用场景中,车载蓝牙设备可以在控制软件方面具有三个层次,具体包括:底层蓝牙芯片、蓝牙中间件层和蓝牙上层功能逻辑控制和显示模块。通过三个层次之间的信息交互可以实现上述蓝牙服务连接的方法。
首先,先分别对底层蓝牙芯片、蓝牙中间件层和蓝牙上层功能逻辑控制和显示模块进行介绍。
第一、底层蓝牙芯片
底层蓝牙芯片至少具有以下四类通信协议接口:
(1)蓝牙搜索请求接口。
用于保证能搜索到周边的蓝牙设备,并将获取到的蓝牙设备的信息通过蓝牙中间件层反馈至蓝牙上层功能逻辑控制和显示模块。
蓝牙设备的信息具体可以包括蓝牙设备的Mac地址、蓝牙设备的名称等信息。
蓝牙中间件层会根据蓝牙设备的信息为各个蓝牙设备标记对应的标识,以便对蓝牙设备进行管理。
蓝牙上层功能逻辑控制和显示模块在获取到蓝牙设备的信息后,可以进行显示,以便用户根据显示的蓝牙设备的信息进行蓝牙设备的选择,并基于用户的选择触发对应的蓝牙设备的选择逻辑。
(2)蓝牙配对请求和反馈接口。
用于实现周边对蓝牙设备的配对请求的搜索以及蓝牙设备之间的配对。
(3)蓝牙服务连接和断开的请求和反馈接口。
用于实现发送蓝牙服务连接请求和蓝牙服务断开请求,以及接收蓝牙服务连接请求和蓝牙服务断开请求对应的反馈信息。
(4)功能控制接口。
用于实现对蓝牙服务具有的相关功能的控制。
第二、蓝牙中间件层
蓝牙中间件层用于分别与底层蓝牙芯片和蓝牙上层功能逻辑控制和显示模块进行通信。
其中,蓝牙中间件层与底层蓝牙芯片之间采用DBUS(a message bus system,消息总线系统)通信。
蓝牙中间件层与蓝牙上层功能逻辑控制和显示模块进行通信,采用IPC(Inter-Process Communication,进程间通信)通信协议。
需要说明的是,为了实现蓝牙上层功能逻辑控制和显示模块的调用,底层蓝牙芯片具有的通信协议接口,蓝牙中间件层同样具有。
此外,蓝牙中间件层还需要分别针对多个建立蓝牙服务连接的已配对蓝牙设备进行对应的定义,便于区分管理,可以实现对于多已配对蓝牙设备的蓝牙服务的管理。定义的内容具体可以包括:设备名称、Mac地址、设备标识、登录位置、蓝牙服务连接状态(已连接、断开、连接中)等。
第三、蓝牙上层功能逻辑控制和显示模块
为了实现对多个已配对蓝牙设备的管理,蓝牙上层功能逻辑控制和显示模块分别定义多套变量。
其中,一类变量是用于储存具有优先级的已配对蓝牙设备的相关信息,具体定义的变量内容有:设备标识、设备名称、连接状态以及向已配对蓝牙设备发送蓝牙服务连接请求时,上一个已配对蓝牙设备的蓝牙服务的连接状态。
还可以具有一类变量,用于存储除具有优先级的已配对蓝牙设备以外的,建立蓝牙服务连接的已配对蓝牙设备的相关信息。具体定义的变量内容有:设备标识、设备名称、连接状态、向已配对蓝牙设备发送蓝牙服务连接请求时,上一个已配对蓝牙设备的蓝牙服务的连接状态。此外,变量的命名涵盖Temp关键字,用于表示是除具有优先级的已配对蓝牙设备以外的,其他建立蓝牙服务连接的已配对蓝牙设备的变量。
基于上述对于底层蓝牙芯片、蓝牙中间件层和蓝牙上层功能逻辑控制和显示模块的基本介绍,下面对三个层次之间在实现蓝牙服务连接中的信息交互过程进行介绍。
在一种可能的实现方式中,在已配对蓝牙设备的优先级设定发生变化时,或者在进行蓝牙设备搜索又停止时,或者车载蓝牙设备发生电源重启/开关操作时,触发蓝牙服务自动连接。对应的蓝牙请求为蓝牙服务自动连接请求,按照第二已配对蓝牙设备以及其他已配对蓝牙设备的顺序,依次向各个已配对蓝牙设备发送蓝牙服务连接请求。
作为一种示例,第二已配对蓝牙设备为第一优先级的已配对蓝牙设备2和第二优先级的已配对蓝牙设备3,其他已配对蓝牙设备为已配对蓝牙设备1和已配对蓝牙设备4,预设数量为两个。
参见图5,图5为本申请实施例提供的一种实现蓝牙服务连接中的信息交互过程的示意图。
对应于第二已配对蓝牙设备以及其他已配对蓝牙设备的顺序,可以生成连接顺序表。连接顺序为已配对蓝牙设备2、已配对蓝牙设备3、已配对蓝牙设备1和已配对蓝牙设备4。其中,已配对蓝牙设备1和已配对蓝牙设备4的顺序是根据匹配时间决定的。
S501:蓝牙上层功能逻辑控制和显示模块向蓝牙中间件层发送蓝牙服务自动连接请求,蓝牙服务自动连接请求中具有各个蓝牙设备的标识,所要连接的服务的类型,所要调用的接口等相关信息。
S502:蓝牙中间件层向底层蓝牙芯片发送针对于已配对蓝牙设备2的蓝牙服务的连接请求。底层蓝牙芯片根据针对于已配对蓝牙设备2的蓝牙服务的连接请求进行已配对蓝牙设备2的对应的蓝牙服务的连接。
S503:底层蓝牙芯片向蓝牙中间件层发送针对于已配对蓝牙设备2的蓝牙服务的连接应答信息。
S504:蓝牙中间件层向蓝牙上层功能逻辑控制和显示模块发送针对于已配对蓝牙设备2的蓝牙服务的连接应答信息。
S505:底层蓝牙芯片发送向蓝牙中间件层发送连接完成信息,连接完成信息中具有与已配对蓝牙设备2的蓝牙服务建立连接成功的信息。
S506:蓝牙中间件层向底层蓝牙芯片发送针对于已配对蓝牙设备3的蓝牙服务的连接请求。底层蓝牙芯片根据针对于已配对蓝牙设备3的蓝牙服务的连接请求进行已配对蓝牙设备3的对应的蓝牙服务的连接。
S507:底层蓝牙芯片向蓝牙中间件层发送针对于已配对蓝牙设备3的蓝牙服务的连接应答信息。
S508:蓝牙中间件层向蓝牙上层功能逻辑控制和显示模块发送针对于已配对蓝牙设备3的蓝牙服务的连接应答信息。
S509:底层蓝牙芯片发送向蓝牙中间件层发送连接完成信息,连接完成信息中具有与已配对蓝牙设备3的蓝牙服务建立连接成功的信息。
S510:蓝牙中间件层向蓝牙上层功能逻辑控制和显示模块发送本次蓝牙服务自动连接完成的完成信息。
仍以上述已配对蓝牙设备1至已配对蓝牙设备4的设置为例。
参见图6,图6为本申请实施例提供的另一种实现蓝牙服务连接中的信息交互过程的示意图。
S601-S608分别与上述S501-S508相同,在此不再赘述。
S609:底层蓝牙芯片发送向蓝牙中间件层发送连接完成信息,连接完成信息中具有与已配对蓝牙设备3的蓝牙服务建立连接失败的信息。
S610:蓝牙中间件层向底层蓝牙芯片发送针对于已配对蓝牙设备1的蓝牙服务的连接请求。底层蓝牙芯片根据针对于已配对蓝牙设备1的蓝牙服务的连接请求进行已配对蓝牙设备1的对应的蓝牙服务的连接。
S611:底层蓝牙芯片向蓝牙中间件层发送针对于已配对蓝牙设备1的蓝牙服务的连接应答信息。
S612:蓝牙中间件层向蓝牙上层功能逻辑控制和显示模块发送针对于已配对蓝牙设备1的蓝牙服务的连接应答信息。
S613:底层蓝牙芯片发送向蓝牙中间件层发送连接完成信息,连接完成信息中具有与已配对蓝牙设备1的蓝牙服务建立连接成功的信息。
S614:蓝牙中间件层向蓝牙上层功能逻辑控制和显示模块发送本次蓝牙服务自动连接完成的完成信息。
在另一种可能的实现方式中,具有新的需要进行配对的蓝牙设备,对应的,蓝牙操作请求为蓝牙设备配对请求。
下面通过示例对蓝牙操作请求为蓝牙设备配对请求时三个层次之间的信息交互过程进行说明。
参见图7,图7为本申请实施例提供的又一种实现蓝牙服务连接中的信息交互过程的示意图。
在一种可能的情况中,目标蓝牙设备1为需要进行配对的新的蓝牙设备。在目标蓝牙设备1进行配对之前,具有建立蓝牙服务连接的已配对蓝牙设备2,已配对蓝牙设备2的优先级为第一优先级。
S701:底层蓝牙芯片接收到目标蓝牙设备1的配对请求,并通过蓝牙中间件层发送至蓝牙上层功能逻辑控制和显示模块。
S702:蓝牙上层功能逻辑控制和显示模块通过蓝牙中间件层向底层蓝牙芯片发送针对已配对蓝牙设备2的蓝牙服务断开请求。底层蓝牙芯片通过蓝牙中间件层向蓝牙上层功能逻辑控制和显示模块发送已配对蓝牙设备2的蓝牙服务断开成功通知。
S703:蓝牙上层功能逻辑控制和显示模块通过蓝牙中间件向底层蓝牙芯片发送针对目标蓝牙设备1的配对请求。
S704:在蓝牙上层功能逻辑控制和显示模块通过蓝牙中间件接收到底层蓝牙芯片发送的目标蓝牙设备1的配对成功请求后,蓝牙上层功能逻辑控制和显示模块通过蓝牙中间件向底层蓝牙芯片发送针对于目标蓝牙设备1的蓝牙服务的连接请求。
S705-S707中与目标蓝牙设备1的蓝牙服务建立连接过程中的信息交互与上述S503-S505类似,在此不再赘述。
S708:蓝牙中间件层向蓝牙上层功能逻辑控制和显示模块发送针对于目标蓝牙设备1的蓝牙服务的连接完成信息。
S709:蓝牙上层功能逻辑控制和显示模块判断具有第一优先级的已配对蓝牙设备2,通过蓝牙中间件向底层蓝牙芯片发送针对于已配对蓝牙设备2的蓝牙服务的连接请求。
后续步骤S710-S712与上述S507-S509类似,在此不再赘述。
S713:蓝牙中间件层向蓝牙上层功能逻辑控制和显示模块发送本次蓝牙服务连接完成的连接完成信息。
需要说明的是,若已配对蓝牙设备2为建立蓝牙服务的连接,执行S701和S703及后续步骤。
在本申请实施例中,通过对底层蓝牙芯片、蓝牙中间件层和蓝牙上层功能逻辑控制和显示模块进行对应的多蓝牙服务的设置,可以实现三个层次之间实现蓝牙服务连接中的信息交互过程。如此可以实现蓝牙服务的自动连续和调整,便于用户同时使用多个蓝牙服务。
基于上述方法实施例提供的实现蓝牙服务连接的方法,本申请实施例还提供了一种实现蓝牙服务连接装置,下面将结合附图对该实现蓝牙服务连接装置进行说明。
参见图8,该图为本申请实施例提供的一种实现蓝牙服务连接装置的结构示意图。如图8所示,该实现蓝牙服务连接装置包括:
获取单元801,用于响应于蓝牙操作请求,获取当前已配对蓝牙设备的蓝牙服务连接状态,所述蓝牙操作请求包括蓝牙设备配对请求或者蓝牙服务自动连接请求,所述蓝牙设备配对请求携带目标蓝牙设备的标识;
断开单元802,用于将所述蓝牙服务连接状态为已连接或连接中的已配对蓝牙设备确定为第一已配对蓝牙设备,向所述第一已配对蓝牙设备发送蓝牙服务断开请求,以断开与所述第一已配对蓝牙设备的蓝牙服务连接;
配对单元803,用于如果所述蓝牙操作请求为蓝牙设备配对请求,向所述目标蓝牙设备发送配对请求,以建立与所述目标蓝牙设备的蓝牙配对;
第一连接单元804,用于在建立与所述目标蓝牙设备的蓝牙配对之后,按照第一顺序依次向各个已配对蓝牙设备发送蓝牙服务连接请求,直到与预设数量的已配对蓝牙设备建立蓝牙服务连接或者向全部已配对蓝牙设备发送蓝牙服务连接请求完成;
第二连接单元805,用于如果所述蓝牙操作请求为蓝牙服务自动连接请求,按照第二顺序依次向各个已配对蓝牙设备发送蓝牙服务连接请求,直到与预设数量的已配对蓝牙设备建立蓝牙服务连接或者向全部已配对蓝牙设备发送蓝牙服务连接请求完成。
可选的,所述第一连接单元804,具体用于在建立与所述目标蓝牙设备的蓝牙配对之后,如果所述目标蓝牙设备是首个已配对蓝牙设备,向所述目标蓝牙设备发送蓝牙服务连接请求,以建立与所述目标蓝牙设备的蓝牙服务连接。
可选的,所述第一连接单元804,包括:
判断子单元,用于在建立与所述目标蓝牙设备的蓝牙配对之后,如果所述目标蓝牙设备不是首个已配对蓝牙设备,判断第二已配对蓝牙设备的数量是否小于预设数量,所述第二已配对蓝牙设备为设置了优先级的已配对蓝牙设备;
第一连接子单元,用于如果第二已配对蓝牙设备的数量小于预设数量,按照所述目标蓝牙设备、所述第二已配对蓝牙设备以及其他已配对蓝牙设备的顺序,依次向各个已配对蓝牙设备发送蓝牙服务连接请求,直到与预设数量的已配对蓝牙设备建立蓝牙服务连接或者向全部已配对蓝牙设备发送蓝牙服务连接请求完成;其中,所述第二已配对蓝牙设备中按照优先级顺序排序,其他已配对蓝牙设备中按照蓝牙配对时间排序;
第二连接子单元,用于如果第二已配对蓝牙设备的数量不小于预设数量,按照所述第二已配对蓝牙设备以及其他已配对蓝牙设备的顺序,依次向各个已配对蓝牙设备发送蓝牙服务连接请求,直到与预设数量的已配对蓝牙设备建立蓝牙服务连接或者向全部已配对蓝牙设备发送蓝牙服务连接请求完成;其中,所述第二已配对蓝牙设备中按照优先级顺序排序,其他已配对蓝牙设备中按照蓝牙配对时间排序。
可选的,所述第二连接单元805,具体用于如果所述蓝牙请求为蓝牙服务自动连接请求,按照第二已配对蓝牙设备以及其他已配对蓝牙设备的顺序,依次向各个已配对蓝牙设备发送蓝牙服务连接请求,直到与预设数量的已配对蓝牙设备建立蓝牙服务连接或者向全部已配对蓝牙设备发送蓝牙服务连接请求完成;其中,所述第二已配对蓝牙设备为设置了优先级的已配对蓝牙设备;所述第二已配对蓝牙设备中按照优先级顺序排序,其他已配对蓝牙设备中按照蓝牙配对时间排序。
可选的,所述装置还包括:
第一设置单元,用于如果所述目标蓝牙设备是首个已配对蓝牙设备,在向所述目标蓝牙设备发送蓝牙服务连接请求之后,如果建立与所述目标蓝牙设备的蓝牙服务连接,将所述目标蓝牙设备的优先级设置为优先级首位的已配对蓝牙设备。
可选的,所述装置还包括:
第二设置单元,用于如果第二已配对蓝牙设备的数量小于预设数量,在按照所述目标蓝牙设备、所述第二已配对蓝牙设备以及其他已配对蓝牙设备的顺序,依次向各个已配对蓝牙设备发送蓝牙服务连接请求,直到与预设数量的已配对蓝牙设备建立蓝牙服务连接或者向全部已配对蓝牙设备发送蓝牙服务连接请求完成之后,将除了所述第二已配对蓝牙设备以外的建立了蓝牙服务连接的已配对蓝牙设备,在所述第二已配对蓝牙设备的优先级顺序之后依次设置优先级顺序。
可选的,所述装置还包括:
显示单元,用于对各个已配对蓝牙设备的设备信息、蓝牙服务连接状态以及优先级中的一项或多项进行显示。
可选的,所述装置还包括:
触发单元,用于响应于优先级变更操作,触发所述蓝牙服务自动连接请求。
可选的,所述装置还包括:
第一确定单元,用于将优先级首位且建立了蓝牙服务连接的已配对蓝牙设备确定为主蓝牙设备;
第二确定单元,用于当存在所述主蓝牙设备时,将优先级非首位且建立了蓝牙服务连接的已配对蓝牙设备确定为副蓝牙设备,和/或,将未设置优先级且建立了蓝牙服务连接的已配对蓝牙设备确定为临时副蓝牙设备;
第三确定单元,用于当不存在所述主蓝牙设备时,将优先级在非首位中排序最高的且建立了蓝牙服务连接的已配对蓝牙设备确定为临时主设备,将其他建立了蓝牙服务连接的已配对蓝牙设备确定为临时副设备;
第四确定单元,用于当不存在所述主蓝牙设备且建立了蓝牙服务连接的已配对蓝牙设备中不存在设置有优先级的已配对蓝牙设备时,将建立了蓝牙服务连接的已配对蓝牙设备中配对时间最早的确定为临时主设备,将其他建立了蓝牙服务连接的已配对蓝牙设备确定为临时副设备。
另外,本申请实施例还提供了一种实现蓝牙服务连接设备,包括:存储器,处理器,及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时,实现如上述实施例所述的实现蓝牙服务连接的方法。
另外,本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当所述指令在终端设备上运行时,使得所述终端设备执行如上述实施例所述的实现蓝牙服务连接的方法。
需要说明的是,本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的系统或装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
应当理解,在本申请中,“至少一个(项)”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,用于描述关联对象的关联关系,表示可以存在三种关系,例如,“A和/或B”可以表示:只存在A,只存在B以及同时存在A和B三种情况,其中A,B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项(个)”或其类似表达,是指这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b或c中的至少一项(个),可以表示:a,b,c,“a和b”,“a和c”,“b和c”,或“a和b和c”,其中a,b,c可以是单个,也可以是多个。
还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、物品或者设备中还存在另外的相同要素。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本申请。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

Claims (12)

1.一种实现蓝牙服务连接的方法,其特征在于,所述方法包括:
响应于蓝牙操作请求,获取当前已配对蓝牙设备的蓝牙服务连接状态,所述蓝牙操作请求包括蓝牙设备配对请求或者蓝牙服务自动连接请求,所述蓝牙设备配对请求携带目标蓝牙设备的标识;
将所述蓝牙服务连接状态为已连接或连接中的已配对蓝牙设备确定为第一已配对蓝牙设备,向所述第一已配对蓝牙设备发送蓝牙服务断开请求,以断开与所述第一已配对蓝牙设备的蓝牙服务连接;
如果所述蓝牙操作请求为蓝牙设备配对请求,向所述目标蓝牙设备发送配对请求,以建立与所述目标蓝牙设备的蓝牙配对;
在建立与所述目标蓝牙设备的蓝牙配对之后,按照第一顺序依次向各个已配对蓝牙设备发送蓝牙服务连接请求,直到与预设数量的已配对蓝牙设备建立蓝牙服务连接或者向全部已配对蓝牙设备发送蓝牙服务连接请求完成,在完成向所述全部已配对蓝牙设备发送蓝牙服务连接请求的过程中建立与多个已配对蓝牙设备的蓝牙服务连接,建立蓝牙服务连接的多个已配对蓝牙设备的数量小于所述预设数量;
如果所述蓝牙操作请求为蓝牙服务自动连接请求,按照第二顺序依次向各个已配对蓝牙设备发送蓝牙服务连接请求,直到与预设数量的已配对蓝牙设备建立蓝牙服务连接或者向全部已配对蓝牙设备发送蓝牙服务连接请求完成,在完成向所述全部已配对蓝牙设备发送蓝牙服务连接请求的过程中建立与多个已配对蓝牙设备的蓝牙服务连接,建立蓝牙服务连接的多个已配对蓝牙设备的数量小于所述预设数量。
2.根据权利要求1所述的方法,其特征在于,所述在建立与所述目标蓝牙设备的蓝牙配对之后,按照第一顺序依次向各个已配对蓝牙设备发送蓝牙服务连接请求,直到与预设数量的已配对蓝牙设备建立蓝牙服务连接或者向全部已配对蓝牙设备发送蓝牙服务连接请求完成,包括:
在建立与所述目标蓝牙设备的蓝牙配对之后,如果所述目标蓝牙设备是首个已配对蓝牙设备,向所述目标蓝牙设备发送蓝牙服务连接请求,以建立与所述目标蓝牙设备的蓝牙服务连接。
3.根据权利要求1所述的方法,其特征在于,所述在建立与所述目标蓝牙设备的蓝牙配对之后,按照第一顺序依次向各个已配对蓝牙设备发送蓝牙服务连接请求,直到与预设数量的已配对蓝牙设备建立蓝牙服务连接或者向全部已配对蓝牙设备发送蓝牙服务连接请求完成,包括:
在建立与所述目标蓝牙设备的蓝牙配对之后,如果所述目标蓝牙设备不是首个已配对蓝牙设备,判断第二已配对蓝牙设备的数量是否小于预设数量,所述第二已配对蓝牙设备为设置了优先级的已配对蓝牙设备;
如果第二已配对蓝牙设备的数量小于预设数量,按照所述目标蓝牙设备、所述第二已配对蓝牙设备以及其他已配对蓝牙设备的顺序,依次向各个已配对蓝牙设备发送蓝牙服务连接请求,直到与预设数量的已配对蓝牙设备建立蓝牙服务连接或者向全部已配对蓝牙设备发送蓝牙服务连接请求完成;其中,所述第二已配对蓝牙设备中按照优先级顺序排序,其他已配对蓝牙设备中按照蓝牙配对时间排序;
如果第二已配对蓝牙设备的数量不小于预设数量,按照所述第二已配对蓝牙设备以及其他已配对蓝牙设备的顺序,依次向各个已配对蓝牙设备发送蓝牙服务连接请求,直到与预设数量的已配对蓝牙设备建立蓝牙服务连接或者向全部已配对蓝牙设备发送蓝牙服务连接请求完成;其中,所述第二已配对蓝牙设备中按照优先级顺序排序,其他已配对蓝牙设备中按照蓝牙配对时间排序。
4.根据权利要求1所述的方法,其特征在于,所述如果所述蓝牙请求为蓝牙服务自动连接请求,按照第二顺序依次向各个已配对蓝牙设备发送蓝牙服务连接请求,直到与预设数量的已配对蓝牙设备建立蓝牙服务连接或者向全部已配对蓝牙设备发送蓝牙服务连接请求完成,包括:
如果所述蓝牙请求为蓝牙服务自动连接请求,按照第二已配对蓝牙设备以及其他已配对蓝牙设备的顺序,依次向各个已配对蓝牙设备发送蓝牙服务连接请求,直到与预设数量的已配对蓝牙设备建立蓝牙服务连接或者向全部已配对蓝牙设备发送蓝牙服务连接请求完成;其中,所述第二已配对蓝牙设备为设置了优先级的已配对蓝牙设备;所述第二已配对蓝牙设备中按照优先级顺序排序,其他已配对蓝牙设备中按照蓝牙配对时间排序。
5.根据权利要求2所述的方法,其特征在于,所述方法还包括:
如果所述目标蓝牙设备是首个已配对蓝牙设备,在向所述目标蓝牙设备发送蓝牙服务连接请求之后,如果建立与所述目标蓝牙设备的蓝牙服务连接,将所述目标蓝牙设备的优先级设置为优先级首位的已配对蓝牙设备。
6.根据权利要求3所述的方法,其特征在于,所述方法还包括:
如果第二已配对蓝牙设备的数量小于预设数量,在按照所述目标蓝牙设备、所述第二已配对蓝牙设备以及其他已配对蓝牙设备的顺序,依次向各个已配对蓝牙设备发送蓝牙服务连接请求,直到与预设数量的已配对蓝牙设备建立蓝牙服务连接或者向全部已配对蓝牙设备发送蓝牙服务连接请求完成之后,将除了所述第二已配对蓝牙设备以外的建立了蓝牙服务连接的已配对蓝牙设备,在所述第二已配对蓝牙设备的优先级顺序之后依次设置优先级顺序。
7.根据权利要求1-6任一项所述的方法,其特征在于,所述方法还包括:
对各个已配对蓝牙设备的设备信息、蓝牙服务连接状态以及优先级中的一项或多项进行显示。
8.根据权利要求1-6任一项所述的方法,其特征在于,所述方法还包括:
响应于优先级变更操作,触发所述蓝牙服务自动连接请求。
9.根据权利要求1-6任一项所述的方法,其特征在于,所述方法还包括:
将优先级首位且建立了蓝牙服务连接的已配对蓝牙设备确定为主蓝牙设备;
当存在所述主蓝牙设备时,将优先级非首位且建立了蓝牙服务连接的已配对蓝牙设备确定为副蓝牙设备,和/或,将未设置优先级且建立了蓝牙服务连接的已配对蓝牙设备确定为临时副蓝牙设备;
当不存在所述主蓝牙设备时,将优先级在非首位中排序最高的且建立了蓝牙服务连接的已配对蓝牙设备确定为临时主设备,将其他建立了蓝牙服务连接的已配对蓝牙设备确定为临时副设备;
当不存在所述主蓝牙设备且建立了蓝牙服务连接的已配对蓝牙设备中不存在设置有优先级的已配对蓝牙设备时,将建立了蓝牙服务连接的已配对蓝牙设备中配对时间最早的确定为临时主设备,将其他建立了蓝牙服务连接的已配对蓝牙设备确定为临时副设备。
10.一种实现蓝牙服务连接的装置,其特征在于,所述装置包括:
获取单元,用于响应于蓝牙操作请求,获取当前已配对蓝牙设备的蓝牙服务连接状态,所述蓝牙操作请求包括蓝牙设备配对请求或者蓝牙服务自动连接请求,所述蓝牙设备配对请求携带目标蓝牙设备的标识;
断开单元,用于将所述蓝牙服务连接状态为已连接或连接中的已配对蓝牙设备确定为第一已配对蓝牙设备,向所述第一已配对蓝牙设备发送蓝牙服务断开请求,以断开与所述第一已配对蓝牙设备的蓝牙服务连接;
配对单元,用于如果所述蓝牙操作请求为蓝牙设备配对请求,向所述目标蓝牙设备发送配对请求,以建立与所述目标蓝牙设备的蓝牙配对;
第一连接单元,用于在建立与所述目标蓝牙设备的蓝牙配对之后,按照第一顺序依次向各个已配对蓝牙设备发送蓝牙服务连接请求,直到与预设数量的已配对蓝牙设备建立蓝牙服务连接或者向全部已配对蓝牙设备发送蓝牙服务连接请求完成,在完成向所述全部已配对蓝牙设备发送蓝牙服务连接请求的过程中建立与多个已配对蓝牙设备的蓝牙服务连接,建立蓝牙服务连接的多个已配对蓝牙设备的数量小于所述预设数量;
第二连接单元,用于如果所述蓝牙操作请求为蓝牙服务自动连接请求,按照第二顺序依次向各个已配对蓝牙设备发送蓝牙服务连接请求,直到与预设数量的已配对蓝牙设备建立蓝牙服务连接或者向全部已配对蓝牙设备发送蓝牙服务连接请求完成,在完成向所述全部已配对蓝牙设备发送蓝牙服务连接请求的过程中建立与多个已配对蓝牙设备的蓝牙服务连接,建立蓝牙服务连接的多个已配对蓝牙设备的数量小于所述预设数量。
11.一种实现蓝牙服务连接设备,其特征在于,包括:存储器,处理器,及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时,实现如权利要求1-9任一项所述的实现蓝牙服务连接的方法。
12.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有指令,当所述指令在终端设备上运行时,使得所述终端设备执行如权利要求1-9任一项所述的实现蓝牙服务连接的方法。
CN202010743545.7A 2020-07-29 2020-07-29 一种实现蓝牙服务连接的方法、装置及设备 Active CN111918258B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010743545.7A CN111918258B (zh) 2020-07-29 2020-07-29 一种实现蓝牙服务连接的方法、装置及设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010743545.7A CN111918258B (zh) 2020-07-29 2020-07-29 一种实现蓝牙服务连接的方法、装置及设备

Publications (2)

Publication Number Publication Date
CN111918258A CN111918258A (zh) 2020-11-10
CN111918258B true CN111918258B (zh) 2024-05-03

Family

ID=73287655

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010743545.7A Active CN111918258B (zh) 2020-07-29 2020-07-29 一种实现蓝牙服务连接的方法、装置及设备

Country Status (1)

Country Link
CN (1) CN111918258B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113395690B (zh) * 2021-06-25 2023-09-08 斑马网络技术有限公司 蓝牙设备自动连接方法、装置、设备及存储介质
CN113923641B (zh) * 2021-12-07 2022-05-06 荣耀终端有限公司 一种连接方法及装置

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106341516A (zh) * 2015-07-06 2017-01-18 中兴通讯股份有限公司 一种多点连接控制方法、装置、终端及多点蓝牙耳机
CN106851530A (zh) * 2016-12-14 2017-06-13 青岛海信电器股份有限公司 一种蓝牙设备自动回连的方法及蓝牙设备
CN108235297A (zh) * 2018-01-05 2018-06-29 北京新能源汽车股份有限公司 一种车载蓝牙与移动设备的配对方法、装置、设备及汽车
CN108377483A (zh) * 2018-01-25 2018-08-07 维沃移动通信有限公司 一种蓝牙信道的处理方法及移动终端
CN109345813A (zh) * 2018-11-30 2019-02-15 深圳创维数字技术有限公司 播放设备与蓝牙遥控器的配对方法、设备及可读存储介质
CN109548184A (zh) * 2017-08-16 2019-03-29 中兴通讯股份有限公司 连接移动终端与蓝牙设备的方法、装置以及移动终端
CN110191442A (zh) * 2019-04-18 2019-08-30 华为技术有限公司 一种蓝牙连接方法、设备及系统
CN110996305A (zh) * 2019-11-12 2020-04-10 宇龙计算机通信科技(深圳)有限公司 连接蓝牙设备的方法、装置、电子设备及介质

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101631156B (zh) * 2009-08-13 2012-10-10 中兴通讯股份有限公司 一种终端控制蓝牙耳机有序连接的方法及系统
CN102752029A (zh) * 2011-04-18 2012-10-24 中兴通讯股份有限公司 蓝牙配件配对蓝牙设备的方法及蓝牙配件
CN105208513B (zh) * 2015-09-02 2019-04-23 深圳市文鼎创数据科技有限公司 终端设备配对连接确认的方法及系统
TWI635756B (zh) * 2016-07-12 2018-09-11 立創智能股份有限公司 建立並監控低功耗藍牙無線網絡之方法
KR102368054B1 (ko) * 2017-12-12 2022-02-28 현대자동차주식회사 자동차의 헤드 유닛 및 그 제어 방법

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106341516A (zh) * 2015-07-06 2017-01-18 中兴通讯股份有限公司 一种多点连接控制方法、装置、终端及多点蓝牙耳机
CN106851530A (zh) * 2016-12-14 2017-06-13 青岛海信电器股份有限公司 一种蓝牙设备自动回连的方法及蓝牙设备
CN109548184A (zh) * 2017-08-16 2019-03-29 中兴通讯股份有限公司 连接移动终端与蓝牙设备的方法、装置以及移动终端
CN108235297A (zh) * 2018-01-05 2018-06-29 北京新能源汽车股份有限公司 一种车载蓝牙与移动设备的配对方法、装置、设备及汽车
CN108377483A (zh) * 2018-01-25 2018-08-07 维沃移动通信有限公司 一种蓝牙信道的处理方法及移动终端
CN109345813A (zh) * 2018-11-30 2019-02-15 深圳创维数字技术有限公司 播放设备与蓝牙遥控器的配对方法、设备及可读存储介质
CN110191442A (zh) * 2019-04-18 2019-08-30 华为技术有限公司 一种蓝牙连接方法、设备及系统
CN110996305A (zh) * 2019-11-12 2020-04-10 宇龙计算机通信科技(深圳)有限公司 连接蓝牙设备的方法、装置、电子设备及介质

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
Android平台单主机与多从机自配对蓝牙通信研究;陈思思;;信息与电脑(理论版)(05);全文 *
一种蓝牙网络接入点快速切换机制;林鸿, 丁文芳, 高强;计算机研究与发展;20031030(10);全文 *
基于51单片机的智能手环蓝牙模块设计;王烈进;王游司;陈洪燕;孙超;卢宇;;电脑知识与技术;20180815(23);全文 *
用NFC技术快速建立蓝牙安全连接问题研究;马捷;鄂金龙;;计算机应用与软件(03);全文 *

Also Published As

Publication number Publication date
CN111918258A (zh) 2020-11-10

Similar Documents

Publication Publication Date Title
KR101742985B1 (ko) 무선 네트워크에서 그룹 오너 결정 방법 및 그 디바이스
US11159696B2 (en) Communication apparatus
EP3363162B1 (en) Smart channel selection for autonomous group initiators
JP2022003772A (ja) 無線接続を確立する方法、装置、機器及び記憶媒体
CN109743783B (zh) 数据传输控制方法及相关产品
CN111918258B (zh) 一种实现蓝牙服务连接的方法、装置及设备
CN108781473B (zh) 一种在不同终端间共享文件的方法及设备
US11375410B2 (en) Method and apparatus for obtaining configuration information, device, storage medium, and system
CN111050415B (zh) 一种操作便捷的无线数据传输方法
US20150105020A1 (en) Short-range wireless communication device
US10321494B2 (en) Method and apparatus for communicating in a wireless communication network
CN112291862A (zh) 终端设备间建立连接的方法及终端设备
CN112492618A (zh) 一种网络共享方法、装置、电子设备及存储介质
CN102378400A (zh) 蓝牙服务的管理方法和装置
US10694553B2 (en) Connection method of communication device and the communication device
CN115022859A (zh) 一种无线局域网和蓝牙互补通信方法
CN108738090B (zh) 一种通信装置网络连接的控制方法、通信装置、电子终端
EP4185061A1 (en) Random access method and apparatus, communication device, and storage medium
CN115209393A (zh) 数据传输方法、系统、电子设备及存储介质
CN115529381A (zh) 通话处理方法、装置、系统、电子设备及介质
CN113115295B (zh) 用于移动设备的数据传输方法及系统
CN113905085B (zh) 一种控制方法、装置及电子设备
EP4135282A1 (en) Protocol architecture determination method, apparatus and device
CN117729522A (zh) 机载通信的方法、装置、设备、介质和程序产品
CN115696505A (zh) Csg选择模式设置方法、usim、终端、装置及介质

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