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