16、藍芽技術

來源:互聯網
上載者:User

標籤:android   style   blog   http   color   使用   

藍芽簡介

        藍芽(Bluetooth)是一種短距離的無線通訊技術標準。這個名子來源於10世紀丹麥國王Harald Blatand,英文名子是Harold Bluetooth。在無線行業協會組織人員的討論後,有人認為用Blatand國王的名字命名這種無線技術是再好不過了,這是因為Blatand國王將挪威、瑞典和丹麥統一起來,這就如同這項技術將統一無線通訊領域一樣。至此,藍芽的名字也就這樣定了下來。

       藍芽協議分為4層,即核心協議層、電纜替代協議層、電話控制協議層和採納的其它協議層。這4種協議中最重要的是核心協議。藍芽的核心協議包括基帶、鏈路管理、邏輯鏈路控制和適應協議四部分。其中鏈路管理(LMP)負責藍芽組件間串連的建立。邏輯鏈路控制與適應協議(L2CAP)位於基帶協議層上,屬於資料連結層,是一個為高層傳輸和應用程式層協議屏蔽基帶協議的適配協議。

開啟和關閉藍牙裝置

第1種開啟藍芽的方式

Intent enableIntent = new Intent(BluetoothAdapter.ACTION_REQUEST_ENABLE);

startActivityForResult(enableIntent, 1);

必須設定許可權

<uses-permission android:name="android.permission.BLUETOOTH" />

<uses-permission android:name="android.permission.BLUETOOTH_ADMIN" />

 

BluetoothAdapter adapter = BluetoothAdapter.getDefaultAdapter()

adapter.enable();

adapter.disable();

搜尋藍牙裝置

 

藍芽資料轉送

      通過藍芽傳輸資料與Socket類似。在網路中使用Socket和ServerSocket控制用戶端和服務端的資料讀寫。而藍芽通訊也由用戶端和服務端Socket來完成。藍芽用戶端Socket是BluetoothSocket,藍芽服務端Socket是BluetoothServerSocket。這兩個類都在android.bluetooth包中。

      無論是BluetoothSocket,還是BluetoothServerSocket,都需要一個UUID(通用唯一識別碼,Universally Unique Identifier).格式如下:

xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx

UUID的格式被分成5段,其中中間3段的字元數相同,都是4,第1段是8個字元,最後一段是12個字元。所以UUID實際上是一個8-4-4-4-12的字串。

UUID相當於Socket的連接埠,而藍芽地址相當於Socket的IP。

藍芽的UUID

      兩個藍牙裝置進行串連時需要使用同一個UUID。但很多讀者可能發現,有很多型號的手機(可能是非Android系統的手機)之間使用了不同的程式也可以使用藍芽進行通訊。從表面上看,它們之間幾乎不可能使用同一個UUID。 

       實際上,UUID和TCP的連接埠一樣,也有一些預設的值。例如,將藍芽類比成串口的服務就使用了一個標準的UUID:

00001101-0000-1000-8000-00805F9B34FB。除此之外,還有很多標準的UUID,如下面就是兩個標準的UUID。

資訊同步服務:00001104-0000-1000-8000-00805F9B34FB檔案傳輸服務:00001106-0000-1000-8000-00805F9B34FB

 

     

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.