蓝牙通信、画折线统计图的android应用
来源:互联网 发布:vb简单程序编写 编辑:程序博客网 时间:2024/06/14 20:35
android功能:蓝牙通信,将数据以折线统计图的形式显示。
原用途:水表读数统计,将水流量上传到手机实时观测。稍加改动应该适用于任何统计量传输的应用。
GITHUB项目地址:https://github.com/wjbianjason/bluetooth
文件里面有一个蓝牙聊天app,你可以用它来模拟蓝牙模块传数据。但不确定还能用不,中途我改了里面的代码做了
专向的调整。
闲话不多讲,进入正题
先简单通过图片介绍功能,看是不是各位想要的
哎,CSDN写个博客真麻烦,希望操作界面能再人性化一点。
该工程包含两个程序包,其中com.ds.bluetooth是主要功能程序包,另一个程序包com.ds.bluetoothUtil是蓝牙实现
的辅助程序包。另外还有4个xml显示文件,主要的有client.xml实现操作界面,device.xml显示搜索到的蓝牙列表。其
实一言概之就是,打开蓝牙,启动蓝牙发现,监听蓝牙发现的广播然后连接,之后就是buffer通信,而画图呢就是一
桢一桢的换,最后出现折线图滚动的效果.
代码讲解我全附图片,方便些,要复制把工程拷下来就是了
1、Com.ds.bluetooth包下有5个java文件。最主要的4个的实现功能如下。
(1)MainActivity.java是应用打开后的第一个activity,主要功能是点击相应按键打开客户端界面,存在的意义是客户
端的重启。转到客户端界面的代码如下:
(2)ClientAvtivity.java是客户端界面的activity,主要功能是实现搜索、画图、命令发送的和数据接收的显示。
1、点击“开始搜索”键执行以下代码。
转到DeviceListActivity.java进行蓝牙设备的搜索和显示。
2、 点击“断开”键,执行以下代码,关闭蓝牙套接字连接。
3、点击“画图”键,执行以下代码,清理掉坐标轴上的折线图,x轴时间清0。
4、 广播接收的各类响应代码如下,实现对其他java文件广播事件的处理,其中包括对数据的接收。
5、数据的发送,通过EditView显示自己的发送数据,通过进行发送隐式intent让相应广播器接收处理
6、对选择设备的响应接收,创建蓝牙设备列表的activity时是用startActivityForResult()方法,所以可通过onAcitvityResult方法来接收返回的数据,即选择的蓝牙设备名和地址。
折线图的实现,通过重写的View文件,在已画好的坐标轴上描点连线。
通过保存前一帧图的后7个点的纵坐标数据,实现折线图的左移,且横坐标的时间显示也逐渐增加。
(3)DeviceListActivity.java,实现的功能是显示搜索到的蓝牙设备。
注册广播接收,并建立ListView来显示蓝牙设备
广播接收处理,处理找到设备和蓝牙搜索结束的广播
处理蓝牙设备选择的触屏选择
(4)MychartView.java主要实现画图界面的每一帧的构造,包括的坐标图和折线图。实现的主要方法是利用canvas画布类。
画线函数,利用它画出坐标图,画出折线连接数据点。
坐标图相应的画笔设置
画出数据点,并实现数据点的向右移动。
2、com.ds.bluetoothUtil包下有5个java文件,下面介绍主要的3个java文件。
(1)BluetoothClientService.java主要实现客户端界面后台的各项功能,包括数据发送和接收,蓝牙设备的查找,并
注册相应的广播接收来响应相应的信息,又通过发送广播将信息传输出去。
打开蓝牙适配器,开始搜索
发现蓝牙设备后,发送广播告知DeviceListActivity.java。
广播接收器的注册,从中可以看到这个service具体处理的广播信号
接收数据的处理,直接将byte型数据无符号十进制显示。
调用通信进程发送数据
(2)BluetoothClientConnThread.java建立一个蓝牙设备连接进程,主要实现蓝牙设备的连接,建立通信信道。
(3)BluetoothCommunThread.java是通信进程,用于具体数据的接收和发送
实现数据的接收
实现数据的发送
好了,基本就是这么多了,大家如果在工程里看不明白就到这里来吧,都怪我不好,不是很喜欢写注释。。。我以后会改正的。。这段时间可能更新的都是android,因为马上java要考试了,借整理以前写的android来复习一下java,有什么请留言吧,哥哥姐姐给点鼓励嘛。。。
- 蓝牙通信、画折线统计图的android应用
- 画一个折线统计图
- Android 蓝牙通信的开发与应用
- 统计图折线
- android折线图的应用
- Android自定义统计图(柱状图,折线图,饼状图)
- Android自定义统计图(柱状图,折线图,饼状图)
- Android自定义统计图(柱状图,折线图,饼状图)
- Android自定义统计图(柱状图,折线图,饼状图)
- Android自定义View——折线统计图
- Android自定义统计图(柱状图,折线图,饼状图)
- 跟随统计图扩展的折线图:
- Android设备的蓝牙通信
- Android----蓝牙通信使用 不同手机下同一应用通信
- Android应用开发笔记(11):Android上的蓝牙通信功能的开发:BluetoothChat例程分析
- Android 蓝牙开发-蓝牙通信
- (转)Android自定义统计图(柱状图,折线图,饼状图)
- Android集成统计图 饼状图 折线图 和 柱状图
- HBase-0.90.3安装(Ubuntu Server11.04+Hadoop-0.20.2)
- 第十六周项目 1 数组的排序
- MySQL乱码问题解决
- qt注册表、ini文件操作
- OpenFire+Spark构建实时协作平台
- 蓝牙通信、画折线统计图的android应用
- Jira整合OpenFire实现任务实时提醒
- Java的System.getProperty可以获得些什么
- Android 开机启动服务问题
- 树莓派引脚编号说明
- 学生作业6
- 公钥加密技术
- asp.net中updatepanel控件向外传值
- cdev_alloc/cdev_init、cdev_add、cdev_del