1 藍(lán)牙相關(guān)概念
1.1 單模與雙模
藍(lán)牙單模是只兼容經(jīng)典藍(lán)牙(包含藍(lán)牙3.0/2.1/2.0/1.2/1.1/1.0等)或低功耗藍(lán)牙(包含藍(lán)牙5.0/4.2/4.1/4.0等)其中的一種,藍(lán)牙雙模就是既可以兼容經(jīng)典藍(lán)牙又兼容低功耗藍(lán)牙
1.2 藍(lán)牙4.0
藍(lán)牙4.0標(biāo)準(zhǔn)包含兩個(gè)藍(lán)牙標(biāo)準(zhǔn),準(zhǔn)確的說,是一個(gè)雙模的標(biāo)準(zhǔn)宛渐,它包含傳統(tǒng)藍(lán)牙部分(也有稱之 ? ? 為經(jīng)典藍(lán)牙Classic Bluetooth)和低功耗藍(lán)牙部分(Bluetooth Low Energy)模叙。這兩個(gè)部分適用于 ? ? 不同的應(yīng)用或者應(yīng)用條件荞驴。傳統(tǒng)藍(lán)牙是在之前的1.0.1.2遭庶,2.0+EDR,2.1+EDR,3.0+EDR等基礎(chǔ)上 ? ? ? 發(fā)展和完善起來的磕蒲,低功耗藍(lán)牙是Nokia的Wibree標(biāo)準(zhǔn)上發(fā)展起來的充尉。
傳統(tǒng)藍(lán)牙可以用與數(shù)據(jù)量比較大的傳輸飘言,如語音,音樂驼侠,較高數(shù)據(jù)量傳輸?shù)茸撕瑁凸乃{(lán)牙這樣應(yīng)用于實(shí)時(shí)性要求比較高,但是數(shù)據(jù)速率比較低的產(chǎn)品倒源,如遙控類的苛预,如鼠標(biāo),鍵盤笋熬,遙控鼠標(biāo)(Air Mouse)热某,傳感設(shè)備的數(shù)據(jù)發(fā)送,如心跳帶胳螟,血壓計(jì)昔馋,溫度傳感器等。傳統(tǒng)藍(lán)牙有3個(gè)功率級別糖耸,Class1,Class2,Class3,分別支持100m,10m,1m的傳輸距離绒极,而低功耗藍(lán)牙無功率級別,一般發(fā)送功率在7dBm蔬捷,一般在空曠距離,達(dá)到20m應(yīng)該是沒有問題的榔袋。
所以藍(lán)牙4.0是集成了傳統(tǒng)藍(lán)牙和低功耗藍(lán)牙兩個(gè)標(biāo)準(zhǔn)的周拐,并不只是低功耗藍(lán)牙。
藍(lán)牙4.0是藍(lán)牙3.0+HS規(guī)范的補(bǔ)充凰兑,專門面向?qū)Τ杀竞凸亩加休^高要求的無線方案妥粟,較3.0版本更省電、低成本和跨廠商互操作性吏够、3毫秒低延遲勾给、超長有效連接距離滩报、AES-128加密等;藍(lán)牙4.0可廣泛用于衛(wèi)生保健播急、體育健身脓钾、家庭娛樂、安全保障等諸多領(lǐng)域桩警。通常用在藍(lán)牙耳機(jī)可训、藍(lán)牙音箱、計(jì)步器捶枢、心律監(jiān)視器握截、智能儀表、傳感器物聯(lián)網(wǎng)等設(shè)備上烂叔,大大擴(kuò)展藍(lán)牙技術(shù)的應(yīng)用范圍谨胞。該技術(shù)擁有極低的運(yùn)行和待機(jī)功耗,使用一粒紐扣電池甚至可連續(xù)工作數(shù)年之久蒜鸡。
1.3 典型藍(lán)牙與BLE藍(lán)牙對比
2 android藍(lán)牙
Android4.3以上加入了低功耗藍(lán)牙即BLE藍(lán)牙協(xié)議胯努,之前使用標(biāo)準(zhǔn)藍(lán)牙
2.1 Android標(biāo)準(zhǔn)藍(lán)牙
2.1.1 藍(lán)牙相關(guān)類介紹
BluetoothAdapter
BluetoothAdapter類簡單點(diǎn)來說就是代表了本設(shè)備(手機(jī)、電腦等)的藍(lán)牙適配器對象术瓮,通過它我們可以藍(lán)牙設(shè)備進(jìn)行基本開發(fā)了康聂,主要有如下功能:
1、開關(guān)藍(lán)牙設(shè)備
2胞四、掃描藍(lán)牙設(shè)備
3恬汁、設(shè)置/獲取藍(lán)牙狀態(tài)信息,例如:藍(lán)牙狀態(tài)值辜伟、藍(lán)牙Name氓侧、藍(lán)牙Mac地址等;
BluetoothAdapter的一些常用API函數(shù)都有了介紹导狡,這里介紹BluetoothAdapter類疏忽的地方约巷。
BluetoothAdapter STATE 狀態(tài)值 , 即開關(guān)狀態(tài)
intSTATE_OFF藍(lán)牙已經(jīng)關(guān)閉
intSTATE_ON藍(lán)牙已經(jīng)打開
intSTATE_TURNING_OFF藍(lán)牙處于關(guān)閉過程中 旱捧,關(guān)閉ing
intSTATE_TURNING_ON藍(lán)牙處于打開過程中 独郎,打開ing
BluetoothAdapter? SCAN_MOD狀態(tài)值 ,即掃描狀態(tài)
首先說明枚赡,可以掃描其他設(shè)備的氓癌,當(dāng)然它同時(shí)能被其他藍(lán)牙設(shè)備掃碼。
intSCAN_MODE_CONNECTABLE
表明該藍(lán)牙可以掃描其他藍(lán)牙設(shè)備
intSCAN_MODE_CONNECTABLE_DISCOVERABLE
表明該藍(lán)牙設(shè)備同時(shí)可以掃碼其他藍(lán)牙設(shè)備贫橙,并且可以被其他藍(lán)牙設(shè)備掃描到贪婉。
intSCAN_MODE_NONE: 該藍(lán)牙不能掃描以及被掃描。
獲取藍(lán)牙適配器
藍(lán)牙打開/關(guān)閉
藍(lán)牙掃描
獲取藍(lán)牙相關(guān)信息
藍(lán)牙相關(guān)廣播
這個(gè)富文本不好貼代碼卢肃,直接去Demo中看吧疲迂,哈哈哈
BluetoothDevice
該類就是關(guān)于遠(yuǎn)程藍(lán)牙設(shè)備的一個(gè)描述才顿。通過它可以和本地藍(lán)牙設(shè)備---BluetoothAdapter連接通信。
藍(lán)牙綁定(Bound)狀態(tài) 尤蒿, 即藍(lán)牙設(shè)備是否與其他藍(lán)牙綁定
intBOND_BONDED
表明藍(lán)牙已經(jīng)綁定
intBOND_BONDING
表明藍(lán)牙正在綁定過程中 郑气, bounding
intBOND_NONE
表明沒有綁定 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??
這里給出邏輯圖僅供暫考
這里就介紹這多了,具體可以查看Demo和藍(lán)牙|AndroidDeveloper建議仔細(xì)閱讀优质。
本文主要內(nèi)容是對csdn和簡書的博文和帖子總結(jié)竣贪,還是要感謝一下的