基于Android健康服务终端蓝牙传输软件的设计
mBluetoothAdapter=BluetoothAdapter.getDefaultAdapter();
如果蓝牙可用,则mBluetoothAdapter不为空,然后判断蓝牙是否打开,若未打开,则提示用户打开蓝牙。
![d.JPG](http://editerupload.eepw.com.cn/fetch/20130807/154505_3_0.jpg)
到此,蓝牙设备已经打开。
在Android应用程序开发中,若要建立两个蓝牙设备的连接,必须实现客户端和服务器端代码。一个用来开启服务监听,一个发送连接请求。当它们都拥有一个蓝牙套接字在同一RFECOMM信道上时,说明它们之间已经建立好连接。服务器端采用accept()方法来建立连接。由于accept()方法是一种阻塞调用,因此不应该放在主Acitvity里,要新建一个线程来管理。
![f.JPG](http://editerupload.eepw.com.cn/fetch/20130807/154505_3_1.jpg)
而客户端则采用connect()方法来建立连接。同样也是一种阻塞调用,同样需要新建一个线程来管理。
![g.JPG](http://editerupload.eepw.com.cn/fetch/20130807/154505_3_2.jpg)
当设备连接上以后,每个设备都拥有各自的Bluetoothsocket。现在就可以实现设备之间数据共享了。同样读取和写操作都是阻塞调用,需要建立一个专用的线程来管理。
![h.JPG](http://editerupload.eepw.com.cn/fetch/20130807/154505_3_3.jpg)
![i.JPG](http://editerupload.eepw.com.cn/fetch/20130807/154505_3_4.jpg)
![](https://webstorage.eepw.com.cn/images/2014/m/wx.png)
加入微信
获取电子行业最新资讯
搜索微信公众号:EEPW
或用微信扫描左侧二维码