CN113301113A - 一种profile版本确定方法、系统、电子设备及计算机存储介质 - Google Patents
一种profile版本确定方法、系统、电子设备及计算机存储介质 Download PDFInfo
- Publication number
- CN113301113A CN113301113A CN202110390970.7A CN202110390970A CN113301113A CN 113301113 A CN113301113 A CN 113301113A CN 202110390970 A CN202110390970 A CN 202110390970A CN 113301113 A CN113301113 A CN 113301113A
- Authority
- CN
- China
- Prior art keywords
- pbap
- version
- address book
- protocol
- synchronization service
- 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 109
- 230000004044 response Effects 0.000 claims abstract description 85
- 230000002159 abnormal effect Effects 0.000 claims description 62
- 238000012545 processing Methods 0.000 claims description 36
- 230000015654 memory Effects 0.000 claims description 18
- 230000005856 abnormality Effects 0.000 claims description 14
- 230000001360 synchronised effect Effects 0.000 claims description 12
- 238000004590 computer program Methods 0.000 claims description 5
- 238000012544 monitoring process Methods 0.000 claims description 4
- 238000013461 design Methods 0.000 description 33
- 238000004891 communication Methods 0.000 description 29
- 230000008569 process Effects 0.000 description 21
- 238000010586 diagram Methods 0.000 description 16
- 230000008093 supporting effect Effects 0.000 description 15
- 238000010295 mobile communication Methods 0.000 description 12
- 230000000694 effects Effects 0.000 description 11
- 230000006870 function Effects 0.000 description 8
- 230000003137 locomotive effect Effects 0.000 description 8
- 230000005236 sound signal Effects 0.000 description 6
- 230000001960 triggered effect Effects 0.000 description 6
- 230000003993 interaction Effects 0.000 description 5
- 230000003068 static effect Effects 0.000 description 4
- 230000006978 adaptation Effects 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 3
- 230000008859 change Effects 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 230000015556 catabolic process Effects 0.000 description 2
- 238000006731 degradation reaction Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 239000000203 mixture Substances 0.000 description 2
- 238000004088 simulation Methods 0.000 description 2
- 206010000117 Abnormal behaviour Diseases 0.000 description 1
- 230000001133 acceleration Effects 0.000 description 1
- 230000003321 amplification Effects 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 210000000988 bone and bone Anatomy 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000012512 characterization method Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000003199 nucleic acid amplification method Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 239000004984 smart glass Substances 0.000 description 1
- 230000002269 spontaneous effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/34—Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/71—Version control; Configuration management
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0805—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability
- H04L43/0811—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability by checking connectivity
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/10—Network architectures or network communication protocols for network security for controlling access to devices or network resources
- H04L63/101—Access control lists [ACL]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1095—Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- Environmental & Geological Engineering (AREA)
- Telephone Function (AREA)
Abstract
本申请提供一种profile版本确定方法、系统、电子设备及计算机存储介质,涉及电子设备技术领域,解决了蓝牙设备间profile支持效果不佳的问题。具体方案为:外接设备采用第一PBAP版本向电子设备请求通讯录同步服务;电子设备根据第一PBAP版本向外接设备提供通讯录同步服务;在通讯录同步服务期间出现异常的情况下,外接设备向电子设备发送SDP请求信息;电子设备向外接设备发送第二SDP响应信息;其中,第二SDP响应信息包括第二PBAP标识;第二PBAP标识包括第二版本号,或包括第一版本号和取值为第二值的特定指示位;外接设备根据第二PBAP标识,采用第二PBAP版本向电子设备请求通讯录同步服务。
Description
技术领域
本申请涉及电子设备领域,尤其涉及一种应用协议(profile)版本确定方法、系统、电子设备及计算机存储介质。
背景技术
蓝牙(Bluetooth)是一种支持设备之间短距离(一般10m内)通信的无线电技术,工作在全球可用的2.4GHz无线波段,能够在手机、笔记本电脑、无线耳机、车载工具等具备蓝牙功能的设备(如简称为蓝牙设备)之间进行数据传输。
配对的蓝牙设备间需要采用相同的profile,才能实现对应的应用服务(比如,实现蓝牙设备间通信录同步)。通常,配对的蓝牙设备间会采用双方均支持的最高版本的profile,实现对应的应用服务。然而,实际使用过程中,蓝牙设备可能对最高版本的profile支持效果不好,导致应用服务出现异常,如通讯录同步失败,影响蓝牙服务的质量。
发明内容
本申请提供一种profile版本确定方法、系统、电子设备及计算机存储介质,改善配对的蓝牙设备间应用服务使用异常,提高蓝牙服务质量。
本申请采用如下技术方案:
第一方面,本申请实施例提供一种profile版本确定方法,所述方法包括:电子设备与外接设备之间建立ACL链路;所述外接设备向所述电子设备发送SDP请求信息;其中,所述SDP请求信息用于查询所述电子设备对PBAP的支持能力;所述电子设备向所述外接设备发送第一SDP响应信息;其中,所述第一SDP响应信息包括第一PBAP标识;所述第一PBAP标识是所述电子设备支持的最高PBAP版本的标识;所述外接设备根据所述第一PBAP标识及所述外接设备支持的最高PBAP版本,采用第一PBAP版本向所述电子设备请求通讯录同步服务;所述电子设备根据所述第一PBAP版本向所述外接设备提供所述通讯录同步服务;在所述通讯录同步服务出现异常的情况下,所述外接设备向所述电子设备发送所述SDP请求信息;所述电子设备向所述外接设备发送第二SDP响应信息;其中,所述第二SDP响应信息包括第二PBAP标识;所述第二PBAP标识包括第二版本号,或包括第一版本号和取值为第二值的特定指示位;所述第一版本号为所述第一PBAP版本的版本号;所述外接设备根据所述第二PBAP标识,采用第二PBAP版本向所述电子设备请求所述通讯录同步服务;其中,所述第一PBAP版本与所述第二PBAP版本不同;所述电子设备根据所述第二PBAP版本向所述外接设备提供所述通讯录同步服务。
在上述实施例中,正常情况下,通过SDP协商,电子设备和外接设备之间根据电子设备支持的最高PBAP版本和外接设备支持的最高PBAP版本,确定实现通讯录同步服务的实际PBAP版本,也即,确定出第一PBAP版。但是,在采用第一PBAP版本实现通讯录同步服务期间,如果出现异常,那么电子设备与外接设备之间下一次SDP协商会更换实现通讯录同步服务的实际PBAP版本。也即,将实际PBAP版本从第一PBAP协议变更为第二PBAP协议。从而,将电子设备与外接设备之间对PBAP版本的支持效果,动态地结合到选择PBAP的实际使用版本的过程中。充分考虑到电子设备与外接设备的最高支持能力和实际支持效果,改善配对的蓝牙设备间通讯录同步服务使用持续异常的问题,提升蓝牙服务质量。
结合第一方面,在一种可能的设计方式中,在所述电子设备根据所述第一PBAP版本向所述外接设备提供所述通讯录同步服务期间,所述方法还包括:所述电子设备判断所述通讯录同步服务是否出现异常;
在所述通讯录同步服务出现异常的情况下,所述方法还包括:所述电子设备对所述外接设备进行标记;
所述电子设备向所述外接设备发送第二SDP响应信息,包括:所述电子设备在确定所述外接设备是被标记的设备时,向所述外接设备发送所述第二SDP响应信息。
上述实施例中,通过对异常外接设备的标记,避免下次SDP协商时继续将第一PBAP版本确定为实际使用的PBAP版本。如此,用户通过重连接电子设备和外接设备即可调整实际使用的PBAP版本。这也意味着,用户通过重匹配的方式即可改善通信录同步服务异常,提高用户使用体验。
结合第一方面,在一种可能的设计方式中,所述电子设备判断所述通讯录同步服务是否出现异常,包括:
所述电子设备监测与外接设备之间的所述ACL链路是否断开;其中,在所述ACL链路断开时,确定所述通讯录同步服务出现异常。
上述实施例中,结合通讯录同步服务出现异常时的特征,采用能够准确识别异常的方式,监控通信录同步服务是否正常进行,从而提升监控异常的准确性。
结合第一方面,在一种可能的设计方式中,所述电子设备对所述外接设备进行标记,包括:
在连续检测到N次所述通讯录同步服务异常的情况下,记录所述外接设备的设备标识,或对应记录所述外接设备的设备标识和异常原因;其中,N为不小于2的整数。
在上述实施例中,通过在连续多次出现异常的情况下,才对外接设备进行标记。提升对PBAP版本导致的通讯录同步服务异常的识别准确性,一定程度上可以避免不必要的PBAP版本变更。
结合第一方面,在一种可能的设计方式中,所述第一版本号为PBAP1.2;所述第二版本号为PBAP1.1。
在上述实施例中,可以有效解决电子设备与外接设备间使用PBAP1.2出现异常的问题。
结合第一方面,在一种可能的设计方式中,在所述采用第一PBAP版本向所述电子设备请求通讯录同步服务之前,所述方法还包括:
所述外接设备显示第一提示信息;其中,所述第一提示信息用于询问是否请求所述通讯录同步服务;
所述外接设备接收用户同意请求所述通讯录同步服务的操作。
结合第一方面,在一种可能的设计方式中,在所述电子设备根据所述第一PBAP版本向所述外接设备提供所述通讯录同步服务之前,所述方法还包括:
所述电子设备显示第二提示信息,所述第二提示信息用于询问是否同意所述外接设备所请求的通讯录同步服务;
所述电子设备接收用户同意所述外接设备所请求的通讯录同步服务的操作。
结合第一方面,在一种可能的设计方式中,所述电子设备根据所述第一PBAP版本向所述外接设备提供所述通讯录同步服务,包括:
所述电子设备通过第一协议通路向所述外接设备提供所述通讯录同步服务;其中,所述第一协议通路包括数据格式处理、OBEX协议、GOEPv2.0协议及L2CAP协议;
所述电子设备根据所述第二PBAP版本向所述外接设备提供所述通讯录同步服务,包括:
所述电子设备通过第二协议通路向所述外接设备提供所述通讯录同步服务;其中,所述第二协议通路涉及数据格式处理、OBEX协议、GOEP v1.0协议、RFCOMM协议及L2CAP协议。
在上述实施例中,通过对协议通道的调整,改善由设备性能不足所导致的通讯录同步服务异常。
第二方面,本申请实施例提供一种profile版本确定方法,应用于电子设备,所述电子设备与外接设备之间已建立ACL链路,所述方法包括:
接收到所述外接设备发送SDP请求信息;其中,所述SDP请求信息用于查询所述电子设备对PBAP的支持能力;
向所述外接设备发送第一SDP响应信息;其中,所述第一SDP响应信息包括第一PBAP标识;所述第一PBAP标识是所述电子设备支持的最高PBAP版本的标识;
接收所述外接设备采用第一PBAP版本发出的通讯录同步请求;其中,所述第一PBAP版本是所述外接设备根据所述第一PBAP标识及所述外接设备支持的最高PBAP版本确定出的PBAP版本;
根据所述第一PBAP版本向所述外接设备提供所述通讯录同步服务;
在所述通讯录同步服务期间出现异常,且再次接收到所述外接设备发送所述SDP请求信息的情况下,向所述外接设备发送第二SDP响应信息;其中,所述第二SDP响应信息包括第二PBAP标识;所述第二PBAP标识包括第二版本号,或包括第一版本号和取值为第二值的特定指示位;所述第一版本号为所述第一PBAP版本的版本号;
接收所述外接设备采用第二PBAP版本发送的所述通讯录同步请求;其中,所述第一PBAP版本与所述第二PBAP版本不同;所述第二PBAP版本是所述外接设备根据所述第二PBAP标识确定出的版本;
根据所述第二PBAP版本向所述外接设备提供所述通讯录同步服务。
结合第二方面,在一种可能的设计方式中,在根据所述第一PBAP版本向所述外接设备提供所述通讯录同步服务期间,所述方法还包括:判断所述通讯录同步服务是否出现异常;
在判断所述通讯录同步服务出现异常的情况下,所述方法还包括:对所述外接设备进行标记;
所述向所述外接设备发送第二SDP响应信息,包括:在确定所述外接设备是被标记的设备时,向所述外接设备发送所述第二SDP响应信息。
结合第二方面,在一种可能的设计方式中,所述判断所述通讯录同步服务是否出现异常,包括:
监测与外接设备之间的所述ACL链路是否断开;其中,在所述ACL链路断开时,确定所述通讯录同步服务出现异常。
结合第二方面,在一种可能的设计方式中,所述对所述外接设备进行标记,包括:
在连续检测到N次所述通讯录同步服务异常的情况下,记录所述外接设备的设备标识,或对应记录所述外接设备的设备标识和异常原因;其中,N为不小于2的整数。
结合第二方面,在一种可能的设计方式中,所述第一版本号为PBAP1.2;所述第二版本号为PBAP1.1。
结合第二方面,在一种可能的设计方式中,在根据所述第一PBAP版本向所述外接设备提供所述通讯录同步服务之前,所述方法还包括:
显示第二提示信息,所述第二提示信息用于询问是否同意所述通讯录同步请求;
接收用户同意所述通讯录同步请求的操作。
结合第二方面,在一种可能的设计方式中,所述根据所述第一PBAP版本向所述外接设备提供所述通讯录同步服务,包括:
通过第一协议通路向所述外接设备提供所述通讯录同步服务;其中,所述第一协议通路包括数据格式处理、OBEX协议、GOEPv2.0协议及L2CAP协议;
所述根据所述第二PBAP版本向所述外接设备提供所述通讯录同步服务,包括:
通过第二协议通路向所述外接设备提供所述通讯录同步服务;其中,所述第二协议通路涉及数据格式处理、OBEX协议、GOEP v1.0协议、RFCOMM协议及L2CAP协议。
第三方面,本申请实施例提供一种profile版本确定系统,所述系统包括:电子设备与外接设备;所述电子设备与所述外接设备之间建立ACL链路;
所述外接设备,用于向所述电子设备发送SDP请求信息;其中,所述SDP请求信息用于查询所述电子设备对PBAP的支持能力;
所述电子设备,用于向所述外接设备发送第一SDP响应信息;其中,所述第一SDP响应信息包括第一PBAP标识;所述第一PBAP标识是所述电子设备支持的最高PBAP版本的标识;
所述外接设备,还用于根据所述第一PBAP标识及所述外接设备支持的最高PBAP版本,采用第一PBAP版本向所述电子设备请求通讯录同步服务;
所述电子设备,还用于根据所述第一PBAP版本向所述外接设备提供所述通讯录同步服务;
所述外接设备,还用于在所述通讯录同步服务出现异常的情况下,向所述电子设备发送所述SDP请求信息;
所述电子设备,还用于向所述外接设备发送第二SDP响应信息;其中,所述第二SDP响应信息包括第二PBAP标识;所述第二PBAP标识包括第二版本号,或包括第一版本号和取值为第二值的特定指示位;所述第一版本号为所述第一PBAP版本的版本号;
所述外接设备,还用于根据所述第二PBAP标识,采用第二PBAP版本向所述电子设备请求所述通讯录同步服务;其中,所述第一PBAP版本与所述第二PBAP版本不同;
所述电子设备,还用于根据所述第二PBAP版本向所述外接设备提供所述通讯录同步服务。
结合第三方面,在一种可能的设计方式中,所述电子设备,还用于在所述电子设备根据所述第一PBAP版本向所述外接设备提供所述通讯录同步服务期间,判断所述通讯录同步服务是否出现异常;
所述电子设备,还用于在所述通讯录同步服务出现异常的情况下,对所述外接设备进行标记;
所述电子设备,还用于在确定所述外接设备是被标记的设备时,向所述外接设备发送所述第二SDP响应信息。
结合第三方面,在一种可能的设计方式中,所述电子设备,还用于监测与外接设备之间的所述ACL链路是否断开;其中,在所述ACL链路断开时,确定所述通讯录同步服务出现异常。
结合第三方面,在一种可能的设计方式中,所述电子设备还用在连续检测到N次所述通讯录同步服务异常的情况下,记录所述外接设备的设备标识,或对应记录所述外接设备的设备标识和异常原因;其中,N为不小于2的整数。
结合第三方面,在一种可能的设计方式中,所述第一版本号为PBAP1.2;所述第二版本号为PBAP1.1。
结合第三方面,在一种可能的设计方式中,在所述采用第一PBAP版本向所述电子设备请求通讯录同步服务之前,所述外接设备,还用于显示第一提示信息;其中,所述第一提示信息用于询问是否请求所述通讯录同步服务;
所述外接设备,还用于接收用户同意请求所述通讯录同步服务的操作。
结合第三方面,在一种可能的设计方式中,在所述电子设备根据所述第一PBAP版本向所述外接设备提供所述通讯录同步服务之前,所述电子设备,还用于显示第二提示信息,所述第二提示信息用于询问是否同意所述外接设备所请求的通讯录同步服务;
所述电子设备,还用于接收用户同意所述外接设备所请求的通讯录同步服务的操作。
结合第三方面,在一种可能的设计方式中,所述电子设备,还用于通过第一协议通路向所述外接设备提供所述通讯录同步服务;其中,所述第一协议通路包括数据格式处理、OBEX协议、GOEPv2.0协议及L2CAP协议;
所述电子设备,还用于通过第二协议通路向所述外接设备提供所述通讯录同步服务;其中,所述第二协议通路涉及数据格式处理、OBEX协议、GOEP v1.0协议、RFCOMM协议及L2CAP协议。
第四方面,本申请实施例提供一种电子设备,所述电子设备包括一个或多个处理器及一个或多个存储器;所述一个或多个存储器与所述一个或多个处理器耦合,所述一个或多个存储器用于存储计算机程序代码,所述计算机程序代码包括计算机指令,当所述一个或多个处理器执行所述计算机指令时,实现如第一方面或第一方面的可能的实现方式中任一项所述的方法;或者实现如第二方面或第二方面的可能的实现方式中任一项所述的方法。
第五方面,本申请实施例提供一种profile版本确定方法,所述方法包括:
电子设备与外接设备之间建立ACL链路;
所述外接设备向所述电子设备发送SDP请求信息;其中,所述SDP请求信息用于查询所述电子设备对免提通话协议HFP的支持能力;
所述电子设备向所述外接设备发送第一SDP响应信息;其中,所述第一SDP响应信息包括第一HFP标识;所述第一HFP标识是所述电子设备支持的最高HFP版本的标识;
所述外接设备根据所述第一HFP标识及所述外接设备支持的最高HFP版本,采用第一HFP版本向所述电子设备请求通话控制服务;
所述电子设备根据所述第一HFP版本向所述外接设备提供所述通话控制服务;
在所述通话控制服务出现异常的情况下,所述外接设备向所述电子设备发送所述SDP请求信息;
所述电子设备向所述外接设备发送第二SDP响应信息;其中,所述第二SDP响应信息包括第二HFP标识;
所述外接设备根据所述第二HFP标识,采用第二HFP版本向所述电子设备请求所述通话控制服务;其中,所述第二HFP版本低于所述第一HFP版本;
所述电子设备根据所述第二HFP版本向所述外接设备提供所述通话控制服务。
结合第五方面,在一种可能的设计方式中,
在所述电子设备根据所述第一HFP版本向所述外接设备提供所述通话控制服务期间,所述方法还包括:所述电子设备判断所述通话控制服务是否出现异常;
在所述通话控制服务出现异常的情况下,所述方法还包括:所述电子设备对所述外接设备进行标记;
所述电子设备向所述外接设备发送第二SDP响应信息,包括:所述电子设备在确定所述外接设备是被标记的设备时,向所述外接设备发送所述第二SDP响应信息。
结合第五方面,在一种可能的设计方式中,
所述电子设备判断所述通话控制服务是否出现异常,包括:
所述电子设备监测是否出现无声上行事件;其中,在出现无声上行事件时,确定所述通话控制服务出现异常。
结合第五方面,在一种可能的设计方式中,所述电子设备对所述外接设备进行标记,包括:
在连续检测到N次无声上行事件的情况下,记录所述外接设备的设备标识,或对应记录所述外接设备的设备标识和异常原因;其中,N为不小于2的整数。
结合第五方面,在一种可能的设计方式中,所述第一HFP版本的版本号为HFP1.7;所述第二HFP版本的版本号为HFP1.6。
结合第五方面,在一种可能的设计方式中,在所述采用第一HFP版本向所述电子设备请求通话控制服务之前,所述方法还包括:
所述外接设备显示第一提示信息;其中,所述第一提示信息用于询问是否请求所述通话控制服务;
所述外接设备接收用户同意请求所述通话控制服务的操作。
结合第五方面,在一种可能的设计方式中,在所述电子设备根据所述第一HFP版本向所述外接设备提供所述通话控制服务之前,所述方法还包括:
所述电子设备显示第二提示信息,所述第二提示信息用于询问是否同意所述外接设备所请求的通话控制服务;
所述电子设备接收用户同意所述外接设备所请求的通话控制服务的操作。
第六方面,本申请实施例提供了一种profile版本确定方法,应用于电子设备,所述电子设备与外接设备之间已建立ACL链路,所述方法包括:
接收到所述外接设备发送SDP请求信息;其中,所述SDP请求信息用于查询所述电子设备对HFP的支持能力;
向所述外接设备发送第一SDP响应信息;其中,所述第一SDP响应信息包括第一HFP标识;所述第一HFP标识是所述电子设备支持的最高HFP版本的标识;
接收所述外接设备采用第一HFP版本发出的通话控制请求;其中,所述第一HFP版本是所述外接设备根据所述第一HFP标识及所述外接设备支持的最高HFP版本确定出的HFP版本;
根据所述第一HFP版本向所述外接设备提供所述通话控制服务;
在所述通话控制服务期间出现异常,且再次接收到所述外接设备发送所述SDP请求信息的情况下,向所述外接设备发送第二SDP响应信息;其中,所述第二SDP响应信息包括第二HFP标识;
接收所述外接设备采用第二HFP版本发送的所述通话控制请求;其中,所述第一HFP版本与所述第二HFP版本不同;所述第二HFP版本是所述外接设备根据所述第二HFP标识确定出的版本;
根据所述第二HFP版本向所述外接设备提供所述通话控制服务。
结合第六方面,在一种可能的设计方式中,
在根据所述第一HFP版本向所述外接设备提供所述通话控制服务期间,所述方法还包括:判断所述通话控制服务是否出现异常;
在判断所述通话控制服务出现异常的情况下,所述方法还包括:对所述外接设备进行标记;
所述向所述外接设备发送第二SDP响应信息,包括:在确定所述外接设备是被标记的设备时,向所述外接设备发送所述第二SDP响应信息。
结合第六方面,在一种可能的设计方式中,
所述判断所述通话控制服务是否出现异常,包括:
监测是否出现无声上行事件;其中,在出现无声上行事件时,确定所述通话控制服务异常。
结合第六方面,在一种可能的设计方式中,
所述对所述外接设备进行标记,包括:
在连续检测到N次无声上行事件的情况下,记录所述外接设备的设备标识,或对应记录所述外接设备的设备标识和异常原因;其中,N为不小于2的整数。
结合第六方面,在一种可能的设计方式中,
所述第一HFP版本的版本号为HFP1.7;所述第二HFP版本的版本号为HFP1.6。
结合第六方面,在一种可能的设计方式中,在根据所述第一HFP版本向所述外接设备提供所述通话控制服务之前,所述方法还包括:
显示第二提示信息,所述第二提示信息用于询问是否同意所述通话控制请求;
接收用户同意所述通话控制请求的操作。
第七方面,本申请实施例提供一种计算机存储介质,该计算机存储介质包括计算机指令,当所述计算机指令在电子设备上运行时,使得所述电子设备执行如第二方面或第二方面的可能的实现方式中任一项所述的方法;再或者实现如第六方面或第六方面的可能的实现方式中任一项所述的方法。
第八方面,本申请实施例提供一种计算机程序产品,当所述计算机程序产品在计算机上运行时,使得所述计算机执行如第一方面或第一方面的可能的实现方式中任一项所述的方法;或者实现如第二方面或第二方面的可能的实现方式中任一项所述的方法;再或者实现如第五方面或第五方面的可能的实现方式中任一项所述的方法;再或者实现如第六方面或第六方面的可能的实现方式中任一项所述的方法。
可以理解地,上述提供的第三方面及其任一种可能的设计方式所述的系统,第四方面所述的电子设备,第七方面所述的计算机存储介质,以及第八方面所述的计算机程序产品均用于执行上文所提供的对应的方法,因此,其所能达到的有益效果可参考上文所提供的对应的方法中的有益效果,此处不再赘述。
附图说明
图1为相关技术中提供的电子设备与外接设备间确定profile版本的交互图;
图2为本申请实施例的系统架构的简化示意图;
图3为本申请实施例提供的电子设备与外接设备间确定profile版本的交互图;
图4为本申请实施例提供的手机的结构示意图;
图5为本申请实施例提供的电子设备与外接设备间确定PBAP版本的交互图;
图6为本申请实施例提供的终端设备的界面示例图之一;
图7为本申请实施例提供的终端设备的界面示例图之二;
图8为本申请实施例中通讯录同步服务期间手机显示界面的示例图;
图9为本申请实施例中手机向用户显示的通讯录同步服务提醒的示例图;
图10为本申请实施例中的PBAP结构示例图;
图11为本申请实施例中按照第一PBAP版本实现通讯录同步服务时涉及的协议通路示例图;
图12为本申请实施例中通讯录同步服务期间的示例图;
图13为本申请实施例中按照第二PBAP版本实现通讯录同步服务时涉及的协议通路示例图;
图14为本申请实施例提供的电子设备与外接设备间确定HFP版本的交互图;
图15为本申请实施例提供的一种芯片系统的组成示意图。
具体实施方式
通常情况下,在具有蓝牙功能的电子设备和外接设备之间进行数据传输之前,必须进行配对连接。上述电子设备与外接设备也可以统称为蓝牙设备。为了使配对的蓝牙设备之间能够实现互操作,蓝牙技术联盟(Bluetooth Special Interest Group,SIG)制定了蓝牙技术规范。
蓝牙技术规范包括核心协议(protocol)和应用协议(profile)两个部分。核心协议包含蓝牙协议栈中最低的4个层(Layer)、一个基本的服务发现协议(Service DiscoverProtocol,SDP),以及所有profile的基础通用访问配置文件(General Access Profile,GAP)。核心协议是蓝牙协议栈中必不可少的。
除了核心协议外,蓝牙技术规范必须包含一些其他的应用层的服务和协议,如称为profile,或称为应用层profile。profile可以包括电话号码簿访问协议(phonebookaccess profile,PBAP)、免提通话协议(hands-freeprofile,HFP)、对象传输协议(ObjectPush Profile,OPP)等类型。
每一类profile可以理解为用于实现一类应用服务的协议栈。比如,PBAP是用于实现通讯录同步的协议栈。再如,HFP是用于实现通话控制(如接听、挂断、拒接、语音拨号等)的协议栈。
互操作的蓝牙设备之间需要使用同版本的协议栈。比如,在外接设备需对电子设备进行通话控制的情况下,电子设备和外接设备都需要使用同版本的HFP。当然,实现不同的应用服务需要不同的协议栈。比如,实现通话控制服务需要使用HFP,而实现同步通讯录服务需要使用PBAP。
电子设备和外接设备在使用profile实现应用服务之前,双方可以就各自所支持的profile进行协商。例如,任何两个或多个蓝牙设备之间在建立了无异步连接(AsynchronousConnectionless,ACL)链路后,通过蓝牙技术框架中的SDP可查询到设备信息和支持的profile,从而在蓝牙设备间建立起相应的连接。
作为一种示例,如图1所示,在电子设备与外接设备之间建立ACL链路之后,外接设备可向电子设备发送SDP请求信息。其中,SDP请求信息用于指示查询电子设备对profile的支持能力。在一些实施例中,可以用于查询电子设备可支持的所有profile。在另一些实施例中,也可以是用于查询特定的profile。
电子设备在接收到SDP请求信息后,可以向外接设备发送SDP响应信息。其中,SDP响应信息包括电子设备支持的最高profile版本。比如,在查询电子设备所支持的所有profile的场景下,SDP响应信息包括电子设备支持的所有profile的最高版本信息。再比如,在查询特定profile的场景下,SDP响应信息包括电子设备支持的特定profile的最高版本信息。
其中,电子设备可以根据自身维护的服务记录(server record)列表及SDP请求信息,确定出电子设备支持的最高profile版本。上述server record列表可以包括多个server record条目,每个server record条目包含一个类型的应用服务的信息。每个server record条目可以由多条服务属性(Service Attribute)组成,每个ServiceAttribute描述了一个应用服务的单项特征。
例如,SDP请求信息指示查询PBAP及HFP。通过电子设备内维护的server record列表,查询电子设备所支持的最高PBAP版本、最高HFP版本。
通过SDP请求信息和SDP响应信息的交互,外接设备可判断出与电子设备间共同支持的最高profile版本。如此,外接设备可以按照确定出的共同支持的最高profile版本,请求对应的应用服务。然后,电子设备也按照与外接设备间共同支持的最高profile版本,向外接设备提供对应的应用服务,从而建立起一条对应所需要服务的通信信道。
也即,将共同支持的最高profile版本确定为蓝牙设备间实现对应的应用服务的实际使用版本。
显然,相关技术中,将共同支持的最高profile版本作为实际使用版本,本质上来说,是依据电子设备和外接设备的静态能力属性确定各类profile的实际使用版本。其中,静态能力属性是指蓝牙设备未工作时测出的能力特性,表征蓝牙设备“能不能”支持的属性。比如,静态能力属性可以是蓝牙设备的最高支持能力。
以确定电子设备和外接设备之间PBAP的实际使用版本举例,参照表1:
表1
电子设备的最高支持版本 | 外接设备的最高支持版本 | 实际使用版本 |
PBAP1.2 | PBAP1.2 | PBAP1.2 |
PBAP1.1 | PBAP1.2 | PBAP1.1 |
PBAP1.2 | PBAP1.1 | PBAP1.1 |
PBAP1.1 | PBAP1.1 | PBAP1.1 |
如表1,PBAP1.2是目前PBAP的最高版本,如果电子设备和外接设备都支持PBAP1.2,那么协商出的实际使用版本为PBAP1.2。如果电子设备最高支持PBAP1.2,而外接设备最高支持PBAP1.1,那么协商出的实际使用版本为PBAP1.1。如果外接设备最高支持PBAP1.2,而电子设备最高支持PBAP1.1,那么协商出的实际使用版本为PBAP1.1。
然而,蓝牙设备间实际对profile版本的支持效果由动态能力属性体现。其中,动态能力属性是指蓝牙设备实际工作中体现出的实际能力,是表征蓝牙设备支持效果“好不好”的属性。
比如,电子设备和外接设备都支持PBAP1.2,但是外接设备实际使用PBAP1.2的过程表现却很差(如通讯录同步中出现异常),那么外接设备的动态能力属性表征外接设备并不适合采用PBAP1.2。
但是,相关技术中,利用SDP协商实际使用版本时,并不会考虑蓝牙设备的动态能力属性,因此,双方采用均支持的PBAP1.2实现通讯录同步时,依然会出现通讯录同步异常。
面对通讯录同步异常的情况,用户即便是采用重匹配的方式进行自恢复。即,通过将电子设备和外接设备断开重连,触发新一轮SDP协商。在新一轮SDP协商中,蓝牙设备间依然会选择PBAP1.2作为实际使用版本。这也意味着,再次进行通讯录同步时依然可能出现异常。当然,不止是PBAP,其他类型的profile也存在同样的问题。
显然,相关技术中,不够灵活的profile版本确定方式,直接影响到蓝牙服务的质量。
为了改善配对的蓝牙设备间应用服务使用异常的问题,提高蓝牙服务质量,本申请实施例提供一种profile版本确定方法,在检测到通过profile实现的应用服务异常的情况下,更换对应的profile的实际使用版本。从而,将电子设备与外接设备之间对profile版本的支持效果,动态地结合到选择profile的实际使用版本的过程中。充分考虑到电子设备与外接设备的静态能力属性和动态能力属性,改善配对的蓝牙设备间应用服务使用持续异常的问题,提升蓝牙服务质量。此外,用户通过重匹配的方式即可完成对应用服务异常的改善,提高用户使用体验。
图2示出的是可以应用本申请实施例的系统架构的简化示意图。如图2所示,该系统架构可以包括:电子设备和外接设备。
其中,电子设备,指的是支持通过无线通信协议与外接设备建立连接的设备。在具体实现中,该电子设备可以是桌面型、膝上型、平板电脑、手持计算机、手机、笔记本电脑、超级移动个人计算机(Ultra-mobile Personal Computer,UMPC)、上网本,以及蜂窝电话、个人数字助理(Personal Digital Assistant,PDA)、电视机、VR设备、AR设备等等。作为一种示例,图2中以电子设备是手机为例示出。
外接设备,指的是支持通过无线通信协议与电子设备建立连接的设备。在具体实现中,外接设备可以是可穿戴设备、智能眼镜、智能手表、键盘、音响、打印机、智能家居设备、车辆、车载终端、inkcase、耳机、手环等等。电子设备和外接设备两种设备可以互换。智能家居设备可以是饮水机、空调、冰箱等等。作为一种示例,图2中外接设备是车载终端为例示出。
在本申请实施例中,如图3所示,电子设备和外接设备之间的ACL链路建立之后,外接设备向电子设备发送第一SDP请求信息。电子设备在接收到第一SDP请求信息后,向外接设备发送第一SDP响应信息。其中,第一SDP请求信息用于查询电子设备对profile的支持能力。第一SDP响应信息中携带有第一标识。第一标识是电子设备支持的最高profile版本的标识。
如此,外接设备可以根据第一标识,确定出电子设备与外接设备之间共同支持的最高profile版本,又称为第一协议版本。示例性的,外接设备可以将第一标识指代的profile版本与外接设备支持的最高profile版本进行比较,从中确定出较低的profile版本,以得到第一协议版本。
此后,外接设备可以按照第一协议版本的规范向电子设备请求对应的应用服务,又称为第一应用服务。之后电子设备也可以按照第一协议版本的规范向外接设备提供该第一应用服务。
在提供第一应用服务的期间,电子设备可以侦测第一应用服务是否出现异常。其中,可以根据第一应用服务类型的不同,采用适宜的策略判断第一应用服务是否出现异常。
若电子设备侦测到第一应用服务期间出现异常,那下一次接收到外接设备发送的SDP请求信息,将被电子设备视为第二SDP请求信息。
通常,电子设备和外接设备之间的重匹配,可以触发外接设备再次向电子设备发送SDP请求信息。当然,也可以是电子设备与外接设备间ACL链路未断开时,车载终端再次向手机发送SDP请求信息。
在一些场景下,上述重匹配可以是由于第一应用服务的异常导致的ACL链路断开重连。在另一些场景下,上述重匹配还可以是由用户手动触发的ACL链路断开重连。
在电子设备在接收到第二SDP请求信息后,可向外接设备发送第二SDP响应信息。其中,第二SDP响应信息可以包括第二标识。上述第二标识为第二协议版本的标识。第二协议版本与第一协议版本不同,且不高于第一协议版本。电子设备通过第二SDP响应信息指示外接设备采用第二协议版本实现第一应用服务。
可以理解的,外接设备接收到第二SDP响应信息后,也会将第二标识指代的第二协议版本与外接设备支持的最高profile版本进行比较,并从中选出较低的profile版本。由于外接设备支持的最高profile版本不低于第一协议版本,同时,第一协议版本也不低于第二协议版本,故,外接设备经过比较后,会将第二协议版本作为profile的实际使用版本。
也即,外接设备可以按照第二协议版本的规范向电子设备请求第一应用服务。之后,电子设备也会按照第二协议版本的规范向外接设备提供第一应用服务。
也即,双方协定按照第二协议版本的规范实现第一应用服务。
可见,接收到第二SDP请求信息时,电子设备已知晓与外接设备间对第一协议版本的支持效果并不理想。为了避免再次选用第一协议版本,导致异常周而复始的出现,电子设备通过第二SDP响应信息的第二标识,使外接设备采用不同的profile版本请求对应应用服务。通过对协议的调整,改善蓝牙设备间版本支持效果不好的问题,提高蓝牙服务的质量。
为了便于理解,在本申请实施例中以电子设备为手机为例进行说明。下面结合附图对手机的各个构成部件进行具体的介绍:
如图4所示,手机可以包括处理器110,外部存储器接口120,内部存储器121,通用串行总线(universal serial bus,USB)接口130,充电管理模块140,电源管理模块141,电池142,天线1,天线2,移动通信模块150,无线通信模块160,音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,传感器模块180,按键190,马达191,指示器192,摄像头193,显示屏194,以及用户标识模块(subscriber identification module,SIM)卡接口195等。其中,传感器模块180可以包括压力传感器180A,陀螺仪传感器180B,气压传感器180C,磁传感器180D,加速度传感器180E,距离传感器180F,接近光传感器180G,指纹传感器180H,温度传感器180J,触摸传感器180K,环境光传感器180L,骨传导传感器180M等。
可以理解的是,本发明实施例示意的结构并不构成对手机的具体限定。在本申请另一些实施例中,手机可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
处理器110可以包括一个或多个处理单元,例如:处理器110可以包括应用处理器(application processor,AP),调制解调处理器,图形处理器(graphics processingunit,GPU),图像信号处理器(image signal processor,ISP),控制器,存储器,视频编解码器,数字信号处理器(digital signal processor,DSP),基带处理器,和/或神经网络处理器(neural-network processing unit,NPU)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。
处理器110中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器110中的存储器为高速缓冲存储器。该存储器可以保存处理器110刚用过或循环使用的指令或数据。
在一些实施例中,处理器110可以包括一个或多个接口。接口可以包括集成电路(inter-integrated circuit,I2C)接口,集成电路内置音频(inter-integrated circuitsound,I2S)接口,脉冲编码调制(pulse code modulation,PCM)接口,通用异步收发传输器(universal asynchronous receiver/transmitter,UART)接口,移动产业处理器接口(mobile industry processor interface,MIPI),通用输入输出(general-purposeinput/output,GPIO)接口,用户标识模块(subscriber identity module,SIM)接口,和/或通用串行总线(universal serial bus,USB)接口等。
可以理解的是,本发明实施例示意的各模块间的接口连接关系,只是示意性说明,并不构成对手机的结构限定。在本申请另一些实施例中,手机也可以采用上述实施例中不同的接口连接方式,或多种接口连接方式的组合。
手机的无线通信功能可以通过天线1,天线2,移动通信模块150,无线通信模块160,调制解调处理器以及基带处理器等实现。
其中,天线1和天线2用于发射和接收电磁波信号。移动通信模块150可以提供应用在手机上的包括2G/3G/4G/5G等无线通信的解决方案。移动通信模块150可以包括至少一个滤波器,开关,功率放大器,低噪声放大器(low noise amplifier,LNA)等。移动通信模块150可以由天线1接收电磁波,并对接收的电磁波进行滤波,放大等处理,传送至调制解调处理器进行解调。移动通信模块150还可以对经调制解调处理器调制后的信号放大,经天线1转为电磁波辐射出去。在一些实施例中,移动通信模块150的至少部分功能模块可以被设置于处理器110中。在一些实施例中,移动通信模块150的至少部分功能模块可以与处理器110的至少部分模块被设置在同一个器件中。
调制解调处理器可以包括调制器和解调器。其中,调制器用于将待发送的低频基带信号调制成中高频信号。解调器用于将接收的电磁波信号解调为低频基带信号。随后解调器将解调得到的低频基带信号传送至基带处理器处理。低频基带信号经基带处理器处理后,被传递给应用处理器。应用处理器通过音频设备(不限于扬声器170A,受话器170B等)输出声音信号,或通过显示屏194显示图像或视频。在一些实施例中,调制解调处理器可以是独立的器件。在另一些实施例中,调制解调处理器可以独立于处理器110,与移动通信模块150或其他功能模块设置在同一个器件中。
无线通信模块160可以提供应用在手机上的包括无线局域网(wireless localarea networks,WLAN)(如无线保真(wireless fidelity,Wi-Fi)网络),蓝牙(bluetooth,BT),全球导航卫星系统(global navigation satellite system,GNSS),调频(frequencymodulation,FM),近距离无线通信技术(near field communication,NFC),红外技术(infrared,IR)等无线通信的解决方案。无线通信模块160可以是集成至少一个通信处理模块的一个或多个器件。无线通信模块160经由天线2接收电磁波,将电磁波信号调频以及滤波处理,将处理后的信号发送到处理器110。无线通信模块160还可以从处理器110接收待发送的信号,对其进行调频,放大,经天线2转为电磁波辐射出去。
在一些实施例中,手机的天线1和移动通信模块150耦合,天线2和无线通信模块160耦合,使得手机可以通过无线通信技术与网络以及其他设备通信。例如,在本申请实施例中,手机可以利用无线通信模块160,通过无线通信技术,如蓝牙(BT)与外接设备(比如,车载终端)建立无线连接。基于建立的无线连接,手机可以向外接设备发送语音数据,还可以接收来自外接设备的语音数据。
手机可以通过音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,以及应用处理器等实现音频功能。例如音乐播放,录音等。
在本申请实施例中,当手机与外接设备(如车载终端)建立了无线连接时,车载终端可以作为手机的音频输入/输出设备使用。示例性的,音频模块170可以接收无线通信模块160传递的音频电信号,实现通过车载终端接听电话、播放音乐等功能。例如,在用户打电话的过程中,车载终端可以采集用户的声音信号,并转换为音频电信号后发送给手机的无线通信模块160。无线通信模块160将该音频电信号传输给音频模块170。音频模块170可以将接收到的音频电信号转换为数字音频信号,并进行编码后传递至移动通信模块150。由移动通信模块150传输至通话对端设备,以实现通话。又例如,用户在使用手机的媒体播放器播放音乐时,应用处理器可以将媒体播放器播放的音乐对应的音频电信号传输至音频模块170。由音频模块170将该音频电信号传输至无线通信模块160。无线通信模块160可以将音频电信号发送给车载终端,以便车载终端将该音频电信号转换为声音信号后播放。
本申请实施例提供了一种profile版本确定方法,可以由电子设备和已蓝牙配对的外接设备配合实现。例如,可以由图4所示的手机和已蓝牙配对的车载终端配合实现。
上述方法适用于电子设备与外接设备之间共同支持的各类profile。为了便于本领域技术人员的理解,在本申请实施例中,以电子设备为手机,外接设备为车载终端为例进行描述。
在手机与车载终端之间已蓝牙配对(也即,ACL链路建立成功),且共同支持PBAP的情况下,第一应用服务可以是通讯录同步服务。为了方便本领域人员理解,下面以车载终端为通讯录同步服务的请求方,手机为通信录同步服务的提供方为例,描述本申请实施例所提供的profile版本确定方法。
如图5所示,上述profile版本确定方法可以包括以下步骤:
S101,车载终端向手机发送第一SDP请求信息。
在本申请实施例中,第一SDP请求信息可以用于指示查询手机对至少一项profile的支持能力。同时,被查询的至少一项profile中包括PBAP。
示例性地,可以是车载终端通过第一SDP请求信息向手机查询手机所支持的所有profile。如此,在手机支持PBAP的情况下,视被查询的至少一项profile中包括PBAP。
示例性地,可以是车载终端通过第一SDP请求信息向手机指定查询PBAP。如此,也视被查询的至少一项profile中包括PBAP。
当然,在一些可能的实施例中,还可以是车载终端已通过SDP请求信息查询手机所支持的所有profile,且已确定手机支持PBAP的情况下,车载终端可以通过第一SDP请求信息定向查询手机对PBAP的支持能力。
S102,手机向车载终端发送第一SDP响应信息。
其中,上述第一SDP响应信息可以包括第一标识,又称为第一PBAP标识。此外,第一PBAP标识可以是手机支持的最高PBAP版本的标识。
本申请实施例中,在第一SDP请求信息指示查询手机对PBAP的支持能力的情况下,手机可以根据其内维护的server record列表,确定手机可支持的最高PBAP版本。然后,基于手机可支持的最高PBAP版本,确定第一PBAP标识。
例如,第一PBAP标识可以是手机可支持的最高PBAP版本的版本号。再比如,第一PBAP标识可以是手机可支持的最高PBAP版本内的特定指示位。再比如,第一PBAP标识可以包括手机可支持的最高PBAP版本的版本号和特定指示位。
示例性地,在手机最高支持第一版本号的PBAP的情况下,那么手机从serverrecord列表中查询到的匹配条目如表2所示:
表2
其中,表2展示的是手机的蓝牙应用描述列表(Bluetooth profile DescriptorList)。表2显示支持应用(Supported profile)的取值为PBAP。应用版本(profileversion)为第一版本号,在蓝牙应用列表中存在特定指示位(也即,L2Cap PSM),其取值为第一值。结合表2,第一PBAP标识可以包括第一版本号和取第一值的L2Cap PSM。或者,在其他实施例中,第一PBAP标识可以为取第一值的L2Cap PSM。
本申请实施例中,上述第一PBAP标识可以指示车载终端确定手机与车载终端间共同支持的最高PBAB版本,又可称为第一PBAP版本。
故,在接收到第一SDP响应信息后,车载终端可以根据手机支持的最高PBAP版本和车载终端支持的最高PBAP版本,确定出第一PBAP版本(也即,第一协议版本)。并确定采用第一PBAP版本的规范请求通讯录同步服务。
在车载终端按照第一PBAP版本的规范请求通讯录同步服务的情况下,手机也会按照第一PBAP版本的规范向车载终端提供通讯录同步服务。
也就是,通过S101和S102,手机和车载终端可协定采用第一PBAP版本实现通讯录同步服务。
当然,协定实现通讯录同步服务的PBAP版本的方式也不限于此。在另一些实施例中,上述第一SDP请求信息中可以包括车载终端支持的最高PBAP版本的标识。比如,车载终端支持PBAP1.1、PBAP1.2,且PBAP1.2是高于PBAP1.1的版本,那么第一SDP请求信息中可以包括PBAP1.2的版本号。
在第一SDP请求信息中包括车载终端支持的最高PBAP版本的标识的情况下,可以由手机确定车载终端与手机间的第一PBAP版本。并通过第一SDP响应信息,通知车载终端采用第一PBAP版本的规范向手机请求通讯录同步服务。从而实现协定采用第一PBAP版本实现通讯录同步服务。
S103,车载终端按照第一PBAP协议的规范向手机发送通讯录同步请求。
在一些实施例中,车载终端接收到第一SDP响应信息后,车载终端可以自发向手机请求通讯录同步服务,也即,自发向手机发送通讯录同步请求。
当然,在另一些实施例中,车载终端接收到第一SDP响应信息后,车载终端可以显示第一提示信息,第一提示信息用于询问是否请求所述通讯录同步服务。在车载终端接收用户同意请求通讯录同步服务的操作时,向手机发送通讯录同步请求。
例如,车载终端接收到第一SDP响应信息后,如图6所示,车载终端显示的询问框。询问框中包括“是否请求通讯录同步”的文字提示、图标为“是”的第一控件和图标为“否”的第二控件。在接收到用户点击第一控件的情况下,触发向手机发送通讯录同步请求。
在另一些实施例中,车载终端接收到第一SDP响应信息后,车载终端可以展示已有的通讯录数据。在展示已有的通讯录数据的界面上,可以设有更新控件。在接收到用户对更新控件时,触发向手机请求通讯录同步服务,也即车载终端由用户操作触发向手机发送通讯录同步请求。
例如,车载终端接收到第一SDP响应信息后,车载终端在用户的操作下,进入通讯录显示界面。通讯录显示界面如图7所示,通讯录显示界面中除了显示车载终端内已有的通讯录数据外,还显示有更新控件。在用户点击更新控件后,车载终端向手机发送通讯录同步请求。
S104,手机在接收到通讯录同步请求后,向车载终端提供通讯录同步服务。
在手机接收到通讯录同步请求后,可以自动启动向车载终端提供通讯录同步服务。作为一种示例,如图8所示,在手机向车载终端提供通讯录同步服务的过程中,手机可以显示提示信息,以提示手机正处于通讯录同步中。相应的,车载终端也可以显示提示信息,用于显示车载终端正在接收通信录的同步。
在其他一些实施例中,在手机接收到通讯录同步请求后,显示第二提示信息,所述第二提示信息用于询问是否同意车载终端的通讯录同步请求。在手机接收用户同意车载终端的通讯录同步请求的操作后,向车载终端提供通讯录同步服务。
比如,如图9所示,手机上可以显示车载终端的通讯录同步请求,以征求用户的意见。在手机接收到用户同意将手机的通讯录同步到车载终端的操作的情况下,启动向车载终端提供通讯录同步服务。
在手机向车载终端提供通讯录同步服务的过程中,需遵循的PBAP的规定。PBAP组成如图10所示。其中,图10中涉及到应用层、数据格式处理层、对象交换协议(ObjectExchange Protocol,OBEX)、OBEX操作的公共方法(generic object exchange profile,GOEP)、串口仿真协议(Radio Frequency Communications Protocol,RFCOMM)、逻辑链路控制与适配协议(Logical Link Control and Adaptation Protocol,L2CAP)、SDP、链路管理协议(Link Manager protocol,LMP)及基带层。
其中,数据格式处理层用于数据格式的转换,比如,对通讯录数据包的数据格式进行转换。
OBEX,是由红外数据协会(infrared data association,IrDA)制定用于红外数据链路上数据对象交换的会话层协议。蓝牙SIG采纳了该协议,使得原来基于红外链路的OBEX应用有可能方便地移植到蓝牙上或在两者之间进行切换。OBEX是一种高效的二进制协议,采用简单和自发的方式来交换对象。对于OBEX协议而言,手机作为对象交换(也即,通讯录交换)的提供方,扮演服务者(server)的角色,车载终端作为对象交换的接受方,扮演客户端(client)的角色。
对于GOEP而言,可以分为v1.0版本、v1.2版本及其之后的版本。
RFCOMM提供对串口仿真接口(Serial Emulation API),包括对数据信号线和非数据信号线的仿真。它既可以仿真两个设备之间的多个串口,也可以支持多个设备之问的多串口仿真,同时RFCOMM中还提供了对调制解调器的仿真。
逻辑链路控制与适配协议(Logical Link Control and Adaptation Protocol,L2CAP)一个为高层协议屏蔽基带协议的适配协议,位于基带协议之上,属于数据链路层,为高层提供面向连接和面向无连接的数据服务,完成协议复用、分段和重组、服务质量(Quality Of Service,QoS)传输以及组抽象等功能。
基带或链路控制单元(Baseband Link Controller,LC)层,主要进行射频信号与数字或语音信号的相互转化,实现基带协议和其它的底层连接规程。
示例性地,在本申请实施例中,结合图10,手机按照第一PBAP版本提供通讯录同步服务的过程如下:
如图11所示,首先,将每个通讯录数据包按照协议通路①进行处理。
其中,上述协议通路①涉及到数据格式处理、OBEX(server)协议、GOEPv2.0协议(或者在GOEPv2.0之后的版本)及L2CAP协议。
在本申请实施例中,上述通讯录数据包经由数据格式处理、OBEX协议、GOEPv2.0协议(或者在GOEPv2.0之后的版本)、L2CAP协议等处理,以使最终得到的通讯数据包能够符合数据格式处理、OBEX(server)协议、GOEPv2.0协议(或者在GOEPv2.0之后的版本)及L2CAP协议的要求。
其次,将经由协议通路①(也即,第一协议通路)处理的通讯录数据包发送给车载终端。
车载终端接收到通信录数据包后,按照第一PBAP版本接收通讯录同步服务的过程可以是:车载终端按照协议通路②对接收到的通讯录数据包进行解码。其中,协议通路②涉及到L2CAP协议、GOEPv2.0协议(或者在GOEPv2.0之后的版本)、OBEX(client)协议及数据格式处理。
S105,在提供通讯录同步服务期间,手机检测是否出现车机断连。
其中,上述车机断连是指手机与车载终端之间的蓝牙连接断开。
在实际应用中,无论是采用图11中协议通路①对数据进行编码,还是采用协议通路②对数据进行解码,处理速度都很快。然而,部分车载终端的数据处理效率却跟不上。因此,对于部分车载终端而言,即便是车载终端能够支持第一PBAP版本,也会因为数据处理效率跟不上,导致同步失败(也即,服务异常)。
在本申请实施例中,手机提供通讯录同步服务期间,可以实时监测是否出现手机与车载终端之间的断连。
其中,通讯录同步服务期间可以是服务持续的过程中。比如,如图12中的(a)所示,手机向车载终端提供通讯录同步服务开始于第一时刻,通讯录同步服务结束于第二时刻,那第一时刻到第二时刻之间的时段便是通讯录同步服务期间。
其他实施例中,通讯录同步服务期间不仅包括服务持续过程中,还包括服务结束后的指定时长内。接上例,如图12中的(b)所示,设定的指定时长为5s,第一时刻与第三时刻之间的时段便是通讯录同步服务期间。
在通讯录同步服务期间,手机可以在检测到一次车机断连后,对车载终端进行标记,以记录该车载终端对共同支持的最高profile版本支持效果不好。
比如,对车载终端进行标记的方式可以是:将车载终端的设备标识(Identitydocument,ID)及导致服务异常的原因对应记录在预设表格中。从而,实现对应记录车载终端的设备标识和异常原因。
再比如,对车载终端进行标记的方式还可以是:手机可以将车载终端的设备ID,写入对应的设备信息集合。如此,实现对设备标识的记录。其中,上述设备信息集合可以由手机维护(也即,设备信息集合存储于手机内,由手机进行更新)。上述设备信息集合也可以由与手机通讯的云端设备进行维护,对此不作限定。通过将车载终端的设备ID放入设备信息集合,实现记录车载终端的设备标识。
当然,为了提高容错率,手机可以在采用第一PBAP版本实现通讯录同步服务期间,检测到N次车机断连,对车载终端进行标记,以记录该车载终端对共同支持的最高profile版本支持效果不好。其中,N为不小于2的整数。
换句话说,手机可在车机断连次数不少于N次的情况下,对车载终端进行标记。在连续车机断连次数少于N次的情况下,不对车载终端作特殊标记。
在一些实施例中,手机统计手机与车载终端间是否出现N次车机断连的方式可以是:采用第一PBAP版本期间,每出现一次车机断连,则为车载终端对应的断连计数增一。在车载终端的断连计数达到N次时,对车载终端进行标记,并将车载终端的断连次数清零。
在另一些实施例中,手机统计手机与车载终端间是否出现N次车机断连的方式可以是:统计手机与车载终端间是否连续出现N次车机断连。示例性地,采用第一PBAP版本实现通讯录同步服务期间出现第一次车机断连,对车载终端的断连计数计1。手机、车载终端重连后,继续采用第一PBAP版本实现通讯录同步服务期间,如果再次出现车机断连,对车载终端的断连计数计2。相反,如果没出现机车断连(也即通讯录同步服务顺序完成),将异常次数清零。
S106,车载终端向手机发送第二SDP请求信息。
在一些实施例中,通讯录同步服务出现异常的表现是车机断连。车机断连后,如果手机与车载终端之间再次建立ACL链路,车载终端也会再次向手机发送SDP请求信息。
实际上,第一SDP请求信息和第二SDP请求信息都可以用于查询手机对PBAP的支持能力。在手机已对车载终端进行标记的情况下,手机将车载终端发送的SDP请求信息视为第二SDP请求信息,流程进入步骤S107。
也就是,在一些实施例中,上述方法还包括:手机在收到车载终端发送的SDP请求信息后,查询车载终端是否具有标记,如果车载终端具有标记,流程进入步骤S107,如果车载终端不具有标记,流程进入步骤S102。
比如,手机接收到车载终端发送的SDP请求后,查询SDP请求信息中携带的设备ID是否属于预设表格。如果携带的设备ID属于预设表格,且预设表格中记录导致服务异常的原因是机车断连的情况下,流程进入步骤S107。如果携带的设备ID不属于设备信息集合,或者预设表格记录导致服务异常的原因不是机车断连的情况下,流程进入步骤S102。
再比如,手机接收到车载终端发送的SDP请求后,查询SDP请求信息中携带的设备ID是否属于设备信息集合。如果携带的设备ID属于设备信息集合,流程进入步骤S107。如果携带的设备ID不属于设备信息集合,流程进入步骤S102。
S107,手机向车载终端发送第二SDP响应信息。
在本申请实施例中,为了避免车载终端再次确定实际使用版本时,继续选择第一PBAP版本。上述第二SDP响应信息可以包括第二标识,如该第二标识可以为第二PBAP标识。上述第二PBAP标识也即第二PBAP版本的标识。
显然地,第二PBAP版本与第一PBAP版本不同,且第二PBAP版本不高于第一PBAP版本。通过第二PBAP标识可以指示车载终端采用第二PBAP版本请求通讯录同步服务。如此,在第一PBAP版本支持效果不好的情况下,通过将第二PBAP版本选为实际使用版本,改善通讯录同步服务质量,减少出现车机断连的可能。
在一些实施例中,第二PBAP版本与第一PBAP版本之间的不同可以是版本本身的不同。比如,第二PBAP版本和第一PBAP版本所对应的版本号不同。作为一种示例,在此类实施例中,第二PBAP版本可以低于第一PBAP版本,通过降低版本的方式解决蓝牙设备对高版本协议支持效果不佳的问题。
为了使车载终端确定采用第二PBAP版本的规范请求通讯录同步服务,上述第二PBAP标识可以是第二PBAP版本的版本号。
例如,第二版本号低于第一版本号,手机从server record列表中查询到的匹配条目可以如表3:
表3
其中,表3展示的是手机的蓝牙应用描述列表(Bluetooth profile DescriptorList)。表3显示支持应用(Supported profile)的取值为PBAP。应用版本(profileversion)为第二版本号。参考表3,第二PBAP标识可以为表3中的第二版本号。
可以理解的,车载终端确定PBAP的实际使用版本的原理是:根据SDP响应信息中的PBAP版本号和自身支持的最高PBAP版本号,确定实际使用版本。也即,在第二SDP响应信息中的PBAP版本号为第二版本号时,由于车载终端支持的最高PBAP版本的版本号不低于第一版本号,第一版本号不低于第二版本号,故车载终端会将第二PBAP版本确定为实际使用版本。
在一些实施例中,第二PBAP版本与第一PBAP版本之间的不同可以是同版本内特定指示位不同,也即,通过对协议的临时调整,改善蓝牙设备对协议的支持效果。
为了使车载终端判定采用第二PBAP版本的规范请求通讯录同步服务,上述第二SDP响应信息中的第二PBAP标识可以是版本号和特定指示位。
例如,手机从server record中查询到的匹配部分可以是表4:
表4
其中,表4展示的是手机的蓝牙应用描述列表(Bluetooth profile DescriptorList)。表4显示支持应用(Supported profile)的取值为PBAP。应用版本(profileversion)为第一版本号,在蓝牙应用列表中存在特定指示位(也即,L2Cap PSM),其取值为第二值。结合表4,第二PBAP标识可以为表4中的第一版本号和取第二值的L2Cap PSM。或者,其他实施例中,第二PBAP标识也可以为取第二值的L2Cap PSM。
在本申请实施例中,在收到第二SDP响应信息的情况下,车载终端可以采用第二PBAP版本的规范向手机发送通讯录同步请求。在其他实施例中,也可以是在收到第二SDP响应信息且车载终端接收到用户操作的情况下,触发车载终端可以采用第二PBAP版本的规范向手机发送通讯录同步请求。
在接收到车载终端发送的通讯录同步请求的情况下,手机也按照第二PBAP版本的规范向车载终端提供通讯录同步服务。
如此,即可通过S106和S107协定手机与车载设备间采用第二PBAP版本实现通讯录同步服务。
另外,无论是通过降低版本得到第二PBAP版本,还是通过更改版本内特定指示位得到第二PBAP版本,本质上,都是指导手机和车载终端间更换处理通信录数据包的协议通路。结合图10,如图13所示,手机按照第二PBAP版本的规范向车载终端提供通讯录同步服务过程如下:
首先,将每个通讯录数据包按照协议通路③(也即,第二协议通路)进行处理。
其中,上述协议通路③涉及到数据格式处理、OBEX(server)协议、GOEP v1.0协议、RFCOMM协议及L2CAP协议。换句话说,通讯录数据会经由数据格式处理、OBEX(server)协议、GOEP v1.0协议、RFCOMM协议及L2CAP协议处理,以使最终得到的通讯数据包能够符合数据格式处理、OBEX(server)协议、GOEP v1.0协议、RFCOMM协议及L2CAP协议的要求。
其次,将经由协议通路③处理的通讯录数据包发送给车载终端。
在本申请实施例中,车载终端按照第二PBAP版本接收通讯录同步服务的过程可以是:车载终端按照协议通路④对接收到的通讯录数据包进行解码。其中,协议通路④涉及到L2CAP协议、RFCOMM协议、GOEP v1.0协议、OBEX(client)协议及数据格式处理。
显然地,协议通路更换后,由于多引入了一层协议,增加了对通讯录数据包的处理时间。换句话说,降低对蓝牙设备的处理速度的要求。避免由于蓝牙设备的处理速度受限,导致的通讯录同步异常。
在本申请实施例中,在采用第二PBAP版本的情况下,检测通讯录同步服务期间是否出现机车断连。如果检测到通讯录同步服务期间出现机车断连(比如,出现一次车机断连,或者出现N次连续的车机断连),手机取消对车载终端的标记。比如,手机将该车载终端的设备ID从设备信息集合中剔除。再比如,将预设表格中车载终端所对应的导致服务异常的原因变更为其他原因。
如此,在手机和车载终端下一次再连接上时,无需继续采用第二PBAP版本,从而,改善误判导致的协议版本降级或协议改动。
当然,在其他可能的实施例中,在采用第二PBAP版本的情况下,如果检测到通讯录同步服务期间出现机车断连,还可以尝试采用手机和车载终端间共同支持的其他协议版本。其原理与从第一PBAP版本变更为第二PBAP版本类似,在此不再赘述。
总而言之,本申请实施例提供的profile版本确定方法,适用于PBAP的情况下,通过对车机断连的检测,准确评估蓝牙设备间对共同支持的最高版本PBAP的支持效果。并,在对同支持的最高版本PBAP的支持效果不好的情况下,灵活地调整蓝牙设备间实际使用的PBAP。通过对协议内容临时调整或者降版本的方式,改善蓝牙设备间协议版本支持效果不好的问题,提高蓝牙服务质量。
另外,在一些可能的场景下,也可以是手机作为通讯录同步服务的请求方,车载终端作为通讯录同步服务的提供方。在此可能的场景下,实现profile版本确定方法原理与前述实施例中描述的相同,区别仅在于手机和车载终端之间的角色互换。比如,角色互换后可以是由手机向车载终端发起第一SDP请求信息,车载终端再向手机返回第一SDP响应信息。由手机判定PBAP的实际使用版本后,再由手机向车载终端发起通讯录同步请求,并有车载终端向手机。再比如,角色互换后可以是由手机向车载终端发起第二SDP请求信息,车载终端再向手机返回第二SDP响应信息。以便由手机判定PBAP的实际使用版本。
此外,本申请实施例提供的profile版本确定方法,除了适用于PBAP,还可以适用于HFP。
在手机与车载终端之间已蓝牙配对,且都共同支持HFP情况下,第一应用服务可以是通话控制服务。为了方便本领域人员理解,下面以车载终端为通话控制服务的请求方,手机为通话控制服务的提供方为例,描述本申请实施例所提供的profile版本确定方法。
如图14所示,上述profile版本确定方法可以包括以下步骤:
S201,车载终端向手机发送第一SDP请求信息。
在本申请实施例中,第一SDP请求信息可以用于指示查询手机对至少一项profile的支持能力。可以理解地,被查询的至少一项profile中包括HFP。
示例性地,可以是车载终端通过第一SDP请求信息向手机查询手机所支持的所有profile。如此,在手机支持HFP的情况下,视被查询的至少一项profile中包括HFP。
示例性地,可以是车载终端通过第一SDP请求信息向手机指定查询HFP。如此,也视被查询的至少一项profile中包括HFP。
当然,在一些可能的实施例中,还可以是车载终端已通过SDP请求信息查询手机所支持的所有profile,且已确定手机支持HFP的情况下,车载终端可以通过第一SDP请求信息定向查询手机对HFP的支持能力。
S202,手机向车载终端发送第一SDP响应信息。
其中,上述第一SDP响应信息可以包括第一HFP标识(也即,第一标识)。该第一HFP标识可以是手机支持的最高HFP版本的版本号。
本申请实施例中,在第一SDP请求信息指示查询手机对HFP的支持能力的情况下,手机可以根据其内维护的server record列表,确定手机可支持的最高HFP版本。然后,基于手机可支持的最高HFP版本,确定第一HFP标识。
本申请实施例中,手机将第一SDP响应信息发送给车载终端,便可以指示车载终端根据手机支持的最高HFP版本和车载支持的最高HFP版本,确定出二者间的共同支持的最高HFP版本,又称为第一HFP版本。并确定采用第一HFP版本实现通话控制服务(也即,第一应用服务)。在车载终端按照第一HFP版本的规范请求通话控制服务的情况下,手机也会按照第一HFP版本的规范向车载终端提供通话控制服务。
如此,通过S201和S202,即可协定车载终端与手机之间确定采用第一HFP版本实现通话控制服务。
当然,协定实现通话控制服务的HFP版本的方式也不限于此。在另一些实施例中,上述第一SDP请求信息中可以包括车载终端支持的最高HFP版本的标识。比如,车载终端支持HFP1.6、HFP1.7,且HFP1.7是高于HFP1.6的版本,那么第一SDP请求信息中可以包括HFP1.7的版本号。
在第一SDP请求信息中包括车载终端支持的最高HFP版本的标识的情况下,可以由手机确定车载终端与手机间的第一HFP版本。并通过第一SDP响应信息,通知车载终端可以采用第一HFP版本的规范向手机请求通话控制服务。从而实现协定采用第一HFP版本实现通话控制服务。
S203,手机与车载终端间建立蓝牙通话。
在一些实施例中,可以是建立手机和车载终端之间的面向连接的同步链路(Synchronous Connection Oriented link,SCO)。
S204,车载终端向手机发送通话控制请求。
在一些实施例中,车载终端可以在用户的操作下,按照第一HFP版本的规范向手机发送通话控制请求,以请求通话控制服务。
S205,在手机接收到通话控制请求的情况下,向车载终端提供通话控制服务。
在一些实施例中,手机可以按照第一HFP版本的规范向车载终端提供通话控制服务。
S206,在手机提供通话控制服务期间,检测无声上行事件。
在本申请实施例中,手机提供通话控制服务期间,可以实时侦测是否出现无声上行事件,比如,检测是否出现HiFI_BSD3_0_EVENT。
在一些实施例中,在检测到一次无声上行事件后,对车载终端进行标记。可理解地,对于车载终端进行标记的方式可以参考前述实施例中的描述,对此不再赘述。
在另一些实施例中,为了提高容错率,还可以是检测到N次无声上行事件后,对车载终端进行标记。其中,N为不小于2的整数。
另外,在一些实施例中,上述侦测到N次无声上行事件可以是:在使用第一HFP版本的前提下,连续侦测到N次无声上行事件。示例性地,可以是在连续的N次蓝牙通话过程中,都出现无声上行事件。
例如,在SCO成功建立后,如果侦测到通话控制服务期间出现无声上行事件,则将检测到的无声上行事件的次数记为1。在下一次SCO重新连接,且依然使用第一HFP版本的情况下,如果通话控制服务期间侦测到无声上行事件,则将检测到的无声上行事件的次数记为2;如果通话控制服务期间未侦测到无声上行事件,则将检测到的无声上行事件的次数清零。
在另一些实施例中,上述侦测到N次无声上行事件还可以:统计采用第一HFP版本期间,出现无声上行事件的总次数。也即,对采用第一HFP版本期间,对出现的每一次无声上行事件都进行计数。
S207,车载终端向手机发送第二SDP请求信息。
在一些实施例中,可以是手机与车载终端之间的重匹配(也即,ACL链路的断开重连)触发车载终端向手机发送SDP请求信息。在另一些实施例中,还可以是原有的ACL链路不断开,由用户触发车载终端再次发送SDP请求信息。
在手机已对车载终端进行标记的情况下,手机视车载终端发送的SDP请求信息为第二SDP请求信息。
在一些实施例中,上述方法还包括:
在收到车载终端发送的SDP请求信息后,手机可以查询车载终端是否具有标记,如果手机查询到车载终端具有标记,视所接收到的SDP请求信息为第二SDP请求信息,流程进入S208。如果手机查询到车载终端不具有标记,视所接收到的SDP请求信息为第一SDP请求信息,流程进入S202。
S208,手机向车载终端发送第二SDP响应信息。
在本申请实施例中,为了避免车载终端再次确定实际使用版本时,继续选择第一HFP版本。上述第二SDP响应信息可以包括第二标识,如该第二标识可以为第二HFP标识。上述第二HFP标识也即第二HFP版本的版本号。通过第二HFP标识可以指示车载终端采用第二HFP版本请求通话控制服务。
上述第二HFP版本低于第一HFP版本。如此,在第一HFP版本支持效果不好的情况下,通过将第二HFP版本选为实际使用版本,改善通讯录同步服务质量,减少出现车机断连的可能。
在本申请实施例中,在采用第二HFP版本的情况下,如果通话控制服务期间依然出现异常(比如,出现检测到一次无声上行事件,或者检测到N次无声上行事件),上述方法还包括:手机取消对车载终端的标记。这样,在手机和车载终端重匹配后,无需继续采用第二HFP版本,从而,改善误判导致的协议版本降级。
当然,本申请其他可能的实施例中,在采用第二HFP版本的情况下,通话控制服务依然存在异常,还可以尝试其他共同支持的协议版本。其原理与从第一HFP版本变更为第二HFP版本类似,在此不再赘述。
总而言之,本申请实施例提供的profile版本确定方法,适用于HFP的情况下,通过对无声上行事件的检测,准确判断蓝牙设备间对共同支持的最高版本HFP的支持效果。并,在对同支持的最高版本HFP的支持效果不好的情况下,灵活地调整蓝牙设备间实际使用的HFP的版本,从而改善蓝牙设备间蓝牙服务质量。
另外,在一些可能的场景下,也可以是手机作为通话控制服务的请求方,车载终端作为通话控制服务的提供方。在此可能的场景下,实现profile版本确定方法原理与前述实施例中描述的相同,区别仅在于手机和车载终端之间的角色互换。
本申请实施例还提供一种电子设备,该电子设备可以包括:存储器和一个或多个处理器。该存储器和处理器耦合。该存储器用于存储计算机程序代码,该计算机程序代码包括计算机指令。当处理器执行计算机指令时,可使得电子设备执行上述实施例中手机执行的各个步骤。当然,该电子设备包括但不限于上述存储器和一个或多个处理器。例如,该电子设备的结构可以参考图4所示的手机的结构。
本申请实施例还提供一种芯片系统,该芯片系统可以应用于前述实施例中的电子设备。如图15所示,该芯片系统包括至少一个处理器2201和至少一个接口电路2202。该处理器2201可以是上述电子设备中的处理器。处理器2201和接口电路2202可通过线路互联。该处理器2201可以通过接口电路2202从上述电子设备的存储器接收并执行计算机指令。当计算机指令被处理器2201执行时,可使得电子设备执行上述实施例中手机执行的各个步骤。当然,该芯片系统还可以包含其他分立器件,本申请实施例对此不作具体限定。
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请实施例各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:快闪存储器、移动硬盘、只读存储器、随机存取存储器、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请实施例的具体实施方式,但本申请实施例的保护范围并不局限于此,任何在本申请实施例揭露的技术范围内的变化或替换,都应涵盖在本申请实施例的保护范围之内。因此,本申请实施例的保护范围应以所述权利要求的保护范围为准。
Claims (25)
1.一种应用协议profile版本确定方法,其特征在于,所述方法包括:
电子设备与外接设备之间建立无异步连接ACL链路;
所述外接设备向所述电子设备发送服务发现协议SDP请求信息;其中,所述SDP请求信息用于查询所述电子设备对电话号码簿访问协议PBAP的支持能力;
所述电子设备向所述外接设备发送第一SDP响应信息;其中,所述第一SDP响应信息包括第一PBAP标识;所述第一PBAP标识是所述电子设备支持的最高PBAP版本的标识;
所述外接设备根据所述第一PBAP标识及所述外接设备支持的最高PBAP版本,采用第一PBAP版本向所述电子设备请求通讯录同步服务;
所述电子设备根据所述第一PBAP版本向所述外接设备提供所述通讯录同步服务;
在所述通讯录同步服务出现异常的情况下,所述外接设备向所述电子设备发送所述SDP请求信息;
所述电子设备向所述外接设备发送第二SDP响应信息;其中,所述第二SDP响应信息包括第二PBAP标识;所述第二PBAP标识包括第二版本号,或包括第一版本号和取值为第二值的特定指示位;所述第一版本号为所述第一PBAP版本的版本号;
所述外接设备根据所述第二PBAP标识,采用第二PBAP版本向所述电子设备请求所述通讯录同步服务;其中,所述第一PBAP版本与所述第二PBAP版本不同;
所述电子设备根据所述第二PBAP版本向所述外接设备提供所述通讯录同步服务。
2.如权利要求1所述的方法,其特征在于,
在所述电子设备根据所述第一PBAP版本向所述外接设备提供所述通讯录同步服务期间,所述方法还包括:所述电子设备判断所述通讯录同步服务是否出现异常;
在所述通讯录同步服务出现异常的情况下,所述方法还包括:所述电子设备对所述外接设备进行标记;
所述电子设备向所述外接设备发送第二SDP响应信息,包括:所述电子设备在确定所述外接设备是被标记的设备时,向所述外接设备发送所述第二SDP响应信息。
3.如权利要求2所述的方法,其特征在于,所述电子设备判断所述通讯录同步服务是否出现异常,包括:
所述电子设备监测与外接设备之间的所述ACL链路是否断开;其中,在所述ACL链路断开时,确定所述通讯录同步服务出现异常。
4.如权利要求2所述的方法,其特征在于,所述电子设备对所述外接设备进行标记,包括:
在连续检测到N次所述通讯录同步服务异常的情况下,记录所述外接设备的设备标识,或对应记录所述外接设备的设备标识和异常原因;其中,N为不小于2的整数。
5.如权利要求1所述的方法,其特征在于,所述第一版本号为PBAP1.2;所述第二版本号为PBAP1.1。
6.如权利要求1所述的方法,其特征在于,在所述采用第一PBAP版本向所述电子设备请求通讯录同步服务之前,所述方法还包括:
所述外接设备显示第一提示信息;其中,所述第一提示信息用于询问是否请求所述通讯录同步服务;
所述外接设备接收用户同意请求所述通讯录同步服务的操作。
7.如权利要求1所述的方法,其特征在于,在所述电子设备根据所述第一PBAP版本向所述外接设备提供所述通讯录同步服务之前,所述方法还包括:
所述电子设备显示第二提示信息,所述第二提示信息用于询问是否同意所述外接设备所请求的通讯录同步服务;
所述电子设备接收用户同意所述外接设备所请求的通讯录同步服务的操作。
8.如权利要求1-7任意一项所述的方法,其特征在于,所述电子设备根据所述第一PBAP版本向所述外接设备提供所述通讯录同步服务,包括:
所述电子设备通过第一协议通路向所述外接设备提供所述通讯录同步服务;其中,所述第一协议通路包括数据格式处理、OBEX协议、GOEPv2.0协议及L2CAP协议;
所述电子设备根据所述第二PBAP版本向所述外接设备提供所述通讯录同步服务,包括:
所述电子设备通过第二协议通路向所述外接设备提供所述通讯录同步服务;其中,所述第二协议通路涉及数据格式处理、OBEX协议、GOEP v1.0协议、RFCOMM协议及L2CAP协议。
9.一种profile版本确定方法,其特征在于,应用于电子设备,所述电子设备与外接设备之间已建立ACL链路,所述方法包括:
接收到所述外接设备发送SDP请求信息;其中,所述SDP请求信息用于查询所述电子设备对PBAP的支持能力;
向所述外接设备发送第一SDP响应信息;其中,所述第一SDP响应信息包括第一PBAP标识;所述第一PBAP标识是所述电子设备支持的最高PBAP版本的标识;
接收所述外接设备采用第一PBAP版本发出的通讯录同步请求;其中,所述第一PBAP版本是所述外接设备根据所述第一PBAP标识及所述外接设备支持的最高PBAP版本确定出的PBAP版本;
根据所述第一PBAP版本向所述外接设备提供所述通讯录同步服务;
在所述通讯录同步服务期间出现异常,且再次接收到所述外接设备发送所述SDP请求信息的情况下,向所述外接设备发送第二SDP响应信息;其中,所述第二SDP响应信息包括第二PBAP标识;所述第二PBAP标识包括第二版本号,或包括第一版本号和取值为第二值的特定指示位;所述第一版本号为所述第一PBAP版本的版本号;
接收所述外接设备采用第二PBAP版本发送的所述通讯录同步请求;其中,所述第一PBAP版本与所述第二PBAP版本不同;所述第二PBAP版本是所述外接设备根据所述第二PBAP标识确定出的版本;
根据所述第二PBAP版本向所述外接设备提供所述通讯录同步服务。
10.如权利要求9所述的方法,其特征在于,
在根据所述第一PBAP版本向所述外接设备提供所述通讯录同步服务期间,所述方法还包括:判断所述通讯录同步服务是否出现异常;
在判断所述通讯录同步服务出现异常的情况下,所述方法还包括:对所述外接设备进行标记;
所述向所述外接设备发送第二SDP响应信息,包括:在确定所述外接设备是被标记的设备时,向所述外接设备发送所述第二SDP响应信息。
11.如权利要求10所述的方法,其特征在于,所述判断所述通讯录同步服务是否出现异常,包括:
监测与外接设备之间的所述ACL链路是否断开;其中,在所述ACL链路断开时,确定所述通讯录同步服务出现异常。
12.如权利要求10所述的方法,其特征在于,所述对所述外接设备进行标记,包括:
在连续检测到N次所述通讯录同步服务异常的情况下,记录所述外接设备的设备标识,或对应记录所述外接设备的设备标识和异常原因;其中,N为不小于2的整数。
13.如权利要求9所述的方法,其特征在于,所述第一版本号为PBAP1.2;所述第二版本号为PBAP1.1。
14.如权利要求9所述的方法,其特征在于,在根据所述第一PBAP版本向所述外接设备提供所述通讯录同步服务之前,所述方法还包括:
显示第二提示信息,所述第二提示信息用于询问是否同意所述通讯录同步请求;
接收用户同意所述通讯录同步请求的操作。
15.如权利要求9-14任意一项所述的方法,其特征在于,所述根据所述第一PBAP版本向所述外接设备提供所述通讯录同步服务,包括:
通过第一协议通路向所述外接设备提供所述通讯录同步服务;其中,所述第一协议通路包括数据格式处理、OBEX协议、GOEPv2.0协议及L2CAP协议;
所述根据所述第二PBAP版本向所述外接设备提供所述通讯录同步服务,包括:
通过第二协议通路向所述外接设备提供所述通讯录同步服务;其中,所述第二协议通路涉及数据格式处理、OBEX协议、GOEP v1.0协议、RFCOMM协议及L2CAP协议。
16.一种profile版本确定系统,其特征在于,所述系统包括:电子设备与外接设备;所述电子设备与所述外接设备之间建立ACL链路;
所述外接设备,用于向所述电子设备发送SDP请求信息;其中,所述SDP请求信息用于查询所述电子设备对PBAP的支持能力;
所述电子设备,用于向所述外接设备发送第一SDP响应信息;其中,所述第一SDP响应信息包括第一PBAP标识;所述第一PBAP标识是所述电子设备支持的最高PBAP版本的标识;
所述外接设备,还用于根据所述第一PBAP标识及所述外接设备支持的最高PBAP版本,采用第一PBAP版本向所述电子设备请求通讯录同步服务;
所述电子设备,还用于根据所述第一PBAP版本向所述外接设备提供所述通讯录同步服务;
所述外接设备,还用于在所述通讯录同步服务出现异常的情况下,向所述电子设备发送所述SDP请求信息;
所述电子设备,还用于向所述外接设备发送第二SDP响应信息;其中,所述第二SDP响应信息包括第二PBAP标识;所述第二PBAP标识包括第二版本号,或包括第一版本号和取值为第二值的特定指示位;所述第一版本号为所述第一PBAP版本的版本号;
所述外接设备,还用于根据所述第二PBAP标识,采用第二PBAP版本向所述电子设备请求所述通讯录同步服务;其中,所述第一PBAP版本与所述第二PBAP版本不同;
所述电子设备,还用于根据所述第二PBAP版本向所述外接设备提供所述通讯录同步服务。
17.如权利要求16所述的系统,其特征在于,
所述电子设备,还用于在所述电子设备根据所述第一PBAP版本向所述外接设备提供所述通讯录同步服务期间,判断所述通讯录同步服务是否出现异常;
所述电子设备,还用于在所述通讯录同步服务出现异常的情况下,对所述外接设备进行标记;
所述电子设备,还用于在确定所述外接设备是被标记的设备时,向所述外接设备发送所述第二SDP响应信息。
18.如权利要求17所述的系统,其特征在于,所述电子设备,还用于监测与外接设备之间的所述ACL链路是否断开;其中,在所述ACL链路断开时,确定所述通讯录同步服务出现异常。
19.如权利要求17所述的系统,其特征在于,所述电子设备还用在连续检测到N次所述通讯录同步服务异常的情况下,记录所述外接设备的设备标识,或对应记录所述外接设备的设备标识和异常原因;其中,N为不小于2的整数。
20.如权利要求16所述的系统,其特征在于,所述第一版本号为PBAP1.2;所述第二版本号为PBAP1.1。
21.如权利要求16所述的系统,其特征在于,在所述采用第一PBAP版本向所述电子设备请求通讯录同步服务之前,所述外接设备,还用于显示第一提示信息;其中,所述第一提示信息用于询问是否请求所述通讯录同步服务;
所述外接设备,还用于接收用户同意请求所述通讯录同步服务的操作。
22.如权利要求16所述的系统,其特征在于,在所述电子设备根据所述第一PBAP版本向所述外接设备提供所述通讯录同步服务之前,所述电子设备,还用于显示第二提示信息,所述第二提示信息用于询问是否同意所述外接设备所请求的通讯录同步服务;
所述电子设备,还用于接收用户同意所述外接设备所请求的通讯录同步服务的操作。
23.如权利要求16-22任意一项所述的系统,其特征在于,所述电子设备,还用于通过第一协议通路向所述外接设备提供所述通讯录同步服务;其中,所述第一协议通路包括数据格式处理、OBEX协议、GOEPv2.0协议及L2CAP协议;
所述电子设备,还用于通过第二协议通路向所述外接设备提供所述通讯录同步服务;其中,所述第二协议通路涉及数据格式处理、OBEX协议、GOEP v1.0协议、RFCOMM协议及L2CAP协议。
24.一种电子设备,其特征在于,所述电子设备包括一个或多个处理器及一个或多个存储器;所述一个或多个存储器与所述一个或多个处理器耦合,所述一个或多个存储器用于存储计算机程序代码,所述计算机程序代码包括计算机指令,当所述一个或多个处理器执行所述计算机指令时,实现权利要求1-15任意一项所述的profile版本确定方法。
25.一种计算机存储介质,其特征在于,包括计算机指令,当所述计算机指令在电子设备上运行时,使得所述电子设备执行如权利要求1-15中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110390970.7A CN113301113B (zh) | 2021-04-12 | 2021-04-12 | 一种profile版本确定方法、系统、电子设备及计算机存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110390970.7A CN113301113B (zh) | 2021-04-12 | 2021-04-12 | 一种profile版本确定方法、系统、电子设备及计算机存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113301113A true CN113301113A (zh) | 2021-08-24 |
CN113301113B CN113301113B (zh) | 2022-06-10 |
Family
ID=77319721
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110390970.7A Active CN113301113B (zh) | 2021-04-12 | 2021-04-12 | 一种profile版本确定方法、系统、电子设备及计算机存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113301113B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023169513A1 (zh) * | 2022-03-11 | 2023-09-14 | 华为技术有限公司 | 数据传输方法及相关设备 |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101166178A (zh) * | 2006-10-16 | 2008-04-23 | 华为技术有限公司 | 会话描述协议版本协商/信息获取方法、系统及网络实体 |
US20100112988A1 (en) * | 2008-10-31 | 2010-05-06 | Kabushiki Kaisha Toshiba | Wireless communication terminal and method for wireless communication |
US20120213221A1 (en) * | 2009-11-06 | 2012-08-23 | Zte Corporation | Method of establishing optimized media path and signaling gateway for implementing this method |
CN103039054A (zh) * | 2010-07-02 | 2013-04-10 | 思科技术公司 | 用于跨应用元件传送应用标识符的方法和设备 |
CN103457642A (zh) * | 2013-08-15 | 2013-12-18 | 上海天奕达电子科技有限公司 | 一种获取智能终端电话本信息的方法及装置 |
US20160095141A1 (en) * | 2014-09-30 | 2016-03-31 | Cisco Technology, Inc. | System, method, and logic for identifying devices for a virtual meeting session |
CN107889092A (zh) * | 2017-11-30 | 2018-04-06 | 广东欧珀移动通信有限公司 | 蓝牙设备通信控制方法、装置、终端设备及存储介质 |
CN108206997A (zh) * | 2017-12-15 | 2018-06-26 | 中兴通讯股份有限公司 | 蓝牙连接方法及装置 |
CN111741457A (zh) * | 2020-07-16 | 2020-10-02 | Oppo广东移动通信有限公司 | 一种蓝牙通讯方法、装置及计算机可读存储介质 |
US20200389437A1 (en) * | 2019-06-04 | 2020-12-10 | OPSWAT, Inc. | Methods and systems for establishing a connection between a first device and a second device across a software-defined perimeter |
CN112469013A (zh) * | 2019-09-06 | 2021-03-09 | 华为技术有限公司 | 一种蓝牙连接方法及相关装置 |
-
2021
- 2021-04-12 CN CN202110390970.7A patent/CN113301113B/zh active Active
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101166178A (zh) * | 2006-10-16 | 2008-04-23 | 华为技术有限公司 | 会话描述协议版本协商/信息获取方法、系统及网络实体 |
US20100112988A1 (en) * | 2008-10-31 | 2010-05-06 | Kabushiki Kaisha Toshiba | Wireless communication terminal and method for wireless communication |
US20120213221A1 (en) * | 2009-11-06 | 2012-08-23 | Zte Corporation | Method of establishing optimized media path and signaling gateway for implementing this method |
CN103039054A (zh) * | 2010-07-02 | 2013-04-10 | 思科技术公司 | 用于跨应用元件传送应用标识符的方法和设备 |
CN103457642A (zh) * | 2013-08-15 | 2013-12-18 | 上海天奕达电子科技有限公司 | 一种获取智能终端电话本信息的方法及装置 |
US20160095141A1 (en) * | 2014-09-30 | 2016-03-31 | Cisco Technology, Inc. | System, method, and logic for identifying devices for a virtual meeting session |
CN107889092A (zh) * | 2017-11-30 | 2018-04-06 | 广东欧珀移动通信有限公司 | 蓝牙设备通信控制方法、装置、终端设备及存储介质 |
CN108206997A (zh) * | 2017-12-15 | 2018-06-26 | 中兴通讯股份有限公司 | 蓝牙连接方法及装置 |
US20200389437A1 (en) * | 2019-06-04 | 2020-12-10 | OPSWAT, Inc. | Methods and systems for establishing a connection between a first device and a second device across a software-defined perimeter |
CN112469013A (zh) * | 2019-09-06 | 2021-03-09 | 华为技术有限公司 | 一种蓝牙连接方法及相关装置 |
CN111741457A (zh) * | 2020-07-16 | 2020-10-02 | Oppo广东移动通信有限公司 | 一种蓝牙通讯方法、装置及计算机可读存储介质 |
Non-Patent Citations (2)
Title |
---|
刘媛; 张伟; 王知学; 马建辉: "蓝牙车载信息系统的设计与实现", 《山东科学》 * |
马建辉; 王知学; 于良杰: "基于蓝牙技术的数据同步的实现", 《通信技术》 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023169513A1 (zh) * | 2022-03-11 | 2023-09-14 | 华为技术有限公司 | 数据传输方法及相关设备 |
Also Published As
Publication number | Publication date |
---|---|
CN113301113B (zh) | 2022-06-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10609538B2 (en) | Method and device for identifying bluetooth headset voice source | |
CN114079892B (zh) | 蓝牙通信方法、可穿戴设备及系统 | |
CN113395685B (zh) | 蓝牙通信系统和无线通信系统 | |
CN113906773B (zh) | 低功耗蓝牙设备的信道选择方法和装置 | |
WO2020077658A1 (zh) | 用于蓝牙设备的扩展连接方法和扩展连接系统 | |
US10698652B2 (en) | Intermediary device for establishing wireless services | |
CN113660650B (zh) | 设备回连的方法及相关装置 | |
CN111447603A (zh) | 数据传输方法及装置 | |
WO2023065931A1 (zh) | 一种电子设备的充电方法及电子设备 | |
CN115086924B (zh) | 蓝牙通信方法、系统及电子设备 | |
CN102739291A (zh) | 一种近场通信模块、系统及方法 | |
WO2022222556A1 (zh) | 一种蓝牙设备中编解码能力的获取方法及电子设备 | |
WO2022242528A1 (zh) | 一种音量调节方法及终端设备 | |
WO2023284378A1 (zh) | 一种通话的控制方法及电子设备 | |
CN114499587A (zh) | 音频同步的通信方法、系统及电子设备 | |
CN112469014A (zh) | 配置蓝牙连接参数的方法和电子设备 | |
CN113301113A (zh) | 一种profile版本确定方法、系统、电子设备及计算机存储介质 | |
EP4460096A1 (en) | Communication method, electronic device, and apparatus | |
CN218183525U (zh) | 一种低功耗无线音频适配器及智能设备 | |
CN113472379B (zh) | 一种对讲通信方法、耳机盒、耳机及存储介质 | |
CN114827687B (zh) | 通信方法、移动设备、电子设备和计算机可读存储介质 | |
CN114173321B (zh) | 设备通信连接建立方法及设备通信系统 | |
CN116709582B (zh) | 辅助通话的方法和电子设备 | |
CN111245980A (zh) | 一种分体式移动终端及其语音控制方法 | |
CN111654294B (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 | ||
CP03 | Change of name, title or address | ||
CP03 | Change of name, title or address |
Address after: Unit 3401, unit a, building 6, Shenye Zhongcheng, No. 8089, Hongli West Road, Donghai community, Xiangmihu street, Futian District, Shenzhen, Guangdong 518040 Patentee after: Honor Terminal Co.,Ltd. Country or region after: China Address before: 3401, unit a, building 6, Shenye Zhongcheng, No. 8089, Hongli West Road, Donghai community, Xiangmihu street, Futian District, Shenzhen, Guangdong Patentee before: Honor Device Co.,Ltd. Country or region before: China |