一种基于蓝牙广播进行数据传输的方法、装置及蓝牙设备与流程

文档序号:17797693发布日期:2019-05-31 20:53阅读:306来源:国知局
一种基于蓝牙广播进行数据传输的方法、装置及蓝牙设备与流程

本说明书实施例涉及数据处理技术领域,尤其涉及一种基于蓝牙广播进行数据传输的方法、装置及蓝牙设备。



背景技术:

现有技术中,蓝牙设备,例如承载有蓝牙通信模块的手机可以在指定的广播信道上发送广播类型为可连接的广播报文,另一蓝牙设备则可以通过扫描指定的广播信道发现广播报文,也即发现可连接的蓝牙设备,继而,该另一蓝牙设备则可以向该可连接的蓝牙设备发送连接请求。待两台蓝牙设备之间建立起蓝牙连接之后,该两台蓝牙设备则可以通过蓝牙广播进行数据传输。

由此可见,在现有技术中,建立起蓝牙连接是两台蓝牙设备可以通过蓝牙广播进行数据传输的必要条件,并且,该两台蓝牙设备之间是通过一个蓝牙广播进行数据传输的,在该种数据传输方式下,传输效率较低,尤其是对于较大的数据而言,需要耗费较长时间才可完成传输。



技术实现要素:

针对上述技术问题,本说明书实施例提供一种基于蓝牙广播进行数据传输的方法、装置及蓝牙设备,技术方案如下:

根据本说明书实施例的第一方面,提供一种基于蓝牙广播进行数据传输的方法,所述方法包括:

将待发送数据拆分为n个数据段,所述n为大于0的自然数;

针对所述n个数据段中的任一数据段,将所述数据段作为广播数据封装至一个蓝牙广播数据包,得到n个蓝牙广播数据包;

开启n个蓝牙广播,并利用所述n个蓝牙广播分别对所述n个蓝牙广播数据包进行广播发送。

根据本说明书实施例的第二方面,提供一种基于蓝牙广播进行数据传输的方法,所述方法包括:

在设定信道范围内扫描蓝牙广播;

当扫描到具有指定服务uuid的蓝牙广播时,获取所述蓝牙广播所广播发送的蓝牙广播数据包;

针对获取到的任一蓝牙广播数据包,对所述蓝牙广播数据包进行解析,得到所述蓝牙广播数据包封装的广播数据;

对所得到的广播数据进行组合。

根据本说明书实施例的第三方面,提供一种基于蓝牙广播进行数据传输的装置,所述装置包括:

拆分模块,用于将待发送数据拆分为n个数据段,所述n为大于0的自然数;

封装模块,用于针对所述n个数据段中的任一数据段,将所述数据段作为广播数据封装至一个蓝牙广播数据包,得到n个蓝牙广播数据包;

传输模块,用于开启n个蓝牙广播,并利用所述n个蓝牙广播分别对所述n个蓝牙广播数据包进行广播发送。

根据本说明书实施例的第四方面,提供一种基于蓝牙广播进行数据传输的装置,所述装置包括:

扫描模块,用于在设定信道范围内扫描蓝牙广播;

获取模块,用于当扫描到具有指定服务uuid的蓝牙广播时,获取所述蓝牙广播所广播发送的蓝牙广播数据包;

解析模块,用于针对获取到的任一蓝牙广播数据包,对所述蓝牙广播数据包进行解析,得到所述蓝牙广播数据包封装的广播数据;

组合模块,用于对所得到的广播数据进行组合。

根据本说明书实施例的第五方面,提供一种蓝牙设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其中,所述处理器执行所述程序时实现本说明书实施例提供的任一基于蓝牙广播进行数据传输的方法。

本说明书实施例所提供的技术方案,通过将待发送数据拆分为n个数据段,针对任一数据段,将其作为广播数据封装至一个蓝牙广播数据包,得到n个蓝牙广播数据包;开启n个蓝牙广播,利用该n个蓝牙广播分别对n个蓝牙广播数据包进行广播发送,可以提高基于蓝牙广播进行数据传输的效率。

应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本说明书实施例。

此外,本说明书实施例中的任一实施例并不需要达到上述的全部效果。

附图说明

为了更清楚地说明本说明书实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书实施例中记载的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的附图。

图1为本说明书一示例性实施例提供的一种基于蓝牙广播进行数据传输的方法的实施例流程图;

图2为本说明书一示例性实施例提供的另一种基于蓝牙广播进行数据传输的方法的实施例流程图;

图3为本说明书一示例性实施例提供的一种基于蓝牙广播进行数据传输的装置的实施例框图;

图4为本说明书一示例性实施例提供的另一种基于蓝牙广播进行数据传输的装置的实施例框图;

图5示出了本说明书实施例所提供的一种更为具体的蓝牙设备硬件结构示意图。

具体实施方式

为了使本领域技术人员更好地理解本说明书实施例中的技术方案,下面将结合本说明书实施例中的附图,对本说明书实施例中的技术方案进行详细地描述,显然,所描述的实施例仅仅是本说明书的一部分实施例,而不是全部的实施例。基于本说明书中的实施例,本领域普通技术人员所获得的所有其他实施例,都应当属于保护的范围。

现有技术中,建立起蓝牙连接是两台蓝牙设备可以通过蓝牙广播进行数据传输的必要条件,并且,该两台蓝牙设备之间是通过一个蓝牙广播进行数据传输的,这也就导致了数据传输的效率较低,尤其是对于较大的数据而言,仅通过一个蓝牙广播进行数据传输需消耗较长时间。

为了解决上述问题,本说明书实施例提供一种基于蓝牙广播进行数据传输的方法,应用该方法,可以实现两台蓝牙设备之间无需建立蓝牙连接,即可进行数据传输,并且,可以通过多个蓝牙广播对较大的数据进行传输,从而提高数据传输效率。

如下,从数据发送方与数据接收方两侧,分别对本说明书实施例提供的基于蓝牙广播进行数据传输的方法进行说明。

首先,从数据发送方一侧,对该基于蓝牙广播进行数据传输的方法进行说明:

请参见图1,为本说明书一示例性实施例提供的一种基于蓝牙广播进行数据传输的方法的实施例流程图,该方法可以包括以下步骤:

步骤102:将待发送数据拆分为n个数据段,n为大于0的自然数。

步骤104:针对n个数据段中的任一数据段,将该数据段作为广播数据封装至一个蓝牙广播数据包,得到n个蓝牙广播数据包。

如下,对步骤102与步骤104进行说明:

在本说明书实施例中,可以基于指定字节长度,例如30字节,对待发送数据进行拆分,得到n个数据段,其中,任一数据段的长度不超过该指定字节长度,例如,可以针对待发送数据,每30字节即拆分为一个数据段,又例如,可以在任一数据段的长度不超过该指定字节长度的前提下,随机对待发送数据进行拆分。

进一步,在本说明书实施例中,可以按照n个数据段在待发送数据中的排列顺序,为该n个数据段设置排列序号,例如,将待发送数据拆分为5个数据段,该5个数据段的排列序号依次为0~4。

在本说明书实施例中,针对n个数据段中的任一数据段,将其作为广播数据封装至一个蓝牙广播数据包中,至此,得到n个蓝牙广播数据包。

步骤106:开启n个蓝牙广播,并利用n个蓝牙广播分别对n个蓝牙广播数据包进行广播发送。

在本说明书实施例中,可以利用虚拟蓝牙技术,虚拟出n个蓝牙广播,利用该n个蓝牙广播分别对步骤104中得到的n个蓝牙广播数据包进行广播发送。

需要说明的是,上述虚拟出的n个蓝牙广播具有相同的服务uuid(universallyuniqueidentifier,统一识别码)。

本说明书实施例所提供的技术方案,通过将待发送数据拆分为n个数据段,针对任一数据段,将其作为广播数据封装至一个蓝牙广播数据包,得到n个蓝牙广播数据包;开启n个蓝牙广播,利用该n个蓝牙广播分别对n个蓝牙广播数据包进行广播发送,可以提高基于蓝牙广播进行数据传输的效率。

其次,从数据接收方一侧,对该基于蓝牙广播进行数据传输的方法进行说明:

请参见图2,为本说明书一示例性实施例提供的另一种基于蓝牙广播进行数据传输的方法的实施例流程图,该方法可以包括以下步骤:

步骤202:在设定信道范围内扫描蓝牙广播。

步骤204:当扫描到具有指定服务uuid的蓝牙广播时,获取该蓝牙广播所广播发送的蓝牙广播数据包。

如下,对步骤202与步骤204进行说明:

在本说明书实施例中,作为数据接收方,蓝牙设备可以在设定的信道范围,例如信道37~信道39内扫描蓝牙广播,并基于指定服务uuid对扫描到的蓝牙广播进行过滤,也即当扫描到具有指定服务uuid的蓝牙广播时,获取该蓝牙广播所广播发送的蓝牙广播数据包。

需要说明的是,结合上述图1所示例的实施例,本步骤中的指定服务uuid可以与上述图1所示实施例的步骤106中所描述的n个蓝牙广播的服务uuid相同。

在一实施例中,该指定服务uuid可以是基于用户操作确定的。例如,蓝牙设备在扫描到蓝牙广播后,可以在显示界面上显示所扫描到的蓝牙广播,例如,显示所扫描到的蓝牙广播的标识,用户基于蓝牙广播的标识,从中选择意图通信的蓝牙广播,通过用户的选择操作,即可确定指定服务uuid。

步骤206:针对获取到的任一蓝牙广播数据包,对该蓝牙广播数据包进行解析,得到蓝牙广播数据包封装的广播数据。

步骤208:对所得到的广播数据进行组合。

如下,对步骤206与步骤208进行说明:

在本说明书实施例中,作为数据接收方,蓝牙设备可以按照蓝牙广播数据包的格式规范,对获取到的任一蓝牙广播数据包进行解析,得到其中封装的广播数据,之后,将所得到的广播数据进行组合,得到数据发送方发送的原始待发送数据。

在一实施例中,由上述图1所示实施例中的描述可知,作为数据发送方,蓝牙设备在对待发送数据进行拆分之后,可以按照拆分得到的数据段在待发送数据中的排列顺序,为该数据段设置排列序号,基于此,在步骤208中,则可以根据广播数据的排列序号,对广播数据进行组合。

本说明书实施例所提供的技术方案,通过在设定信道范围内扫描蓝牙广播,当扫描到具有指定服务uuid的蓝牙广播时,获取该蓝牙广播所广播发送的蓝牙广播数据包,针对获取到的任一蓝牙广播数据包,对该蓝牙广播数据包进行解析,得到蓝牙广播数据包封装的广播数据,对所得到的广播数据进行组合,可以提高基于蓝牙广播进行数据传输的效率。

相应于上述图1所示例的方法实施例,本说明书实施例还提供一种基于蓝牙广播进行数据传输的装置,参见图3所示,为本说明书一示例性实施例提供的一种基于蓝牙广播进行数据传输的装置的实施例框图,该装置可以包括:拆分模块31、封装模块32,以及传输模块33。

其中,拆分模块31,可以用于将待发送数据拆分为n个数据段,所述n为大于0的自然数;

封装模块32,可以用于针对所述n个数据段中的任一数据段,将所述数据段作为广播数据封装至一个蓝牙广播数据包,得到n个蓝牙广播数据包;

传输模块33,可以用于开启n个蓝牙广播,并利用所述n个蓝牙广播分别对所述n个蓝牙广播数据包进行广播发送。

在一实施例中,所述拆分模块31,可以包括(图3中未示出):

处理子模块,用于基于指定字节长度对待发送数据进行拆分,得到n个数据段,其中,任一所述数据段的长度不超过所述指定字节长度;

编号子模块,用于按照所述n个数据段在所述待发送数据中的排列顺序,为所述n个数据段设置排列序号。

在一实施例中,所述n个蓝牙广播具有相同的服务uuid。

可以理解的是,拆分模块31、封装模块32,以及传输模块33作为三种功能独立的模块,既可以如图3所示同时配置在装置中,也可以分别单独配置在装置中,因此图3所示的结构不应理解为对本说明书实施例方案的限定。

相应于上述图2所示例的方法实施例,本说明书实施例还提供另一种基于蓝牙广播进行数据传输的装置,参见图4所示,为本说明书一示例性实施例提供的另一种基于蓝牙广播进行数据传输的装置的实施例框图,该装置可以包括:扫描模块41、获取模块42、解析模块43,以及组合模块44。

其中,扫描模块41,可以用于在设定信道范围内扫描蓝牙广播;

获取模块42,可以用于当扫描到具有指定uuid的蓝牙广播时,获取所述蓝牙广播所广播发送的蓝牙广播数据包;

解析模块43,可以用于针对获取到的任一蓝牙广播数据包,对所述蓝牙广播数据包进行解析,得到所述蓝牙广播数据包封装的广播数据;

组合模块44,可以用于对所得到的广播数据进行组合。

在一实施例中,所述组合模块44具体可以用于:

根据所得到的广播数据的排列序号,对所述广播数据进行组合。

可以理解的是,扫描模块41、获取模块42、解析模块43,以及组合模块44作为四种功能独立的模块,既可以如图4所示同时配置在装置中,也可以分别单独配置在装置中,因此图4所示的结构不应理解为对本说明书实施例方案的限定。

此外,上述装置中各个模块的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。

本说明书实施例还提供一种蓝牙设备,其至少包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其中,处理器执行所述程序时实现前述的基于蓝牙广播进行数据传输的方法,该方法至少包括:将待发送数据拆分为n个数据段,所述n为大于0的自然数;针对所述n个数据段中的任一数据段,将所述数据段作为广播数据封装至一个蓝牙广播数据包,得到n个蓝牙广播数据包;开启n个蓝牙广播,并利用所述n个蓝牙广播分别对所述n个蓝牙广播数据包进行广播发送。

本说明书实施例还提供另一种蓝牙设备,其至少包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其中,处理器执行所述程序时实现前述的基于蓝牙广播进行数据传输的方法,该方法至少包括:在设定信道范围内扫描蓝牙广播;当扫描到具有指定uuid的蓝牙广播时,获取所述蓝牙广播所广播发送的蓝牙广播数据包;针对获取到的任一蓝牙广播数据包,对所述蓝牙广播数据包进行解析,得到所述蓝牙广播数据包封装的广播数据;对所得到的广播数据进行组合。

图5示出了本说明书实施例所提供的一种更为具体的蓝牙设备硬件结构示意图,该设备可以包括:处理器510、存储器520、输入/输出接口530、通信接口540和总线550。其中处理器510、存储器520、输入/输出接口530和通信接口540通过总线550实现彼此之间在设备内部的通信连接。

处理器510可以采用通用的cpu(centralprocessingunit,中央处理器)、微处理器、应用专用集成电路(applicationspecificintegratedcircuit,asic)、或者一个或多个集成电路等方式实现,用于执行相关程序,以实现本说明书实施例所提供的技术方案。

存储器520可以采用rom(readonlymemory,只读存储器)、ram(randomaccessmemory,随机存取存储器)、静态存储设备,动态存储设备等形式实现。存储器520可以存储操作系统和其他应用程序,在通过软件或者固件来实现本说明书实施例所提供的技术方案时,相关的程序代码保存在存储器520中,并由处理器510来调用执行。

输入/输出接口530用于连接输入/输出模块,以实现信息输入及输出。输入输出/模块可以作为组件配置在设备中(图中未示出),也可以外接于设备以提供相应功能。其中输入设备可以包括键盘、鼠标、触摸屏、麦克风、各类传感器等,输出设备可以包括显示器、扬声器、振动器、指示灯等。

通信接口540用于连接通信模块(图中未示出),以实现本设备与其他设备的通信交互。其中通信模块可以通过有线方式(例如usb、网线等)实现通信,也可以通过无线方式(例如移动网络、wifi、蓝牙等)实现通信。

总线550包括一通路,在设备的各个组件(例如处理器510、存储器520、输入/输出接口530和通信接口540)之间传输信息。

需要说明的是,尽管上述设备仅示出了处理器510、存储器520、输入/输出接口530、通信接口540以及总线550,但是在具体实施过程中,该设备还可以包括实现正常运行所必需的其他组件。此外,本领域的技术人员可以理解的是,上述设备中也可以仅包含实现本说明书实施例方案所必需的组件,而不必包含图中所示的全部组件。

本说明书实施例还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现前述的基于蓝牙广播进行数据传输的方法。该方法至少包括:将待发送数据拆分为n个数据段,所述n为大于0的自然数;针对所述n个数据段中的任一数据段,将所述数据段作为广播数据封装至一个蓝牙广播数据包,得到n个蓝牙广播数据包;开启n个蓝牙广播,并利用所述n个蓝牙广播分别对所述n个蓝牙广播数据包进行广播发送。

本说明书实施例还提供另一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现前述的基于蓝牙广播进行数据传输的方法。该方法至少包括:在设定信道范围内扫描蓝牙广播;当扫描到具有指定uuid的蓝牙广播时,获取所述蓝牙广播所广播发送的蓝牙广播数据包;针对获取到的任一蓝牙广播数据包,对所述蓝牙广播数据包进行解析,得到所述蓝牙广播数据包封装的广播数据;对所得到的广播数据进行组合。

计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd-rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitorymedia),如调制的数据信号和载波。

通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本说明书实施例可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本说明书实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如rom/ram、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本说明书实施例各个实施例或者实施例的某些部分所述的方法。

上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机,计算机的具体形式可以是个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件收发设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任意几种设备的组合。

本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,在实施本说明书实施例方案时可以把各模块的功能在同一个或多个软件和/或硬件中实现。也可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。

以上所述仅是本说明书实施例的具体实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本说明书实施例原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本说明书实施例的保护范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1