ZigBee和Android的智能移動監控系統設計
2.2 信息處理與控制子系統
信息處理與控制子系統是在Android智能移動平臺上研發的。Android智能平臺體系從上到下由應用程序、應用程序框架、外部庫、Andr oid運行時庫、硬件抽象層HAL(Hardware Abstraction Laycr)和Linux內核組成。
Android智能移動平臺的研發需要借助Eclipse、NDK和JNI等工具和方法。信息處理與控制子系統的MVC模式如圖8所示。本文是按MVC模式研發信息處理與控制子系統的。本文引用地址:http://www.104case.com/article/154377.htm
Android應用程序的設計必須要遵循單線程模型。當Android應用程序啟動時,Android系統會同時啟動一個對應的主線程即UI線程,用于處理與用戶界面UI(User Interface)相關的事件。UI線程不是線程安全的。
此設計需要將環境信息實時地顯示在Android應用程序上,同時需要及時地將用戶操作轉換成用戶命令發送至信息采集與傳輸子系統。岡此,為了避免阻塞UI線程,設計了一個守候線程并采用了基于zbHandler的消息傳遞機制。UI線程和守候線程的關系如圖9所示。
守候線程是借助于本地方法獲取Linux底層驅動環境信息的。信息處理與控制子系統中的本地方法被封裝在一個名為ZigBeeJni的類中,其定義如下:
結語
本文研究了基于ZigBee網絡和Android智能移動平臺的監控系統的設計。經過嚴格的測試,本系統能夠完成對環境信息的實時監測,并能及時地響應用戶發出的各種控制命令,系統的設計達到了預期的目標。
評論