藍牙,日常你用的多嗎? 上班路上戴着藍牙耳機聽音樂、看視頻 打開藍牙分享我的熱點給小夥伴們 解鎖共享單車時,打開藍牙就能迅速解鎖 ......視頻
BLE—藍牙低能耗技術,方便了咱們的生活,可是開發者在開發過程當中卻遇到了很多坑,尤爲對小白用戶來講坑真的太多了,都是安卓、iOS系統惹的禍。開發
今天,柚子君給你們分享一個解決BLE那些坑的經驗,但願能幫助更多人。service
項目中用到BLE模塊時,要注意如下問題:技術
❶ 用示例代碼安卓系統掃描藍牙設備就沒法成功,而蘋果則沒問題。經驗
✓ 解決辦法:將serviceUUIDs: ['', '']改成serviceUUIDs: []便可。一次掃描不出來能夠多掃描幾回。項目
❷ 安卓和蘋果的設備UUID不同,安卓爲xx:xx:xx:xx:xx:xx格式,蘋果爲GUID格式。分享
✓ 解決辦法:以你掃描獲取的UUID訪問設備就好了。 ❸ 安桌和蘋果的服務UUID和服務特徵CharacteristicsUUID不同(服務UUID和服務特徵CharacteristicsUUID是父子關係)。 安卓爲GUID格式,蘋果爲短格式。二者掃描出的服務數也不同,蘋果只掃描出用戶能調用的,安卓會把系統級的也掃描出來,安卓通常第3個服務是用戶能調用的。 ✓ 解決辦法:以你掃描獲取的獲取的服務UUID的服務特徵CharacteristicsUUID訪問就好了。開發者
❹ 最重要的一點,也是爲何調用老不對的問題。生活
✓ 解決辦法:無論你是否知道設備UUID,服務UUID,藍牙是否打開。請必定要按步驟調用:掃描設備->鏈接設備->獲取全部服務UUIDvi
->服務UUID對應的全部服務特徵CharacteristicsUUID。這些步驟走完了,才能調用服務UUID和對應的服務特徵CharacteristicsUUID。
▌本文做者:APICloud 版主 scmyzyh