CN102170679B - 基于Android系统的多机蓝牙群通信方法 - Google Patents

基于Android系统的多机蓝牙群通信方法 Download PDF

Info

Publication number
CN102170679B
CN102170679B CN 201110140972 CN201110140972A CN102170679B CN 102170679 B CN102170679 B CN 102170679B CN 201110140972 CN201110140972 CN 201110140972 CN 201110140972 A CN201110140972 A CN 201110140972A CN 102170679 B CN102170679 B CN 102170679B
Authority
CN
China
Prior art keywords
equipment
bluetooth
main equipment
data
communication
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
CN 201110140972
Other languages
English (en)
Other versions
CN102170679A (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.)
Xidian University
Original Assignee
Xidian University
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 Xidian University filed Critical Xidian University
Priority to CN 201110140972 priority Critical patent/CN102170679B/zh
Publication of CN102170679A publication Critical patent/CN102170679A/zh
Application granted granted Critical
Publication of CN102170679B publication Critical patent/CN102170679B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Mobile Radio Communication Systems (AREA)

Abstract

本发明公开了一种基于Android系统的多机蓝牙群通信方法,主要解决现有移动G网或C网在弱信号区域数据通信质量差,通信费用高的问题。其实现步骤为:Android主、从设备开启蓝牙,主设备创建蓝牙适配器BluetoothAdapter,搜索周边从设备,主、从设备匹配连接,组建蓝牙微微网;主设备为每个从设备建立一个线程Thread,监听通信请求,每个从设备响应主设备建立的Thread线程,发起通信请求;主、从设备进行数据的发送与接收,并将收、发的数据信息即时更新到各自的消息界面上。本发明具有通信零费用,在弱信号区域通信效果好,且不需第三方介入的优点,适宜于短距离智能手机的数据通信。

Description

基于Android系统的多机蓝牙群通信方法
技术领域
本发明属于通信技术领域,涉及数据信息的传输,具体的说,是一种基于Android系统的多机蓝牙群通信方法。
背景技术
蓝牙,是一种支持设备进行短距离通信的无线电技术。能在包括移动电话、PDA、无线耳机、笔记本电脑、相关外设等众多设备之间进行无线信息交换。利用蓝牙技术,能够有效地简化移动通信终端设备之间的通信、设备与Internet之间的通信,从而使数据传输变得更加迅速高效,为无线通信拓宽道路。蓝牙采用分散式网络结构以及快跳频和短包技术,工作在全球通用的2.4GHz ISM,即工业、科学、医学频段,其数据传输速率理论最高为1Mbps。
蓝牙支持点对点及点对多点通信,在任意一个有效通信范围内,所有设备的地位都是平等的,首选提出通信要求的设备定为主设备,被动通信的设备为从设备。通过时分多址TDMA方式,1台主设备最多可同时与7台从设备进行通信,并可和更多个从设备保持同步。一台主设备和一台以上的从设备构成的网络成为微微网。
目前Android手机端的数据通信主要通过短信系统来实现。短信是伴随数字移动通信系统而产生的一种电信业务,通过移动通信系统的信令信道和信令网,传送文字或数字短信息,属于一种非实时的、非语音的数据通信业务,具有信息传递准确可靠、迅速及时等优点。但是,这种数据通信方式具有如下问题:
1.手机端的短消息通信为非实时通信,无法实现群组实时通信;
2.通过运营商进行短消息通信会产生费用问题;
3.在移动G网或C网信号弱的区域进行通信时,会严重影响数据通信质量;
4.通过运营商进行短消息通信会带来诸如信息泄露等潜在的安全问题。
发明内容
本发明的目的在于避免以上已有技术的不足,提出一种基于Android系统的多机蓝牙群通信方法,以提高移动G网或C网弱信号区域的数据通信质量,实现数据通信零费用的Android群通信。
本发明的技术方案是基于Android系统构造蓝牙微微网,通过多线程方法,实现多机群通信。Android系统作为主流的操作系统,以其低廉的价格、系统开源、机型多、硬件配置占优等优点,在Google及摩托罗拉、三星、HTC、LG、Lumigon等加盟厂家的鼎力支持下,以逐步占据相当大的市场份额。本发明正是利用Android系统的这些优点进行具体的蓝牙网络构建与通信,其实现步骤包括如下:
(1)设置Android群通信主设备与从设备,开启主、从设备的蓝牙使用权限;创建主设备的蓝牙适配器BluetoothAdapter,作为所有蓝牙交互的入口,为搜索周边蓝牙从设备做好准备;
(2)通过主设备搜索其周边从设备,显示在主设备界面上,并由主设备向从设备发起蓝牙连接请求,若是第一次与该从设备进行连接,则先进行主、从设备的信息匹配,接收从设备的反馈信息并保存;反之,则创建一个列表,用来显示已经匹配好了的从设备,从中选取要通信的从设备,直接使用蓝牙API进行连接;
(3)主、从设备信息匹配、连接成功后,主设备为每一个从设备建立一个通信线程Thread,并通过调用Android系统自带的ListenUsingRfcommWit-
hServiceRecord方法,获取蓝牙服务套接字BluetoothServerSocket,以监听从设备的通信请求;
(4)每一个从设备都调用Android系统自带的CreateRfcommSocketToSe-
rviceRecord方法,获取蓝牙套接字BlueSocket,以管理从设备当前的连接信息;每一个从设备都响应主设备建立的通信Thread线程,并向主设备发起通信请求;当主设备监听到从设备的通信请求并接受后,开始进行数据通信;
(5)主设备进行数据的读取接收与广播转发,并将数据信息更新到消息界面中;
(6)每一个从设备进行数据信息的发送与接收,并对数据信息更新到各自的消息界面中。
本发明基于Android系统,具有如下优点:
本发明由于利用蓝牙无线技术与多线程技术,通过组建蓝牙微微网进行点对多点的无线连接,实现了Android多机群通信,即可提供最多8人进行实时群组数据通信,并且在诸如隧道和郊区这些移动G网或C网信号较弱的区域,可以进行高质量的群组通信,有效的弥补了移动G网或C网的不足之处;
同时由于本发明利用了蓝牙技术的开放、免费特性,故不需任何的通信费用;
此外由于本发明利用蓝牙技术进行通信,不需要第三方介入,有效的避免了信息泄露问题。
附图说明
图1是本发明的基于Android系统的多机蓝牙群通信流程图。
具体实施方式
以下参照附图对本发明作进一步详细描述:
一、本发明所应用的技术理论说明:
1、蓝牙微微网
蓝牙提供点对点和点对多点的无线连接,在任意一个有效通信范围内,网络内所有设备的地位都是平等的,首先提出通信请求的设备定为主设备,被动进行通信的设备为从设备,通过时分多址TDMA方式,1台主设备最多可同时与7台从设备进行通信,并可和更多个从设备,最多256个保持同步但不进行通信。一台主设备和一台以上的从设备构成的网络称为蓝牙微微网。
2、通用唯一识别码UUID
通用唯一识别码UUID是指在一台机器上生成的128位字符串,代表了主、从设备连接的一个标识,它由当前日期和时间、时钟序列、全局唯一的机器识别号三部分组成,对在同一时空中的所有机器都是唯一的。
二、本发明的具体实现
参照图1,本发明的具体实现步骤如下:
步骤一,Android主、从设备的初始蓝牙设置。
(1.1)设置Android主设备与从设备的蓝牙使用权限,若主、从设备的蓝牙使用权限未开启,则通过以下程序代码来开启,以确保主、从设备对蓝牙的支持:
<uses-permission android:name=″android.permission.BLUETOOTH″/>
<uses-permission android:name=″android.permission.BLUETOOTH_ADMIN″/>;
(1.2)主设备通过调用系统静态方法getDefaultAdapter(),自动生成蓝牙适配器BluetoothAdapter,作为所有蓝牙交互的入口,为搜索周边蓝牙从设备做好准备。
步骤二,Android主、从设备的匹配连接。
(2.1)主设备搜索其周边从设备,将搜索结果显示在主设备界面上,由于搜索过程很耗费资源,所以一旦主设备查找到所需的蓝牙从设备,则先停止搜索,然后再向从设备发起连接请求;
(2.2)主设备向从设备发起蓝牙连接请求,若是第一次与该从设备进行连接,则先进行主、从设备的信息匹配,即主设备向从设备发送一个请求匹配的信息,从设备接收到该信息后,反馈自己的姓名、物理MAC地址信息给主设备,主设备将该信息保存,然后创建一个列表,用来显示已经匹配好了的从设备,并从中选取要通信的从设备,使用蓝牙API接口与从设备进行连接;反之,主、从设备不进行信息匹配,主设备直接创建一个列表显示已匹配好的从设备,选取要通信的从设备,使用蓝牙API与从设备进行连接;
步骤三,Android主设备建立多线程,监听通信请求。
(3.1)主、从设备信息匹配、连接成功后,主设备通过调用Android系统自带的ListenUsingRfcommWithServiceRecord方法,获取蓝牙服务套接字BluetoothServerSocket,用来监听从设备的通信请求,该ListenUsingRfcommWithServiceRecord方法包含String和UUID两个参数,其中参数String代表了此次通信的名称,UUID为主设备的通用唯一识别码;
(3.2)当监听到一个通信请求并接受后,则关闭监听程序,并为每一个从设备建立一个通信线程Thread,用于进行数据通信。
步骤四,Android从设备响应多线程,发起通信请求。
(4.1)每一个从设备都调用Android系统自带的CreateRfcommSocket-
ToServiceRecord方法,获取蓝牙套接字BlueSocket,以管理当前主、从设备间的连接;该CreateRfcommSocketToServiceRecord方法包含一个参数,即从设备的UUID,此处的UUID与主设备的UUID相同;
(4.2)每一个从设备在获取蓝牙套接字BlueSocket之后,都向主设备发起通信请求,并响应主设备建立的通信线程Thread;
(4.3)当主设备监听到从设备的通信请求并接受,且从设备响应了主设备建立的通信线程Thread后,主、从设备之间开始进行数据通信。
步骤五,Android主设备的数据收发与消息界面的同步更新。
(5.1)当主设备要接收来自于每一个从设备的数据信息时,调用getInputStream方法不断的获取输入数据流,通过读操作read(byte[])按字节读取输入数据流中的数据;当主设备要发送数据信息给每一个从设备时,通过写操作write(byte[])将数据写入输出数据流,调用getOutputStream方法将输出数据流广播给每一个从设备;
(5.2)主设备将收、发的数据信息即时传送给自身的用户界面进程,通过用户界面进程,将数据传送到自身的消息界面,调用update方法实现对消息界面的同步更新。
步骤六,Android从设备的数据收发与消息界面的同步更新。
(6.1)当每一个从设备要接收来自于主设备的数据信息时,调用getInputStream方法不断的获取输入数据流,通过读操作read(byte[])按字节读取输入数据流中的数据;当每一个从设备要发送数据信息给主设备时,通过写操作write(byte[])将数据写入输出数据流,调用getOutputStream方法将输出数据流发送给主设备;当每一个从设备要发送数据信息给其它从设备时,通过写操作write(byte[])先将数据发送给主设备,主设备用读操作read(byte[])按字节读取该数据信息,然后主设备再用写操作write(byte[])将该数据转发给其它从设备,其它从设备用读操作read(byte[])按字节读取该数据信息;
(6.2)每一个从设备都将收、发的数据信息即时传送给自身的用户界面进程,通过用户界面进程,将数据传送到自身的消息界面,调用update方法实现对消息界面的同步更新。

Claims (6)

1.一种基于Android系统的多机蓝牙群通信方法,包括如下步骤:
(1)设置Android群通信主设备与从设备,开启主、从设备的蓝牙使用权限;创建主设备的蓝牙适配器BluetoothAdapter,作为所有蓝牙交互的入口,为搜索周边蓝牙从设备做好准备;
(2)通过主设备搜索其周边从设备,显示在主设备界面上,并由主设备向从设备发起蓝牙连接请求,若是第一次与该从设备进行连接,则先进行主、从设备的信息匹配,接收从设备的反馈信息并保存;反之,则创建一个列表,用来显示已经匹配好了的从设备,从中选取要通信的从设备,直接使用蓝牙API进行连接;
(3)主、从设备信息匹配、连接成功后,主设备为每一个从设备建立一个通信线程Thread,并通过调用Android系统自带的ListenUsingRfcommWithServic-eRecord方法,获取蓝牙服务套接字BluetoothServerSocket,以监听从设备的通信请求;
(4)每一个从设备都调用Android系统自带的CreateRfcommSocketToSer-viceRecord方法,获取蓝牙套接字BluetoothSocket,以管理从设备当前的连接信息;每一个从设备都响应主设备建立的通信线程Thread,并向主设备发起通信请求;当主设备监听到从设备的通信请求并接受后,开始进行数据通信;
(5)主设备进行数据的读取接收与广播转发,并将数据信息更新到消息界面中;
(6)每一个从设备进行数据信息的发送与接收,并对数据信息更新到各自的消息界面中。
2.根据权利要求1所述的基于Android系统的多机蓝牙群通信方法,其中步骤(2)所涉及的主、从设备的信息匹配,是指主设备中应保存有从设备的姓名、物理MAC地址信息;若没有,则由主设备向从设备发送一个请求匹配的信息,从设备接收到该信息后,反馈自己的姓名、物理MAC地址信息给主设备,主设备将该信息保存。
3.根据权利要求1所述的基于Android系统的多机蓝牙群通信方法,其中步骤(3)所述的蓝牙服务套接字BluetoothServerSocket,是用来监听通信请求的,当监听到一个通信请求并接受时,会生成一个蓝牙套接字BluetoothSocket来管理当前主设备的连接。
4.根据权利要求1所述的基于Android系统的多机蓝牙群通信方法,其中步骤(5)所述的主设备进行数据的读取接收与广播转发,一是指主设备通过读操作读取每一个从设备发送来的数据,并将该数据信息显示到消息界面中;二是指主设备通过写操作将数据广播给其它每一个从设备,并将该数据信息显示到消息界面中。
5.根据权利要求1所述的基于Android系统的多机蓝牙群通信方法,其中步骤(5)和(6)所涉及的将数据信息更新到消息界面中,是指将数据信息传送给主、从设备各自的用户界面进程,通过用户界面进程,将数据传送到主、从设备各自的消息界面,实现对消息界面的更新。
6.根据权利要求1所述的基于Android系统的多机蓝牙群通信方法,其中步骤(6)所述的每一个从设备进行数据信息的发送与接收,一是指每一个从设备都通过读操作读取主设备发送来的数据,并将该数据信息显示到消息界面中;二是指每一个从设备都通过写操作将数据发送给主设备,并将该数据信息显示到消息界面中。
CN 201110140972 2011-05-28 2011-05-28 基于Android系统的多机蓝牙群通信方法 Active CN102170679B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN 201110140972 CN102170679B (zh) 2011-05-28 2011-05-28 基于Android系统的多机蓝牙群通信方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN 201110140972 CN102170679B (zh) 2011-05-28 2011-05-28 基于Android系统的多机蓝牙群通信方法

Publications (2)

Publication Number Publication Date
CN102170679A CN102170679A (zh) 2011-08-31
CN102170679B true CN102170679B (zh) 2013-06-26

Family

ID=44491619

Family Applications (1)

Application Number Title Priority Date Filing Date
CN 201110140972 Active CN102170679B (zh) 2011-05-28 2011-05-28 基于Android系统的多机蓝牙群通信方法

Country Status (1)

Country Link
CN (1) CN102170679B (zh)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103200527B (zh) 2013-02-27 2015-09-16 中兴通讯股份有限公司 一种语音和/或视频的通讯方法及装置
CN103561479B (zh) * 2013-10-17 2017-03-08 东软熙康健康科技有限公司 一种蓝牙设备通信方法和装置
CN104038261B (zh) * 2014-06-03 2016-08-24 深圳天珑无线科技有限公司 多个设备之间的位置信息管理和共享方法及相关设备
CN105634561B (zh) * 2014-11-03 2018-09-25 阿里巴巴集团控股有限公司 一种信息交互方法及装置
CN104378838B (zh) * 2014-11-11 2018-05-25 广东欧珀移动通信有限公司 一种建立无线连接的方法及装置
CN104661229A (zh) * 2015-02-04 2015-05-27 广东顺德中山大学卡内基梅隆大学国际联合研究院 一种降低蓝牙与Wi-Fi工作中互扰的方法
CN104615528B (zh) * 2015-02-09 2018-03-09 兰州理工大学 一种智能手机传感器数据在线采集与实时处理方法
CN104780499B (zh) * 2015-04-01 2018-05-08 惠州Tcl移动通信有限公司 一种基于蓝牙的多设备智能互连方法及系统
CN104835304B (zh) * 2015-05-25 2019-01-01 中颖电子股份有限公司 蓝牙遥控装置及其配置方法
CN104994518B (zh) * 2015-05-26 2019-01-22 惠州Tcl移动通信有限公司 一种用于增强移动设备接收信号的系统及其方法
US9794981B2 (en) * 2015-09-17 2017-10-17 Casio Computer Co., Ltd. Wireless communication device, electronic timepiece and wireless communication method
CN105868013B (zh) * 2016-04-04 2019-06-04 上海大学 一种面向多点续采蓝牙通信的Android线程池设计方法
CN107147990B (zh) * 2017-05-12 2019-11-05 杭州天宽科技有限公司 一种蓝牙设备的通信方法及系统
CN107920171A (zh) * 2017-12-21 2018-04-17 赛意(上海)信息科技有限公司 一种基于智能手机下的App擦肩连接方法及系统
CN110853263A (zh) * 2019-11-15 2020-02-28 宁波兴为汽车电子有限公司 一种车载无线门铃配对方法
CN113207114B (zh) * 2021-05-06 2022-10-18 南京西觉硕信息科技有限公司 蓝牙音频主设备、从设备、蓝牙通信方法及系统

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101807168A (zh) * 2010-03-15 2010-08-18 北京航空航天大学 一种支持版本兼容的数字终端测试环境及其构建方法
CN101872420A (zh) * 2010-06-10 2010-10-27 石明霞 一种可加密的手写签批移动终端

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101807168A (zh) * 2010-03-15 2010-08-18 北京航空航天大学 一种支持版本兼容的数字终端测试环境及其构建方法
CN101872420A (zh) * 2010-06-10 2010-10-27 石明霞 一种可加密的手写签批移动终端

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Design and implementation of heterogeneous network management algorithm;yonghua cheng;《ICSP 2010》;20101203;全文 *
yonghua cheng.Design and implementation of heterogeneous network management algorithm.《ICSP 2010》.2010,

Also Published As

Publication number Publication date
CN102170679A (zh) 2011-08-31

Similar Documents

Publication Publication Date Title
CN102170679B (zh) 基于Android系统的多机蓝牙群通信方法
AU2016313610B2 (en) Method, device, and system for fast wireless accessory devices pairing
WO2020132922A1 (zh) 一种连接蓝牙设备方法及设备
US9955409B2 (en) Method and apparatus for device-to-device communication
CN103179635A (zh) 一种基于蓝牙的Android移动设备自组网和通信的方法
CN104300999A (zh) 一种通过手机实现对讲机功能的外部装置及其控制方法
EP4271123A3 (en) Rrc connection method and terminal
TW200709700A (en) Method of communicating signals in a mobile communication system
WO2018137364A1 (zh) 数据发送方法、数据发送终端以及基站
CN102036240A (zh) 将手机信息同步到pc的方法、手机、计算机及网络系统
CN105682255A (zh) 一种基于无指挥机模式的北斗通信终端自组网技术
CN104363658B (zh) 直通资源的管理方法和直通资源的管理系统
US9392631B2 (en) Wireless communication apparatus
CN108432311A (zh) 一种资源请求方法、设备、网络侧节点及系统
WO2014086180A1 (zh) 一种集群接入网、终端设备和加入集群组的方法
CN103457640A (zh) 一种快速数据传输方法、系统及移动终端
WO2019201127A1 (zh) 数据传输方法及装置
CN107231604B (zh) 一种数字通信方法及系统
CN105246129B (zh) 一种智能终端的组网方法及装置
CN102137394A (zh) 网络接入下加密移动通信终端系统及方法
EP3573418A3 (en) Method of establishing ultra-reliable transmission and user equipment and server using the same
CN106792429A (zh) 用户设备、基站及近距离业务单播通信、资源调度方法
CN108337659B (zh) 一种传输配置信息、监听消息的方法及设备
CN103634744A (zh) 一种集群组呼端到端加密的实现方法
CN104166637A (zh) 一种接收和发送信息的方法、终端以及系统

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant