Beacon系列的前兩篇文章中我們已經介紹了Beacon應用開發的概念和AltBeacon廣播形式,并詳細講解了如何利用AltBeacon安卓API開發博物館導覽APP原型。在今天的最終篇里,本文將向大家介紹如何測試這一博物館導覽APP。
選擇藍牙開發板,啟動你的專屬Beacon
我們暫時還沒有現成采用AltBeacon形式的Beacon,但手上有不少藍牙開發板。藍牙開發板是具有智能藍牙功能的微控制器,其內部一般都內置了藍牙協議棧。由于開發板一般都具有豐富的外設接口和引線,因此開發板通常用來搭建產品的原型可以將編譯生成的固件直接燒入到開發板當中,甚至可以直接做成產品功能展示,或是單純用于試驗或學習。我決定用自己手上既有的幾塊開發板來創建Beacon應用,然后測試一下安卓博物館導覽APP。
我使用的是Bluegiga DKBluetooth Low Energy開發套件和英特爾Edison開發板。Bluegiga開發板的編程采用BGScript腳本語言。英特爾Edison運行的是則Linux,編程語言有多項選擇。我習慣用由JavaScript框架驅動的Node.js,這樣能找到適用的智能藍牙的功能包或是庫文件。
Bluegiga變身AltBeacon
Bluegiga的BGScript腳本語言簡單易懂,且配有Bluegiga框架所提供的豐富的功能庫。用BGScript創建Bluegiga應用涉及用文本編輯器創建腳本文件和其他項目配置文件。通過Bluegiga SDK中的軟件更新工具,就可以直接通過USB將編譯生成的固件燒入到開發板上。
腳本包括變量和數組聲明、事件處理器回調函數。回調是編程模型的重要部分,調用標準Bluegiga功能函數會促發相關的回調函數。同樣,框架也可以調用事件處理器,以回應腳本之外的情況。
在任何平臺上實現Beacon都涉及與通用訪問配置文件(Generic Access Profile,GAP)協作,要求設置廣播數據包內容、配置廣播參數。
Bluegiga AltBeacon實施的要素如下。