Android O里的藍(lán)牙那點(diǎn)事
Google已于5月17日的開發(fā)者大會(huì)上正式宣布,Beta版Android O即日起對(duì)普通用戶開放。和以往一樣,Google已經(jīng)3月份提早向開發(fā)者提供了下一代Android的預(yù)覽版,Android O[1] Developer Preview。
本文引用地址:http://www.ex-cimer.com/article/201705/359567.htm從Android開發(fā)者的Reference Guide[2] 以及其開發(fā)者博客上發(fā)布的博文來看,Android O在藍(lán)牙5的支持上著墨頗多,“藍(lán)”小編覺得今天有必要為大家腦補(bǔ)一下Android O當(dāng)中的藍(lán)牙那些事。
首先要向大家介紹一下Android版本是如何命名的。Google是按照英文字母表的順序?yàn)锳ndroid系統(tǒng)命名的,單個(gè)字母的版本代碼在正式發(fā)布之后會(huì)擴(kuò)展為各種甜品的名字,比如從Android 4.3(Android也是從這個(gè)版本開始支持低功耗藍(lán)牙(Bluetooth low energy) 技術(shù))開始,依次為:
•Android 4.3,Jelly Bean,果凍豆
•Android 4.4,KitKat,奇巧巧克力
•Android 5.0,Lollipop,棒棒糖
•Android 6.0,Marshmallow,棉花糖
• Android 7.0,Nougat,牛軋?zhí)?/p>
•Android 8.0,O(有傳聞可能是奧利奧Oreo ...(^_^)...)
Android的版本命名固然有趣,以上的甜品也都是小編的最愛,但是小編今天在這里寫這篇文章可不是為了讓大家科普各種甜品的名的,我們的今天的目的,還是為了大家了解Google I/O開發(fā)者大會(huì)上發(fā)布的Android O在藍(lán)牙方面有哪些已確認(rèn)的新特性。
從開發(fā)者預(yù)覽版來看,目前有兩個(gè)針對(duì)藍(lán)牙的主要特性將會(huì)加入到Android O當(dāng)中:
1、針對(duì)藍(lán)牙5的更新
藍(lán)牙5在去年12月份對(duì)外正式發(fā)布,主要包括4倍的通信距離擴(kuò)展,2倍的通信速率提高以及8倍的廣播包數(shù)據(jù)容量擴(kuò)展。在最新的Android開發(fā)者參考文檔API:O當(dāng)中,對(duì)以上三個(gè)特性都有觸及。
setPreferredPhy方法
通過setPreferredPhy方法,可以對(duì)Android設(shè)備的藍(lán)牙PHY層進(jìn)行配置。藍(lán)牙5的物理層包括三種選項(xiàng):1M PHY,2M PHY以及Coded PHY。
相對(duì)應(yīng)的,對(duì)于setPreferredPhy的參數(shù):txPhy和rxPhy,分別有如下定義:
PHY_LE_1M_MASK,支持藍(lán)牙5 ,1M PHY;
PHY_LE_2M_MASK,支持藍(lán)牙5 ,2M PHY;
PHY_LE_CODED_MASK.,支持藍(lán)牙5,Coded PHY;
對(duì)于phyOptions參數(shù)有如下定義:
PHY_OPTION_NO_PREFERRED;
PHY_OPTION_S2 ;
PHY_OPTION_S8;
因此,通過參數(shù)的不同組合,就可以實(shí)現(xiàn)長距離或者是高速率的特性:
但是在這里需要強(qiáng)調(diào)一點(diǎn):長距離和高速率的特性是否支持,還取決于Android設(shè)備的硬件是否支持藍(lán)牙5。
關(guān)于Android開發(fā)者預(yù)覽版當(dāng)中關(guān)于長距離和高速率的更多細(xì)節(jié),可以參考:https://developer.android.com/reference/android/bluetooth/BluetoothGatt....
8倍廣播包幀長擴(kuò)展
Android O 開發(fā)者對(duì) ScanRecord.getBytes() [3] 方法檢索的數(shù)據(jù)長度做出了一些變化。在介紹這個(gè)變化之前,我們先首先腦補(bǔ)一下什么是ScanRecord。
在Android的低功耗藍(lán)牙掃描過程中,Android設(shè)備可以發(fā)起低功耗藍(lán)牙的掃描操作,在Android的“話語體系”中,這叫做:startScan(ScanCallback)。其中的ScanCallback是一個(gè)回調(diào)函數(shù)的入口地址,掃描操作的結(jié)果都可以通過ScanCallback返回到應(yīng)用層。ScanRecord.getBytes()這個(gè)方法可以返回掃描結(jié)果的原始數(shù)據(jù)。
那么在Android O中,getBytes()方法對(duì)于所接收的字節(jié)數(shù)不作任何假定。因此,應(yīng)用不應(yīng)受所返回的任何最小或最大字節(jié)數(shù)的影響。相反,應(yīng)用應(yīng)當(dāng)計(jì)算所返回?cái)?shù)組的長度。因此這一變更的意義就在于能夠兼容藍(lán)牙 5 的設(shè)備返回的數(shù)據(jù)長度。對(duì)于Beacon應(yīng)用的開發(fā)者來說,無疑是一個(gè)福音。
同時(shí)藍(lán)牙5在廣播擴(kuò)展方面還有一些其他的更新,例如:
從startAdvertisingSet的參數(shù)來看,已經(jīng)支持了藍(lán)牙5當(dāng)中的periodical advertising和extended adversiting事件。
關(guān)于Android O當(dāng)中藍(lán)牙5廣播擴(kuò)展的更多細(xì)節(jié),可以參閱以下網(wǎng)址:https://developer.android.com/reference/android/bluetooth/le/BluetoothLe...
2、Audio
Android O開發(fā)者預(yù)覽版中同時(shí)發(fā)布了追加支持以往只是 Sony 限定的 LDAC[4] 編碼技術(shù)。LDAC是Sony開發(fā)的一種能夠通過藍(lán)牙鏈路傳輸Hi-Res音頻的編碼技術(shù),這種技術(shù)可以將藍(lán)牙音頻信號(hào)的傳輸吞吐量有一個(gè)顯著的提高,最高可以達(dá)到990kbps。帶來的變化則是在Android O支持LDAC之后,市面上支持LDAC的藍(lán)牙耳機(jī)和藍(lán)牙揚(yáng)聲器都可以與Android O代際的智能手機(jī)連接,獲取高音質(zhì)的音頻體驗(yàn)。
LDAC目前在傳輸速率上有3個(gè)檔位可供選擇:
•990kbps,音質(zhì)優(yōu)先模式
•660kbps,普通模式
•330kbps,連接優(yōu)先模式
屆時(shí)更新了Android O之后,大家不妨敗一個(gè)LDAC耳機(jī)體驗(yàn)一下...(*_^)...。
3、可部署設(shè)備
目前的Android O還處于Beta[5]版本的狀態(tài),通過Android Beta 版計(jì)劃,您可以搶先試用 Android 預(yù)覽版,并提出反饋意見。目前,Nexus系列和Pixel系列的部分設(shè)備(如下列表)支持Android O Beta版本。
Nexus 5X、Nexus 6P、Nexus Player
Pixel C、Pixel、Pixel XL
評(píng)論