Beacon在可穿戴設備中的應用:安卓&藍牙
根據(jù)研究機構(gòu)IDC統(tǒng)計,2015年智能可穿戴技術市場將成長至2014年的5倍之多,產(chǎn)品出貨量預計超過2500萬單位,且絕大部分都將采用Bluetooth Smart 為用戶提供無縫、簡單易行的連接體驗。未來可穿戴設備、智能手機和基于云的互聯(lián)網(wǎng)服務將更好地協(xié)同工作,再也不需用戶采取任何復雜的操作或花時間了解這些專業(yè)知識。沒錯,就是這么簡單給力!
本文引用地址:http://www.butianyuan.cn/article/281967.htm在之前Beacon系列文章中,小碼哥與大家介紹了能夠檢測、并與附近藍牙 Beacon互動的智能手機APP。在這一系列文章的第二篇中,小碼哥將為大家介紹一款面向安卓智能手機博物館導覽APP,這一APP就利用藍牙Beacon向用戶發(fā)送附近重要展品信息的提示信息。而在本系列文章中,小碼哥關注的則是如何讓Beacon相關的應用在可穿戴設備上也能夠提供同樣的體驗。如果說之前的博物館導覽APP是“手掌上的導覽APP”,那么今天小碼哥給大家?guī)淼木褪?ldquo;手腕上的導覽APP”。
Android Wear
2014年,谷歌推出了新的Android Wear版本,這是面向可穿戴設備的安卓操作系統(tǒng)。一般來說,像Moto 360 智能手表這樣的Android Wear設備都需要與安卓智能手機協(xié)同工作,而Android Wear支持可穿戴設備與其他運行完整安卓系統(tǒng)的設備進行雙向通信。
Bluetooth Smart的架構(gòu)和角色
在 Android Wear的世界中,設備就相當于節(jié)點,這些節(jié)點各自具備不同的功能,并被連接到可穿戴的網(wǎng)絡中。一般來說,智能手機相當于可穿戴網(wǎng)絡的中樞,與其他類型如智能手表的節(jié)點相連接。節(jié)點與節(jié)點之間就是通過Bluetooth Smart進行通信的,但Android Wear開發(fā)者其實并不需要全盤地了解Bluetooth Smart。通過Android Wear的API就可以輕松加愉快地實現(xiàn)藍牙技術的功能!
也就是說,Android Wear允許開發(fā)者直接使用如android.bluetooth.le.BluetoothLeScanner這樣的標準Bluetooth Smart API。這樣,可穿戴設備就可以脫離手機的輔助,直接與其他Bluetooth Smart設備互動了。
可穿戴設備要比智能手機中樞的功能少得多,因此可穿戴設備通常要和智能手機協(xié)同工作,將一些高難的計算工作交由智能手機處理。在本文中我們將重點關注這樣的使用場景。
![](http://editerupload.eepw.com.cn/201510/b5f53692c4e36e381d91bba7eface8b8.jpg)
開發(fā)可穿戴博物館導覽APP的三大方法
有三種方法可以將小碼哥之前介紹過的智能手機博物館導覽APP拓展到Moto 360智能手表上:
1. 使用標準Android Notifications
2. 使用面向Android Wear設備的Extend Notifications
3. 開發(fā)在可穿戴設備上運行的Android WearAPP
今天小碼哥先為大家介紹前兩個基于通知的方法。在第二篇中會再向大家介紹AndroidWear APP的開發(fā)。
標準通知(Standard Notifications)
告訴你一個好消息:安卓智能手機發(fā)出的任何通知都會被自動發(fā)送至相應的、已連接的可穿戴設備上。因此,如果已經(jīng)在安卓智能手機APP上使用了通知,那么即使不再另外編寫專門的代碼,APP通知在可穿戴設備上顯示也不成問題,酷吧!
![](http://editerupload.eepw.com.cn/201510/f18cc6ced3dee9340598aa63589c1eac.jpg)
小碼哥之前在Beacon系列文章中的第二篇就包括用于生成通知的代碼片段。
可穿戴設備的擴展通知
安卓API提供一些方法為可穿戴設備定制信息,而不是單純地把可穿戴設備作為智能手機通知提示的顯示屏。例如,我們可以利用特殊的文本樣式,設置通知的背景圖像,建立多重頁面讓用戶可以通過劃屏查看通知詳情,還可以在通知中添加一些操作,增加可穿戴設備的互動性。
我決定為用戶在Android Wear設備上提供多個信息頁面,再添加一些互動,讓用戶可以對特定的展覽內(nèi)容做出“喜歡”或“不喜歡”的反饋。這不難實現(xiàn),只要借助一個名為WearableExtender的工具即可。我們來簡要地看一下代碼吧。
我門先來創(chuàng)建三個包括主要的展覽信息頁面,為讓使用者更容易在可穿戴設備上閱讀信息,我們可以使用文字形式呈現(xiàn)。
![](http://editerupload.eepw.com.cn/201510/b6a6eb7343ccd44432b90bfdc67a6efb.jpg)
接下來我們需要創(chuàng)建Action物件,以回應用戶對互動選項“喜歡”和“不喜歡”的選擇。Action與頁面類似,但需要有一個與之相關聯(lián)的Intent包括在PendingIntent對象里。安卓系統(tǒng)里,Intent是即將執(zhí)行的操作,而PendingIntent是可以交由另一個應用執(zhí)行的Intent。在這里的情況下,前述“另一個應用”指的就是博物館導覽APP,我規(guī)定PendingIntent需要啟動一個名為NotificationActionHandler的Activity。
![](http://editerupload.eepw.com.cn/201510/4ae294b215576df31315c5424b65e396.jpg)
最后,我們再創(chuàng)建一個包括附加頁面和操作的WearableExtender,再建立一個包含它的通知,再加上代表一些基本設置的數(shù)據(jù)和我們的第一個通知頁面。觸發(fā)通知,就成了!可穿戴設備會收到一個多頁的、互動的通知。
![](http://editerupload.eepw.com.cn/201510/8228a595449bff97f49482a1d075a10d.jpg)
通知就會像下圖的形式顯示在智能手表屏幕上
![](http://editerupload.eepw.com.cn/201510/757963e0a62e9b6f3ae117e1c2c2a411.jpg)
當用戶選擇“喜歡”或“不喜歡”的操作后,NotificationActionHandlerActivity就會在智能手機上啟動,顯示以下屏幕之一:
![](http://editerupload.eepw.com.cn/201510/bfe6b781b704605f9dde0ea43c2c27cf.jpg)
你看,單單利用安卓通知,就能實現(xiàn)這么多功能!
總結(jié)
Android Wear還是很容易上手的。通知(Notification)對于大多數(shù)安卓應用開發(fā)者都不陌生,Bluetooth Smart會默默地在幕后幫你搞定智能手機和可穿戴設備之間的通訊,而不需要開發(fā)者花太多時間專門了解它。
評論