第一篇:藍牙的一些準備工作 http://www.reibang.com/p/81a2716d1f05
第二篇:藍牙數(shù)據(jù)的廣播數(shù)據(jù)解析 http://www.reibang.com/p/d0c9e3c5e30a
Android BLE的基本描述
接觸BLE已經(jīng)快一年了,感觸頗多惜辑,Android的藍牙比起蘋果的來說確實有些差距命爬,畢竟iPhone手機的價格在哪里放著指巡。
現(xiàn)在BLE5.0已經(jīng)發(fā)布凹蜈,但是全英文版的文檔2000多頁振峻,我的乖乖不忍直視公般。
https://www.bluetooth.com/zh-cn/what-is-bluetooth-technology/how-it-works/bluetooth5
這個只是個介紹万搔,相關的文檔我會再后面給出。
剛剛開始的時候官帘,我做BLE相關的時候 瞬雹,一臉懵逼的樣子。我當時問我的經(jīng)理的 時候刽虹,我說接受BLE的廣播數(shù)據(jù)酗捌,需要自己寫注冊一個廣播接收數(shù)據(jù)嗎?現(xiàn)在覺得當時的自己的傻不拉幾的涌哲。好了言歸正傳胖缤,下面我們一起來看下BLE藍牙基本的入門吧。(其實感覺自己也就是會個基本的)
在我看來整個一個關于藍牙接收到數(shù)據(jù)的過程需要分為幾個部分阀圾。
1哪廓、藍牙前期的準備。同時判斷藍牙的權限初烘,需要有藍牙權限涡真,還有需要獲取到藍牙的狀態(tài),最好的方式應該是此時注冊一個廣播監(jiān)聽藍牙的狀態(tài)的變化账月。
2综膀、獲取到藍牙適配器對象,此時有個地方點需要注意局齿;(Android在5.0以下和5.0以上的接口上做了很大的改變剧劝,所有有些系統(tǒng)版本低的手機,需要在方法上做一些區(qū)別)
3抓歼、啟動藍牙掃描讥此。(有兩個版本的接口,后來我會詳細提到這些地方)谣妻。
4萄喳、解析數(shù)據(jù)廣播數(shù)據(jù)。(BLE的可連接狀態(tài)的廣播數(shù)據(jù)蹋半,一般這個廣播會有一些設備的名稱他巨、是否可連接、設備類型的什么的,但是一般是有會設備的名稱和是否可連接狀態(tài)的染突,其他大部分是自己的自定義的捻爷,為了方便過濾其他設備的參數(shù)。)
5份企、拿到自己的過濾后的藍牙設備對象后也榄,就可以拿著這個對象去連接。(這個后面會說道)
6司志、連接上以后甜紫,會有一系列的通信。這個是根據(jù)不同需求來定義通信的內(nèi)容的骂远。后面我也會詳細說到囚霸。
7、通信的過程中一般的情況是需要涉及到隊列的問題的吧史。所以的通信應該是一個堵塞式的邮辽。
8、完成過通信的相關操作贸营,需要斷開藍牙吨述。連接的資源,不然會一直后臺連著钞脂。這個時候揣云,你這個設備是不能被其他的 主機發(fā)現(xiàn)的。
上面的幾點是關于藍牙一些大的過程冰啃,后面我會持續(xù)更新邓夕,每個點對應的細節(jié)的問題,并貼出相關的源碼阎毅。