android 蓝牙开发

android蓝牙开发Demo


基于menghnhhuan源码基础的android蓝牙通信的Demo
项目职责:
1.BluetoothActivity
用途:装载存放Device与Chat碎片的容器。
	1)定义当前application的状态,默认无状态
	2)加载Device与Chat碎片
2.DeviceFragment
用途:显示已配对与扫描到的Device
	1)注册蓝牙扫描的接收广播
	2)让用户打开蓝牙
	3)显示已经配对的蓝牙设备
	4)接收到扫描广播,显示扫描到的蓝牙设备
	5)"搜索设备"按钮点击的时候去开启或关闭扫描蓝牙设备的服务(系统服务)
	6)"启动服务端"按钮点击的时候,将当前application的状态设置成SERVER状态,并切换UI到ChatFragment
	7)连接扫描到的设备,条目点击的时候,在对话框中去将当前application的状态设置成CLIENT,将当前条目对应的address记录下来,
		并切换到UI到ChatFragment
3.ChatFragment
用途:显示连接状态,以及聊天内容(没有连接,就不能聊天)
	1)获取默认的蓝牙适配器
	2)"发送"按钮点击的时候,去将编辑框输入的内容,写到socket的输出流里面,并且,ListView添加一个Item显示当前内容。
		当然,如果连接还没有建立,就不发生消息,也不增加Item
	3)"断开"按钮点击的时候,就关闭已经连接的socket,中断对应的线程。将application状态重置到无状态。将服务端是否开启状态设置成否。
	4)** 在当前碎片获取到焦点的时候,检测服务端开启状态,如果是开启状态,就不做任何操作,除非是点击事件带来的逻辑;*如果服务端不是开启状态
		就去看当前application的状态:
			如果application是CLIENT状态,就先判断,有没有拿到服务端的地址,如果没有拿到,就不做什么操作;如果拿到了,就获取服务端
		的DEVICE对象,并开启客户端连接的线程,并将服务端开启的状态设置成是。//TODO1
		 	如果application的SERVER状态,就直接开启服务端线程,并将服务端开启状态设置成是。//TODO2
	  ***TODO1:根据获取的DEVICE对象<是服务端对应的DEVICE>,去创建一个蓝牙socket,同时,让UI显示正在连接服务端..,然后执行
	  		socket连接操作。并且,开启线程去接收数据。//TODO3  
	  			如果客户端连接服务端失败,UI显示"连接异常..."
	  ***TODO2:首先通过默认蓝牙适配器去创建一个蓝牙服务端socket,同时UI显示:"等待客户端连接..",然后执行接收操作,在接收到了之后,
	  		让UI显示"客户端已经连接上!可以发送信息。".然后开启线程去接收数据。//TODO3
	  ***TODO3:根据socket对象,去获得一个InputStream,然后循环读取流中数据,并及时显示到ListView中。
	5)在当前碎片被销毁的时候,根据当前的application的状态,中断对应的线程,并且将服务端是否开启状态设置成否,application状态设置成
		无状态。

代码后续跟上,未完待续...

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值