满城风絮 2013-04-23
最近一直在忙Android的工控软件设计,写一点心得,希望对这方面开发的有一点带你帮助。
1)从蓝牙接收了数据又如何保存?
之前没有想过接收的数据如何保存,就简单的用一个字节数组进行保存,后来处理数据的时候就遇到了一堆问题,不是指令处理不对,就是接收的数据少了一部分,或是接收的数据还没有处理又被覆盖了,最后只能采用队列的方式保存数据,然后再根据定义的数据格式进行提取数据,再进行处理。
2)设备与手机终端之间的通信协议如何设计?
项目已开始也没有好好考虑这个通信协议,通信格式不规范,这样会增加数据处理的难度,还会造成数据处理出错,工控软件还讲究的是实时性,所以 这个处理速度还是必须的,一个很好的通信协议对整个软件构架都有影响,设计不好,只能是不是得打补丁,建议使用TLV的格式,设计设备与终端之间的通信协议。
3)设备与终端之间是否需要心跳?
这个毫无疑问是必须的,如果没有心跳,那蓝牙断开连接了双方都不知道,这样一直开着终端是毫无意义的。
4)如何增强用户体验?
android软件不单单是界面需要用户体验高,工控软件内部处理流程也需要处理好,内部的流程直接影响到用户体验,比如说终端与设备之间自动关联,设备与终端断开连接以后,提醒用户去关联设备,或是内部进行自动连接。
追踪溯源等平台功能的开发,加快退静工控系统安全防护核心技术的突破,研发工控系统登记保护检查工具,有效推动登记保护2.0标准的实施。还有一些事国企下属的全资安全公司专门负责工控系统的安全评估和审查工作。