【问题标题】:Disconnect from connected BLE device's GATT server从连接的 BLE 设备的 GATT 服务器断开连接
【发布时间】:2014-11-10 17:02:26
【问题描述】:

我在我的应用程序的一个区域连接到 BLE 设备的 GATT 服务器,我想在我的应用程序的另一个区域断开与设备的连接。问题是当我想断开连接时,我不再能够访问BluetoothGatt 客户端对象(它具有disconnect() 方法)。有什么方法可以在不参考BluetoothGatt 的情况下断开与 BLE 设备的连接?

【问题讨论】:

    标签: android android-bluetooth gatt


    【解决方案1】:

    我会编写您自己的基本抽象层。在最简单的情况下,它可以是一个类和一个您有一些全局引用的实例。非常基本的存根示例:

    public class MyBleWrapper
    {
        private static MyBleWrapper s_instance = new MyBleWrapper();
    
        private BluetoothDevice m_device;
        private BluetoothGatt m_gatt;
    
        public static MyBleWrapper getInstance()
        {
            return s_instance;
        }
    }
    

    然后,您将添加各种方法,例如 connect()disconnect(),它们将在 m_gatt 成员上运行。无论如何,编写自己的抽象层是个好主意,因为您将开始使用 Android BLE 发现所有怪癖和错误。最好将它们隐藏在干净的界面后面。

    【讨论】:

      猜你喜欢
      • 2014-11-16
      • 1970-01-01
      • 2014-07-17
      • 1970-01-01
      • 2015-12-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-10-29
      相关资源
      最近更新 更多