簡體   English   中英

避免在連接期間從BLE設備發現服務

[英]Avoid discover services from BLE device during connection

我正在開發一個具有藍牙低能耗通信的Android應用程序,我需要與我的BLE設備快速連接。 發現設備的服務需要2秒,這對我的應用程序來說很重要,如果我第一次連接到設備,服務保存在BLE框架的某個緩存中,那么下次我嘗試發現服務需要幾毫秒時,那就是我的應用程序很好。

問題是,如果我在短時間內與設備斷開連接或連接到另一台設備,下次連接到第一台設備時,我需要發現服務並需要2秒鍾。

我只連接到一種類型的設備,並且已知服務和特性。

我嘗試使用有界(配對)設備,但是當我連接它們時沒有保存服務,我需要再次發現它。

有沒有任何方法可以保存服務和特性並將其保存在我的應用程序中,以便下次連接到設備時我不需要發現服務?

您可以連接,無需同時發現服務。 在需要服務實例時進行服務發現。

有沒有任何方法可以保存服務和特性並將其保存在我的應用程序中,以便下次連接到設備時我不需要發現服務?

您可以在app保存servicecharacteristic細節。 但是當您嘗試讀取和寫入特征時, BluetoothGatt實例應具有此詳細信息,並且只有服務發現會在BluetoothGatt實例中添加服務數據。

因此,在使用這些services/characteristics之前,您必須在應用程序中的某個時間點進行service discovery

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM