日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當(dāng)前位置:首頁 > 智能硬件 > 人工智能AI
[導(dǎo)讀] 前言: 本文主要描述Android BLE的一些基礎(chǔ)知識及相關(guān)操作流程,不牽扯具體的業(yè)務(wù)實(shí)現(xiàn),其中提供了針對廣播包及響應(yīng)包的解析思路,希望對正在或即將面臨Android BLE開發(fā)的伙伴

前言:

本文主要描述Android BLE的一些基礎(chǔ)知識及相關(guān)操作流程,不牽扯具體的業(yè)務(wù)實(shí)現(xiàn),其中提供了針對廣播包及響應(yīng)包的解析思路,希望對正在或即將面臨Android BLE開發(fā)的伙伴們有所引導(dǎo)。
注:其中的單模、雙模、BR、BT、BLE、藍(lán)牙3.0、藍(lán)牙4.0等概念混在一起可能比較難理解,不知下文描述是否清晰,如果有不理解的地方,歡迎留言交流!

一、相關(guān)介紹 1、概述

藍(lán)牙無線技術(shù)是一種全球通用的短距離無線技術(shù),通過藍(lán)牙技術(shù)能夠?qū)崿F(xiàn)多種電子設(shè)備間的相互連接,特別是在小型無線電、耗電量低、成本低、安全性、穩(wěn)定性、易用性以及特別的聯(lián)網(wǎng)能力等固有的優(yōu)勢上,藍(lán)牙無線技術(shù)發(fā)展迅速。

2、分類

藍(lán)牙分為三種:Bluetooth Smart Ready、Bluetooth Smart(Smart是低功耗藍(lán)牙的標(biāo)識)、以及標(biāo)準(zhǔn) Bluetooth。根據(jù) Bluetooth SIG的說法,這樣是為了要分辨裝置間的相容性以及標(biāo)識各版本的傳輸頻率。基本上來說,Bluetooth Smart Ready適用于任何雙模藍(lán)牙4.0的電子產(chǎn)品,而Bluetooth Smart是應(yīng)用在心率監(jiān)視器或計(jì)步器等使用扭扣式電池并傳輸單一的裝置。Bluetooth Smart Ready的相容性最高,可與Bluetooth Smart及標(biāo)準(zhǔn)藍(lán)牙相通。標(biāo)準(zhǔn)藍(lán)牙則無法與Bluetooth Smart相通。
 

 

3、BLE介紹

BLE是Bluetooth Low Energy的縮寫,又叫藍(lán)牙4.0,區(qū)別于藍(lán)牙3.0和之前的技術(shù)。BLE前身是NOKIA開發(fā)的Wibree技術(shù),主要用于實(shí)現(xiàn)移動(dòng)智能終端與周邊配件之間的持續(xù)連接,是功耗極低的短距離無線通信技術(shù),并且有效傳輸距離被提升到了100米以上,同時(shí)只需要一顆紐扣電池就可以工作數(shù)年之久。BLE是在藍(lán)牙技術(shù)的基礎(chǔ)上發(fā)展起來的,既同于藍(lán)牙,又區(qū)別于傳統(tǒng)藍(lán)牙。BLE設(shè)備分單模和雙模兩種,雙模簡稱BR,商標(biāo)為Bluetooth Smart Ready,單模簡稱BLE或者LE,商標(biāo)為Bluetooth Smart。Android是在4.3后才支持BLE,這說明不是所有藍(lán)牙手機(jī)都支持BLE,而且支持BLE的藍(lán)牙手機(jī)一般是雙模的。雙模兼容傳統(tǒng)藍(lán)牙,可以和傳統(tǒng)藍(lán)牙通信,也可以和BLE通信,常用在手機(jī)上,android4.3和IOS4.0之后版本都支持BR,也就是雙模設(shè)備。單模只能和BR和單模的設(shè)備通信,不能和傳統(tǒng)藍(lán)牙通信,由于功耗低,待機(jī)長,所以常用在手環(huán)的智能設(shè)備上。

二、基本概念 1、Generic Access Profile(GAP)

用來控制設(shè)備連接和廣播,GAP使你的設(shè)備被其他設(shè)備可見,并決定了你的設(shè)備是否可以或者怎樣與合同設(shè)備進(jìn)行交互。

2、Generic Attribute Profile(GATT)

通過BLE連接,讀寫屬性類數(shù)據(jù)的Profile通用規(guī)范,現(xiàn)在所有的BLE應(yīng)用Profile都是基于GATT的。

3、Attribute Protocol (ATT)

GATT是基于ATTProtocol的,ATT針對BLE設(shè)備做了專門的優(yōu)化,具體就是在傳輸過程中使用盡量少的數(shù)據(jù),每個(gè)屬性都有一個(gè)唯一的UUID,屬性將以characterisTIcs and services的形式傳輸。

4、CharacterisTIc

CharacterisTIc可以理解為一個(gè)數(shù)據(jù)類型,它包括一個(gè)value和0至多個(gè)對次value的描述(Descriptor)。

5、Descriptor

對CharacterisTIc的描述,例如范圍、計(jì)量單位等。

6、Service

Characteristic的集合。例如一個(gè)service叫做“Heart Rate Monitor”,它可能包含多個(gè)Characteristics,其中可能包含一個(gè)叫做“heart ratemeasurement”的Characteristic。

7、UUID

唯一標(biāo)示符,每個(gè)Service,Characteristic,Descriptor,都是由一個(gè)UUID定義。

三、Android BLE API 1、BluetoothGatt

繼承BluetoothProfile,通過BluetoothGatt可以連接設(shè)備(connect),發(fā)現(xiàn)服務(wù)(discoverServices),并把相應(yīng)地屬性返回到BluetoothGattCallback,可以看成藍(lán)牙設(shè)備從連接到斷開的生命周期。

2、BluetoothGattCharacteristic

相當(dāng)于一個(gè)數(shù)據(jù)類型,可以看成一個(gè)特征或能力,它包括一個(gè)value和0~n個(gè)value的描述(BluetoothGattDescriptor)。

3、BluetoothGattDescriptor

描述符,對Characteristic的描述,包括范圍、計(jì)量單位等。

4、BluetoothGattService

服務(wù),Characteristic的集合。

5、BluetoothProfile

一個(gè)通用的規(guī)范,按照這個(gè)規(guī)范來收發(fā)數(shù)據(jù)。

6、BluetoothManager

通過BluetoothManager來獲取BluetoothAdapter。
BluetoothManager bluetoothManager = (BluetoothManager) getSystemService(Context.BLUETOOTH_SERVICE);

7、BluetoothAdapter

代表了移動(dòng)設(shè)備的本地的藍(lán)牙適配器, 通過該藍(lán)牙適配器可以對藍(lán)牙進(jìn)行基本操作,一個(gè)Android系統(tǒng)只有一個(gè)BluetoothAdapter,通過BluetoothManager獲取。
BluetoothAdapter bluetoothAdapter = bluetoothManager.getAdapter();

8、BluetoothDevice

掃描后發(fā)現(xiàn)可連接的設(shè)備,獲取已經(jīng)連接的設(shè)備。
BluetoothDevice bluetoothDevice = bluetoothAdapter.getRemoteDevice(address);

9、BluetoothGattCallback
本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時(shí)聯(lián)系本站刪除( 郵箱:macysun@21ic.com )。
換一批
延伸閱讀
關(guān)閉