通過(guò)《SwiftUI Bluetooth 一篇文章入門(mén)掌握藍(lán)牙編程(教程含代碼)》我們掌握了CoreBluetooth的基礎(chǔ)使用劣针,能夠通過(guò)代碼來(lái)判斷設(shè)備藍(lán)牙的開(kāi)啟狀態(tài)颖杏。通過(guò)《SwiftUI Bluetooth 02 之如何搜索周邊藍(lán)牙設(shè)備》我們掌握了如何搜索周邊的藍(lán)牙設(shè)備奈梳。
我們掌握搜索技能后左腔,我們發(fā)現(xiàn)搜索設(shè)備有些多铃剔,那么如何指定具體類(lèi)型的標(biāo)識(shí)呢循榆?我們可以通過(guò)bluetooth.com網(wǎng)站上說(shuō)明文檔來(lái)了解編號(hào)的意義析恢。https://www.bluetooth.com/specifications/gatt/services/
下面就是所以藍(lán)牙標(biāo)識(shí)的詳細(xì)列表
在UUID中,您將創(chuàng)建一個(gè)CBUUID對(duì)象秧饮,并將其傳遞給scanForPeripherals(withServices :)映挂,該對(duì)象實(shí)際上需要一個(gè)數(shù)組。因此盗尸,在這種情況下柑船,它將是一個(gè)具有單個(gè)CBUUID對(duì)象的數(shù)組。例如泼各,我們?nèi)绻麑?duì)因?qū)π穆史?wù)感興趣鞍时,則可以通過(guò)上面的列表很早的心率設(shè)備的UUID為0x180D
let heartRateServiceCBUUID = CBUUID(string: "0x180D")
將scanForPeripherals(withServices:nil)行更新為以下內(nèi)容
centralManager.scanForPeripherals(withServices: [heartRateServiceCBUUID])
構(gòu)建并運(yùn)行,現(xiàn)在您應(yīng)該只看到被發(fā)現(xiàn)的心率傳感器:
<CBPeripheral: 0x1c0117220, identifier = BB8A7450-...A69B, name = Polar H7 DCB69F17, state = disconnected>
<CBPeripheral: 0x1c0117190, identifier = BB8A7450-...A69B, name = Polar H7 DCB69F17, state = disconnected>
接下來(lái)扣蜻,您將存儲(chǔ)對(duì)心率外圍設(shè)備的引用逆巍,然后可以停止掃描其他外圍設(shè)備。在centralManager變量之后莽使,在頂部添加CBPeripheral類(lèi)型的heartRatePeripheral實(shí)例變量锐极。找到外圍設(shè)備后,請(qǐng)存儲(chǔ)對(duì)其的引用并停止掃描芳肌。在centralManager(_:didDiscover:advertisementData:rssi :)中灵再,在print(peripheral)之后添加以下內(nèi)容:
heartRatePeripheral = peripheral
centralManager.stopScan()
建立并運(yùn)行肋层;您現(xiàn)在應(yīng)該只看到一次外圍設(shè)備。
技術(shù)交流
QQ:3365059189
SwiftUI技術(shù)交流QQ群:518696470
推薦
基礎(chǔ)文章推薦
經(jīng)典教程推薦
- 更新近百篇SwiftUI教程《SwiftUI2020教程》
- 幫您突破數(shù)據(jù)存儲(chǔ)難關(guān)《SwiftUI vs CoreData數(shù)據(jù)存儲(chǔ)解決方案》
技術(shù)源碼推薦
推薦文章
CoreData篇
- SwiftUI數(shù)據(jù)存儲(chǔ)之做個(gè)筆記App 新增與查詢(CoreData)
- SwiftUI進(jìn)階之存儲(chǔ)用戶狀態(tài)實(shí)現(xiàn)登錄與登出
- SwiftUI 數(shù)據(jù)之List顯示Sqlite數(shù)據(jù)庫(kù)內(nèi)容(2020年教程)
Combine篇
TextField篇
- 《SwiftUI 一篇文章全面掌握TextField文本框 (教程和全部源碼)》
- 《SwiftUI實(shí)戰(zhàn)之TextField風(fēng)格自定義與formatters》
- 《SwiftUI實(shí)戰(zhàn)之TextField如何給鍵盤(pán)增加個(gè)返回按鈕(隱藏鍵盤(pán))》
- 《SwiftUI 當(dāng)鍵盤(pán)出現(xiàn)時(shí)避免TextField被遮擋自動(dòng)向上移動(dòng)》
- 《SwiftUI實(shí)戰(zhàn)之TextField如何給鍵盤(pán)增加個(gè)返回按鈕(隱藏鍵盤(pán))》
JSON文件篇
一篇文章系列
- SwiftUI一篇文章全面掌握List(教程和源碼)
- 《SwiftUI 一篇文章全面掌握TextField文本框 (教程和全部源碼)》
- SwiftUI一篇文章全面掌握Picker,解決數(shù)據(jù)選擇(教程和源碼)
- SwiftUI一篇文章全面掌握Form(教程和源碼)
- SwiftUI Color 顏色一篇文章全解決
技術(shù)交流
QQ:3365059189
SwiftUI技術(shù)交流QQ群:518696470
- 請(qǐng)關(guān)注我的專欄icloudend, SwiftUI教程與源碼
http://www.reibang.com/c/7b3e3b671970