簡介
藍牙服務組件為設備提供接入與使用Bluetooth的相關接口,包括BLE設備gatt相關的操作,以及BLE廣播、掃描等功能。
目錄
/foundation/communication/bluetooth
├── interfaces # 接口代碼
│ └── innerkits # 系統(tǒng)服務接口存放目錄
│ ├── native_c # C接口存放目錄
│ │ └── include # C接口定義目錄
│ └── native_cpp # C++接口存放目錄
│── sa_profile # 藍牙服務定義目錄
│── services # 藍牙服務代碼目錄
└── LICENSE # 版權聲明文件
約束
藍牙服務組件使用C語言編寫。
說明
現(xiàn)在提供的是BLE相關接口及GAP基本開關藍牙的接口,其它接口暫不提供。
標準系統(tǒng)使用說明
標準系統(tǒng)提供C接口定義及服務和協(xié)議棧的代碼,目前提供的只有BLE相關的接口,包括BLE設備gatt相關的操作,以及BLE廣播、掃描等功能,其它A2DP,AVRCP,HFP等相關接口在后續(xù)增量發(fā)布。
標準系統(tǒng)使用目錄如下:
輕量或小型系統(tǒng)使用說明
輕量或小型系統(tǒng)只提供C接口定義,目前只有BLE相關接口,包括BLE設備gatt相關的操作,以及BLE廣播、掃描等功能,其它A2DP,AVRCP,HFP等相關接口在后續(xù)增量發(fā)布。
輕量或小型系統(tǒng)使用目錄如下:
interfaces/innerkits/native_c/include
C接口使用說明
- 打開/關閉藍牙:
/* 打開傳統(tǒng)藍牙 */
bool EnableBt(void);
/* 關閉傳統(tǒng)藍牙 */
bool DisableBt(void);
/* 打開低功耗藍牙 */
bool EnableBle(void);
/* 關閉低功耗藍牙 */
bool DisableBle(void);
- 獲取藍牙狀態(tài)
/* 獲取傳統(tǒng)藍牙狀態(tài) */
int GetBtState();
/* 判斷低功耗藍牙狀態(tài) */
bool IsBleEnabled();
- 獲取本端Mac地址
/* 獲取mac地址 */
bool GetLocalAddr(unsigned char *mac, unsigned int len);
- 設置本端設備名稱
/* 設置本端設備名稱 */
bool SetLocalName(unsigned char *localName, unsigned char length);
- 設備需要完成以下接口的開發(fā)步驟,以使能Gatt server功能并開啟服務:
/* 初始化藍牙協(xié)議棧 */
int InitBtStack(void);
int EnableBtStack(void);
/* 注冊應用,appUuid由應用提供 */
int BleGattsRegister(BtUuid appUuid);
/* 添加服務 */
int BleGattsAddService(int serverId, BtUuid srvcUuid, bool isPrimary, int number);
/* 添加特征值 */
int BleGattsAddCharacteristic(int serverId, int srvcHandle, BtUuid characUuid, int properties, int permissions);
/* 添加描述符 */
int BleGattsAddDescriptor(int serverId, int srvcHandle, BtUuid descUuid, int permissions);
/* 開始服務 */
int BleGattsStartService(int serverId, int srvcHandle);
- 設備需要完成以下接口的開發(fā)步驟,以使能BLE廣播的發(fā)送:
/* 設置廣播數(shù)據(jù) */
int BleSetAdvData(int advId, const BleConfigAdvData *data);
/* 開始發(fā)送廣播 */
int BleStartAdv(int advId, const BleAdvParams *param);
- 若需要掃描功能,設備需要完成以下接口的開發(fā)步驟,以使能BLE掃描功能:
/* 設置掃描參數(shù) */
int BleSetScanParameters(int clientId, BleScanParams *param);
/* 開始掃描 */
int BleStartScan(void);
審核編輯 黃宇
-
接口
+關注
關注
33文章
8873瀏覽量
152936 -
藍牙
+關注
關注
115文章
5970瀏覽量
172651 -
鴻蒙
+關注
關注
57文章
2467瀏覽量
43616 -
Harmony
+關注
關注
0文章
57瀏覽量
2842
發(fā)布評論請先 登錄
相關推薦
開源啦!!!基于鴻蒙ArkTS封裝的圖表組件《McCharts》,大家快來一起共創(chuàng)
鴻蒙Flutter實戰(zhàn):14-現(xiàn)有Flutter 項目支持鴻蒙 II
鴻蒙原生開發(fā)手記:01-元服務開發(fā)
鴻蒙Flutter實戰(zhàn):11-使用 Flutter SDK 3.22.0
鴻蒙Flutter實戰(zhàn):09-現(xiàn)有Flutter項目支持鴻蒙
鴻蒙Flutter實戰(zhàn):08-如何調試代碼
鴻蒙Flutter實戰(zhàn):07混合開發(fā)
鴻蒙開發(fā)就業(yè)前景到底怎么樣?
36歲了還有必要轉行鴻蒙開發(fā)嗎?
HarmonyOS實戰(zhàn)開發(fā)-深度探索與打造個性化自定義組件
HarmonyOS實戰(zhàn)開發(fā)-如何使用全局狀態(tài)保留能力彈窗來實現(xiàn)評論組件。
HarmonyOS實戰(zhàn)開發(fā)-如何通過BlendMode屬性來實現(xiàn)掛件和圖片的混合
騰訊突然宣布,微信鴻蒙版要來了!
鴻蒙OS崛起,鴻蒙應用開發(fā)工程師成市場新寵
OpenHarmony實戰(zhàn)開發(fā)-如何實現(xiàn)組件動畫。

評論