Bluetooth API 支援使用藍牙設定檔。A 罩杯 藍牙設定檔是藍牙介面的無線介面規格 以及裝置間的通訊,例如「免持聽筒」設定檔。行動裝置 裝置才能連線至無線耳機,兩部裝置都必須支援 免持聽筒設定檔。
Bluetooth API 提供下列藍牙實作項目 設定檔:
- 耳機。耳機設定檔支援藍牙耳機
與手機密不可分Android 提供
BluetoothHeadset
類別, 這是控制藍牙耳機集服務的 Proxy這包括 藍牙耳機與免持 (1.5 版) 設定檔。BluetoothHeadset
類別包括支援 AT 指令。如要進一步瞭解這個主題,請參閱 供應商專屬的 AT 指令。 - A2DP。進階音訊發布設定檔 (A2DP) 設定檔會定義如何
使用者可透過藍牙在裝置間串流播放高品質音訊
以獲得最佳效能和最安全的連線Android 提供
BluetoothA2dp
類別,也就是 控制藍牙 A2DP 服務的 Proxy - 健康裝置:Android 支援藍牙健康裝置
設定檔 (HDP)。開啟後,你即可建立使用藍牙通訊的應用程式
使用支援藍牙的健康裝置,例如心率監測器、血液
公尺、溫度計、體重計等如需支援的裝置清單
對應的裝置資料專業化代碼,請參閱藍牙 HDP
裝置資料
專業認證。
ISO/IEEE 11073-20601 [7] 規格也會參照這些值
在 Nomenclature Codes Annex 中當做
MDC_DEV_SPEC_PROFILE_*
使用。如要 如需 HDP 相關資訊,請參閱「健康裝置設定檔」。
使用個人資料的基本步驟如下:
- 按照相關說明取得預設轉接程式 藍牙設定。
- 設定
BluetoothProfile.ServiceListener
。 這個事件監聽器會發出通知BluetoothProfile
客戶 連線或中斷連線時。 - 使用
getProfileProxy()
敬上 來建立與 在下列範例中,設定檔 Proxy 物件是BluetoothHeadset
。 - 於
onServiceConnected()
、 取得設定檔 Proxy 物件的控制代碼。 - 取得設定檔 Proxy 物件後,請使用該物件監控 連線並執行其他與該設定檔相關的操作。
下列程式碼片段顯示如何連線至 BluetoothHeadset
Proxy
物件,藉此控制耳機集設定檔:
Kotlin
var bluetoothHeadset: BluetoothHeadset? = null // Get the default adapter val bluetoothAdapter: BluetoothAdapter? = BluetoothAdapter.getDefaultAdapter() private val profileListener = object : BluetoothProfile.ServiceListener { override fun onServiceConnected(profile: Int, proxy: BluetoothProfile) { if (profile == BluetoothProfile.HEADSET) { bluetoothHeadset = proxy as BluetoothHeadset } } override fun onServiceDisconnected(profile: Int) { if (profile == BluetoothProfile.HEADSET) { bluetoothHeadset = null } } } // Establish connection to the proxy. bluetoothAdapter?.getProfileProxy(context, profileListener, BluetoothProfile.HEADSET) // ... call functions on bluetoothHeadset // Close proxy connection after use. bluetoothAdapter?.closeProfileProxy(BluetoothProfile.HEADSET, bluetoothHeadset)
Java
BluetoothHeadset bluetoothHeadset; // Get the default adapter BluetoothAdapter bluetoothAdapter = BluetoothAdapter.getDefaultAdapter(); private BluetoothProfile.ServiceListener profileListener = new BluetoothProfile.ServiceListener() { public void onServiceConnected(int profile, BluetoothProfile proxy) { if (profile == BluetoothProfile.HEADSET) { bluetoothHeadset = (BluetoothHeadset) proxy; } } public void onServiceDisconnected(int profile) { if (profile == BluetoothProfile.HEADSET) { bluetoothHeadset = null; } } }; // Establish connection to the proxy. bluetoothAdapter.getProfileProxy(context, profileListener, BluetoothProfile.HEADSET); // ... call functions on bluetoothHeadset // Close proxy connection after use. bluetoothAdapter.closeProfileProxy(bluetoothHeadset);
供應商專屬的 AT 指令
應用程式可以註冊,接收預先定義供應商特定 AT 的系統廣播訊息
由耳機傳送的命令 (例如 Plantronics +XEVENT 指令)。例如:
應用程式可能會接收指出已連結裝置電池電量的廣播訊息
通知使用者或視需要採取其他行動建立廣播
接收方
ACTION_VENDOR_SPECIFIC_HEADSET_EVENT
敬上
意圖處理耳機專屬的 AT 指令。
健康裝置設定檔
Android 支援藍牙健康裝置設定檔 (HDP)。藍牙健康
API 包含類別
BluetoothHealth
、
BluetoothHealthCallback
,
和
BluetoothHealthAppConfiguration
,
詳細說明請參閱 Key 類別和
介面。
使用 Bluetooth Health API 時,瞭解這些主要 HDP 會很有幫助 概念:
- 來源
- 健康裝置,例如體重表、血糖機或溫度計。 將醫療資料傳輸到智慧型裝置,例如 Android 手機或平板電腦。
- 水槽
- 接收醫療資料的智慧型裝置。在 HDP 應用程式中,
接收器是以
BluetoothHealthAppConfiguration
物件表示。 - 註冊
- 用來註冊接收器來與特定健康狀態通訊的程序 裝置。
- 連線
- 在健康裝置 (來源) 與 智慧型裝置 (接收器)。
建立 HDP 應用程式
以下是建立 HDP 應用程式所需的基本步驟:
取得
BluetoothHealth
Proxy 物件的參照。如同一般 頭戴式耳機和 A2DP 設定檔裝置,您必須使用getProfileProxy()
BluetoothProfile.ServiceListener
和HEALTH
設定檔類型 與設定檔 Proxy 物件建立連線。建立
BluetoothHealthCallback
並註冊應用程式設定 (BluetoothHealthAppConfiguration
) 做為健康狀態接收器。與健康裝置建立連線。
成功連線至健康裝置後,讀取及寫入健康狀態 使用檔案描述元。需解讀收到的資料 使用落實 IEEE 11073 的健康狀態管理工具 規格。
完成後,請關閉健康頻道並取消註冊應用程式。該頻道也 會在長時間閒置時關閉。