android 蓝牙开发.docx
《android 蓝牙开发.docx》由会员分享,可在线阅读,更多相关《android 蓝牙开发.docx(29页珍藏版)》请在优知文库上搜索。
1、Android平台支持蓝牙网络协议栈,实现蓝牙设备之间数据的无线传蛤.本文档描述了怎样利用android平台供应的蓝牙APl去实现蓝牙设备之间的通信,蓝牙设备之间的通信主要包括了四个步骤:设置蓝牙设备;找寻局域网内可能或者匹配的设备;连接设备;设备之间的数据传输C以下是建立蓝牙连接的所须要的些基本类:BhIetOothAdaPter类:代表:一个本地的蓝牙适配器C他是哈部蓝牙交互的的入口点。利用它你可以发觉其他蓝牙设备,查询绑定了的设备,运用已知的MAC地址实例化一个蓝牙设备和建立一个BlUetoothServerSocket(作为服务器端)来监听来自其他没备的连接。BIUetOOthDevi
2、ce类:代表一个远端的蓝牙设备,运用它恳求远端蓝牙设备连接或者获得远端蓝牙设备的名称、地址、种类和绑定状态。(其信息是封装在bluetoothsocket中)。BIUetOOthSOCket类:代表了个蓝牙套接字的接口(类似于tcp中的套接字),他是应用程序通过输入、输出流与其他蓝牙设备通信的连接点CBlueboothserversocket类:代表打开服务连接来监听可能到来的连接恳求(属于SerVer端),为了连接两个蓝牙设备必需有一个设备作为服务器打开个服务套接字。当远端设备发起连接恳求的时候,并且已经连接到了的时候,Blueboothserversocket类将会返同一个bluetoot
3、hsocket0Bluetoothclass类:描述一个蓝牙设备的一般特点和实力。他的只读屈性集定义了设备的主、次设备类和一些相关服务。然而,他并没有精确的描述全部该设备所支持的蓝牙文件和服务,而是作为对设备种类来说的一个小小示意。下面说说详细的编程实现:忏先,耍操作蓝牙,先要在AndrOidManifeSt.xml里加入权限其次,必需确定你的设备支持蓝牙,并保证他可以用。假如你的设备支持蓝牙,将它使能。当然,有两种方法,种是在你的系统设置里开启蓝牙,另外一中是在你的应用程序里启动蓝牙功能,第一种方法就不讲广,详细讲一个其次种方法:首先通过调用静态方法getDefaultdapter()获得蓝
4、牙适配器bluetoothadapter,以后你就可以运用该对象了。假如返回为空,thestoryisover。BluetoothAdaptermBluetoothAdapter=Bluetoothdapter.getDefaultdapter();if(mBluetoothAdapter=null)/DevicedoesnotsupportBluetooth其次,调用isEnabled()来查询当前蓝牙设备的状态,假如返回为false,则表示蓝牙设备没才开启,接下来你须要封装一个ACTION-REQUEST-ENAB1.E恳求到intent里面,调用StartActivityForRcsul
5、tO方法使能蓝牙设备,例如:if(!mBluetoothAdapter.isEnabledO)IntentCnableBtIntent=newIntent(BluetoothAdapter-ACTION-REQUEST-ENAB1.E);StartACtivityForReSUlt(CnabIeBtInten1.REQUEST-ENAB1.E-BT);至此,如不出意外,恭喜你的蓝牙设备已经开启广,接下来须要杳找周边可能存在的蓝牙设备了。杳找设备:运用Huetoothadapter类里的方法,你可以查找远端设备(不过蓝牙杳找的范围似乎是在十米以内吧)或者杳询在你手机上已经匹配(或者说绑定)的其他
6、手机了。当然须要确定对方蓝牙设备已经开启或者已经开后r“被发觉使能“功能(对方设备是可以被发觉的是你能够发起连接的前提条件)。假如该设备是可以被发觉的,会反馈回来些对方的设备信息,比如名字、MAC地址等,利用这些信息,你的设备就可以选择去向对方初始化一个连接。假如你是第一次与该设备连接,那么一个配对的恳求就会自动的显示给用户。当设备配对好之后,他的一些基本信息(主要是名字和MAC)被保存下来并可以运用蓝牙的APl来读取C运用已知的MAe地址就可以对远端的蓝牙设备发起连接恳求。匹配好的设备和连接上的设备的不同点:匹配好只是说明对方设备发觉了你的存在,并拥有一个共同的识别码,并且可以连接。连接匕表
7、示当前设备共享一个RFCOMM信道并且两者之间可以交换数据也就是是说蓝牙设备在建v:RFCOMM信道之前,必需是已经配对好了的。怎么查询匹配好的设备:在建立连接之前你必需先杳询配对好了的蓝牙设备集(你四周的蓝牙设备可能不止一个),以便你选取哪一个设备进行通信,例如你可以你可以杳询全部配对的蓝牙设备,并运用一个数组适配器将其打印显示出来:SetpairedDevices=mBluetoothAdapter.getBondedDcvices();/Iftherearepaireddevicesif(PairCdDCViCeS.size。0)/1.oopthroughpaireddevicesfor
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- android 蓝牙开发 蓝牙 开发
