
【開發筆記】跟藍牙手環談戀愛:iOS 藍牙串接初體驗
資訊/科技

奧提斯
更新日:2025年4月22日
前言:年前剛好在陰錯陽差之下,獲得了一支簡易的藍牙手環,參考了網路上的資料,想說試試看串接並開發App,本來我以為這只是一場純純的技術戀愛;結果一開始連個「哈囉」都說不好。身為一個 iOS 工程師,今天就來分享並順手紀錄我和藍牙手環(Bluetooth Bracelet)的初次邂逅,如何從陌生人變成... 至少能正常溝通的朋友吧 😅。
使用到的技術
- CoreBluetooth:Apple 提供的藍牙框架,負責掃描、連線、收發資料。
- CBPeripheral / CBCentralManager:一個是手環代表(Peripheral),一個是你的手機代表(Central)。
- UUID、Service、Characteristic:用來辨認手環提供的功能跟數據。
初學者最常卡關的點
- 藍牙沒打開(經典!)
- 手機沒開藍牙,還在怪手環怎麼不回你訊息,這就像你把手機關機卻還想等人回你 LINE。
- 找不到服務(Service)和特徵值(Characteristic)
- 手環的每個功能都藏在不同的「服務」和「特徵值」裡,如果你沒有正確找出它們,就像對方只會日文,你只會法文,怎麼聊?
- 連線後沒反應
- 藍牙手環不會自己開口說話,要你主動寫 code 去讀、寫特徵值,它才會「欸?原來你在叫我~」。
怎麼克服?
- 一步一步用 CBCentralManagerDelegate 抓住裝置出現的瞬間。
- 連上後馬上探索服務,再探索特徵值(
peripheral.discoverServices()
→discoverCharacteristics()
)。 - 利用 Xcode console 印出所有 service/characteristic UUID,確認你讀的是正確的那一個。
- 手環廠商通常會提供規格文件(Protocol),那就是你的翻譯機。
小結
串接藍牙手環其實就像交朋友,一開始大家都尷尬,但只要你肯主動一點、了解對方的語言(UUID 與特徵值),慢慢就能聊起來,甚至每天同步健康數據也不嫌煩。
未來想挑戰寫入資料、背景連線或通知功能的話,那又是另一場戀愛故事了(?)。
如果你對 CoreBluetooth 或藍牙開發有興趣,不妨試試用 Xcode 開個 Playground 練練手。祝你和手環交往順利,不要被 silent treatment 啦~
iOS App 客製化 上架。
iOS 軟體開發、修改、維護既有App
IT/程式 > iPhone/iPad/Mac應用程式開發
$ 10000

$ 10000

0 / 1000