【CSRMesh蓝牙开发】CSRMesh开发--Android应用

来源:互联网 发布:淘宝店铺卖米 编辑:程序博客网 时间:2024/06/06 05:48
   着手实验室遗留下来的灯泡工程已经快一个多月了。一直在那里瞎捣鼓,方向不定,一会儿研究这个,一会儿研究那个。整个代码看了好几遍,上上周开始重新改写,问题不断。大多数都是Android开发过程中对Eclipse和Java不熟悉的缘故。好不容易从上个星期开始,正式进入核心部分。今天恰好又思路中断,故而停下总结前些日子的工作。各位大牛看到后可以指导一二。   首先,介绍一下我的工作环境:
  • 项目工程——CSRMesh demo
  • 预期目标——
    - 解析demo后,做出自己 API
    - API开发成Cordova插件

CSRMesh代码的解析

CSRMesh整个应用的程序结构如下图所示:
这里写图片描述
在src文件夹里有三个包文件,分别为csrmeshdemo csrmeshdemo.database csrmeshdemo.entities三个。主要的程序都在demo里。
这里写图片描述 这里写图片描述
在这个文件夹中,重要的几个.java文件为MainActivity.java ; ScanResultsActivity.java ; LightControllerFragment.java ; 其它的几个 .java文件分别为配置组,监听组,本地存储组(组的意思:若干相关的java文件,实现某种功能)。稍后的博文中,如有涉及,一 一介绍。除了这个src,还有一个更重要libraries ,即上图右的mesh.libraries。该库直接操作蓝牙模块组网的相关控制。
CSRMesh demo的程序执行流程大体如下:

ScanResultsActivity→扫描设备→连接蓝牙→触发MainActivity→启动MeshService.class→监听Mesh网络发出的事件

如果,APP是初次使用,还会要求输入密码,则其流程是这样的:

SecuritySettingsFragment→ScanResultsActivity→AssociationFragment→连接蓝牙→ 触发MainActivity→启动MeshService.class→监听Mesh网络发出的事件

程序最主要的操作便是MainActivity里的MeshService.class的回调。大部分功能都在MainActivity里被定义了。因为MainActivity里的代码太多,将另开一篇进行叙述。

0 0
原创粉丝点击