2個(gè)知識(shí)點(diǎn),帶你走近藍(lán)牙設(shè)計(jì)
筆者結(jié)合自身經(jīng)驗(yàn),向我們介紹了做設(shè)計(jì)藍(lán)牙項(xiàng)目時(shí),應(yīng)該要知道的一些藍(lán)牙小知識(shí)以及設(shè)計(jì)時(shí)需要考慮的問題。讓我們來(lái)看看筆者是怎么說的吧:
最近做了一個(gè)關(guān)于帶Sound bar的智能電視的藍(lán)牙項(xiàng)目,就是將電視Sound bar當(dāng)作藍(lán)牙音箱,將手機(jī)、電腦等設(shè)備的聲音傳輸?shù)诫娨?,通過電視Sound bar播放聲音。做這個(gè)項(xiàng)目的時(shí)候遇到了各種大大小小的問題,好在都解決了。本篇文章總結(jié)了在設(shè)計(jì)藍(lán)牙相關(guān)的項(xiàng)目時(shí)需要了解的小知識(shí)以及要考慮的問題。
一、藍(lán)牙小知識(shí)
藍(lán)牙是一種無(wú)線技術(shù)標(biāo)準(zhǔn),可實(shí)現(xiàn)固定設(shè)備和樓宇個(gè)人域網(wǎng)之間的短距離數(shù)據(jù)交換。
藍(lán)牙發(fā)展至今經(jīng)歷了8個(gè)版本的更新:1.1、1.2、2.0、2.1、3.0、4.0、4.1、4.2、5.0。在1.x~3.0之間的我們稱之為傳統(tǒng)藍(lán)牙;4.x開始的藍(lán)牙稱之為低功耗藍(lán)牙也就是藍(lán)牙ble;當(dāng)然4.x版本的藍(lán)牙也是向下兼容的。Android手機(jī)必須系統(tǒng)版本4.3及以上才支持BLE API。
1. 藍(lán)牙設(shè)備最多可以連接幾個(gè)設(shè)備?
藍(lán)牙設(shè)備根據(jù)角色分為主設(shè)備和從設(shè)備2種角色,主設(shè)備最多可以支持7個(gè)設(shè)備連接,從設(shè)備很難與一個(gè)以上的設(shè)備連接。從設(shè)備被連接后,其他設(shè)備無(wú)法連接此設(shè)備??赡苡腥藛柫耸裁词侵髟O(shè)備,什么是從設(shè)備。你可以這樣區(qū)分:搜索并發(fā)起連接的設(shè)備是主設(shè)備,被搜索和被連接的設(shè)備是從設(shè)備。
2. 藍(lán)牙的Source端、Sink端、客戶端和服務(wù)端如何區(qū)分?
非低功耗設(shè)備
Source端為發(fā)送碼流的端,Sink端為接收碼流的端。
舉個(gè)例子:你的手機(jī)連接了藍(lán)牙音箱,則你的手機(jī)是Source端,會(huì)發(fā)送歌曲的信息給藍(lán)牙音箱播放;藍(lán)牙音箱則是Sink端,接收歌曲信息并播放。這個(gè)時(shí)候的主設(shè)備手機(jī)就是Source端,從設(shè)備藍(lán)牙音箱就是Sink端。
低功耗設(shè)備
低功耗設(shè)備的話是按客戶端(Client)和服務(wù)端(Server)來(lái)分。
例如:手環(huán)和手機(jī)連接后,手機(jī)作為客戶端(Client),手環(huán)作為服務(wù)端(Server)。因?yàn)閿?shù)據(jù)儲(chǔ)存在手環(huán)中,通過手環(huán)發(fā)送到手機(jī),所以手環(huán)作為服務(wù)端。
能反向相互發(fā)送文件設(shè)備:如手機(jī)連手機(jī)、手機(jī)連電腦、電腦連電腦等情況,就不存在Source端、Sink端、客戶端、服務(wù)端等情況,只有主從設(shè)備。并且這些設(shè)備可相互傳文件。
3. 藍(lán)牙設(shè)備配對(duì)
藍(lán)牙SIG為了保證藍(lán)牙通信的安全性,采用認(rèn)證的方式進(jìn)行數(shù)據(jù)交互。同時(shí)為了保證使用的方便性,以配對(duì)的形式完成兩個(gè)藍(lán)牙設(shè)備之間的首次通訊認(rèn)證。經(jīng)配對(duì)之后,隨后的通訊連接就不必每次都要做確認(rèn)。所以認(rèn)證碼的產(chǎn)生是從配對(duì)開始的,經(jīng)過配對(duì),設(shè)備之間以PIN碼建立約定的link key用于產(chǎn)生初始認(rèn)證碼,以用于以后建立的連接。
然而有些設(shè)備是不需要驗(yàn)證即可連接的,也就是節(jié)省了彈窗確認(rèn)框的步驟。感興趣的可以查看此網(wǎng)址:https://blog.csdn.net/qq_25827845/article/details/52400782
4. 藍(lán)牙設(shè)備連接
已配對(duì)成功的設(shè)備才可以進(jìn)行連接,已連接過的設(shè)備,下次可以直接連接,不需要配對(duì);打開藍(lán)牙后可自動(dòng)連接最后一次連接的藍(lán)牙設(shè)備,前提是配對(duì)信息不刪除。
二、設(shè)計(jì)時(shí)需要考慮的問題
1. 帶屏音箱和無(wú)屏音箱的區(qū)別
平時(shí)接觸較多的都是無(wú)屏音箱,例如平常的桌面藍(lán)牙小音箱,手機(jī)一連接就可以使用。常見的帶屏音箱較多的就是車載藍(lán)牙音箱、帶Sound bar的電視等。
那么設(shè)計(jì)無(wú)屏音箱和有屏音箱的區(qū)別究竟是什么?
無(wú)屏音箱
無(wú)屏音箱的幾乎所有的操作都在手機(jī)端,音箱端主要承載播放聲音、開/關(guān)機(jī)的操作、各種狀態(tài)的指示燈和語(yǔ)音提示等。
例如:等待連接、連接成功、播放中、斷開連接、低電量等會(huì)有相應(yīng)的指示燈提示;連接成功、斷開連接、低電量等還有聲音提示。部分音箱可能有切換音頻、播放等功能。
有屏音箱
有屏音箱通常是可以反控主設(shè)備,并且屏幕會(huì)展示當(dāng)前的聲音信息和狀態(tài)變化。對(duì)于智能電視來(lái)說,除了聲音播放的功能之外,它還可以進(jìn)行其他的操作,并且和手機(jī)一樣還可以和其他應(yīng)用交互。這就導(dǎo)致了很多其他復(fù)雜情況的出現(xiàn)。
2. 明確Source端和Sink的切換時(shí)機(jī)
對(duì)于電視Sound bar 的藍(lán)牙音箱來(lái)說,屬于非低功耗設(shè)備,但是對(duì)于電視本身是既可以作為主設(shè)備又可以作為從設(shè)備,既可以發(fā)送碼流又可以接受碼流。所以在使用中會(huì)涉及到主設(shè)備從設(shè)備的角色轉(zhuǎn)換,也會(huì)有Source端和Sink端的狀態(tài)切換,切換時(shí)機(jī)需要明確。
針對(duì)此情況可做以下規(guī)定:
(1)進(jìn)入藍(lán)牙音箱App界面后,電視設(shè)備由Source端切換為Sink端,作為可發(fā)現(xiàn)設(shè)備被其他設(shè)備發(fā)現(xiàn)并連接(從設(shè)備),但無(wú)法搜索并連接其他藍(lán)牙設(shè)備。此時(shí)可接受來(lái)自連接設(shè)備(如手機(jī))的音頻等碼流。
(2)退出藍(lán)牙音箱App界面后,電視設(shè)備由Sink端切換為Source端,可搜索并連接其他藍(lán)牙設(shè)備。跳轉(zhuǎn)到其他應(yīng)用處理方式與此相同。
3. 應(yīng)用切換與返回
針對(duì)Android系統(tǒng)的TV,還需要注意用戶按遙控器上的【返回】鍵的邏輯。在這些Source端和Sink端的切換以及應(yīng)用之間的跳轉(zhuǎn)過程后,需要遵循Android的返回規(guī)則,按【返回】鍵可以返回上一個(gè)應(yīng)用,并且在這個(gè)過程中完成Source端和Sink端的切換。
4. 藍(lán)牙應(yīng)用內(nèi)彈窗處理
在藍(lán)牙音箱App界面下會(huì)出現(xiàn)一些系統(tǒng)彈窗覆蓋在當(dāng)前頁(yè)面,這時(shí)候有兩種處理方式:
(1)彈窗彈出時(shí),歌曲暫停,關(guān)閉彈窗后,歌曲繼續(xù)播放;
(2)彈窗彈出時(shí),如不干擾聲音的,可繼續(xù)播放。關(guān)閉彈窗無(wú)影響。如果彈窗會(huì)引導(dǎo)切換到其他應(yīng)用,則切換后歌曲停止播放,并且則按上面Source切換規(guī)則來(lái)處理。
5. 當(dāng)前聲音通道被搶占
聲音通道被占,例如呼出語(yǔ)音類產(chǎn)品時(shí)(如Alexa),則暫停歌曲,直到音頻通道占用解除,歌曲恢復(fù)播放。如果因?yàn)槁曇粢龑?dǎo)啟動(dòng)新應(yīng)用,則除了暫停聲音后,還需要切換Sink端為Source端,接收其他音頻播放。
6. 通話處理
手機(jī)作為主設(shè)備連接音箱時(shí),如果有電話接入,分為可拾音音箱和不可拾音音箱兩種情況:
(1)可拾音音箱:
聲音傳到音箱上,用戶手機(jī)上可選擇聽筒、手機(jī)揚(yáng)聲器、或者是藍(lán)牙音箱;
(2)不可拾音音箱:
撥入電話:聲音傳到音箱,接電話后,用戶手機(jī)上可選擇聽筒、手機(jī)揚(yáng)聲器、或者是藍(lán)牙音箱。不過用戶還是得和用手機(jī)接聽一樣,靠近手機(jī)才能將聲音傳到對(duì)方手機(jī)里;
撥出電話:默認(rèn)聲音在當(dāng)前選擇好的通道上,用戶手機(jī)上可選擇聽筒、手機(jī)揚(yáng)聲器、或者是藍(lán)牙音箱。
其實(shí)關(guān)于通話處理的,手機(jī)都有相應(yīng)處理的,藍(lán)牙音箱可不做處理。
7. 藍(lán)牙連接狀態(tài)處理
藍(lán)牙設(shè)備的主要狀態(tài)為等待連接、配對(duì)、連接成功、連接失敗、斷開連接等5種狀態(tài),設(shè)計(jì)時(shí)需要明確這5種狀態(tài)的切換以及界面中的表現(xiàn)方式。
等待連接:界面中需要足夠的提示信息,等待其他設(shè)備來(lái)連接。其中必不可少的元素是當(dāng)前設(shè)備名稱,當(dāng)前狀態(tài)如等待連接。
配對(duì):藍(lán)牙配對(duì)有點(diǎn)擊配對(duì)和自動(dòng)配對(duì),點(diǎn)擊配對(duì)就是建立連接的兩個(gè)設(shè)備進(jìn)行確認(rèn)的一步,PIN碼一致的設(shè)備可成功配對(duì),配對(duì)之后才進(jìn)行設(shè)備連接。配對(duì)過程是可以根據(jù)產(chǎn)品的需求去掉這一步的,也就是自動(dòng)配對(duì)。
連接成功:連接成功后,要獲取連接音箱的設(shè)備(如手機(jī))的狀態(tài),判斷當(dāng)前手機(jī)是否在播放歌曲,如果當(dāng)前正在播放,則藍(lán)牙音箱也會(huì)立即播放歌曲。
連接失?。?/strong>連接失敗后,則設(shè)備之間無(wú)法通訊,用戶可以通過再次連接建立2個(gè)設(shè)備間的通訊。連接失敗后,設(shè)備應(yīng)該立即可以被再次連接的。
斷開連接:斷開連接屬于異常狀態(tài),在界面中需要及時(shí)的提示并切換狀態(tài)。也可以提供聲音的提示“斷開連接”。斷開連接之后,設(shè)備是立即可以被再次連接的,也就是回到了等待連接狀態(tài)。
8. 播放與暫停的動(dòng)效切換
因?yàn)殡娨暤乃{(lán)牙音箱是帶屏的,所以在藍(lán)牙音箱的狀態(tài)下,還需要處理屏的顯示效果。如何讓大屏和藍(lán)牙音箱播放的歌曲契合也是需要考慮的。
如果是有背景動(dòng)畫的,分為三種:
- 背景動(dòng)畫根據(jù)音樂頻譜跳動(dòng),如果要采用此種方式的話,希望你的團(tuán)隊(duì)可以做到背景動(dòng)畫和音樂頻譜的狀態(tài)一致。而不是歌曲節(jié)奏很快時(shí),當(dāng)前畫面動(dòng)畫節(jié)奏很慢,這樣效果會(huì)適得其反。
- 顯示靜態(tài)圖片,固定時(shí)間切換下一張,如果無(wú)法實(shí)現(xiàn)背景根據(jù)音樂頻譜跳動(dòng),可以采取這種方式,也是很多在線音樂App采取的方式。(只顯示一張靜態(tài)圖是保險(xiǎn)的做法,但是會(huì)顯得比較單調(diào)。)
- 背景動(dòng)畫和音樂頻譜無(wú)關(guān),采用這種方式的,選用的動(dòng)畫建議是勻速的。
9. 音樂和視頻等聲音處理方式不一致
音樂類音頻可以獲取如歌曲名、歌手、歌詞、時(shí)長(zhǎng)、播放進(jìn)度等信息都可以獲取,界面可以正常地展示這些信息。但是對(duì)于視頻類則獲取不了這些信息,只拿到音頻,拿不到時(shí)間、聲音描述信息;并且無(wú)法判斷用戶從音頻切換到了視頻。所以界面最好兼容有歌曲名、歌手、歌詞、時(shí)長(zhǎng)、播放進(jìn)度和無(wú)這些信息的展示。
三、結(jié)語(yǔ)
文章主要總結(jié)了設(shè)計(jì)師需要了解的藍(lán)牙小知識(shí)和在設(shè)計(jì)藍(lán)牙App需要注意的問題,文章的多處都是以電視的藍(lán)牙音箱舉例的,所以如果是設(shè)計(jì)不帶屏的藍(lán)牙App會(huì)和以上情況不一致,請(qǐng)參考使用。
如果喜歡文章的要記得點(diǎn)贊哦!
參考資料:
CSDN《深入了解Android藍(lán)牙Bluetooth》
原文地址:https://blog.csdn.net/androidstarjack/article/details/60468468
CSDN《android bluetooth——藍(lán)牙的開啟、搜索、配對(duì)與連接》
原文地址:https://blog.csdn.net/yehui928186846/article/details/52710112
CSDN《Android 藍(lán)牙開發(fā)之搜索、配對(duì)、連接、通信大全》
原文地址:https://blog.csdn.net/qq_25827845/article/details/52997523
作者:一戈何處,微信公眾號(hào):一戈何處
本文由 @一戈何處?原創(chuàng)發(fā)布于人人都是產(chǎn)品經(jīng)理,未經(jīng)作者許可,禁止轉(zhuǎn)載
題圖來(lái)自Unsplash,基于CC0協(xié)議
藍(lán)牙產(chǎn)品設(shè)計(jì),不僅要懂技術(shù),懂藍(lán)牙,更要懂產(chǎn)品設(shè)計(jì),,–速嵌智造
? 原來(lái)藍(lán)牙連接背后還有這么高深的設(shè)計(jì)方式
科普好文