Android Buletooth Indicate &Notify 模式共存的一个坑点。

2023-05-10 19:17:45 浏览数 (1)

话不多说,

我在使用notify模式的时候, 出现了一个问题, 我打开notify成功了,但是write的时候返回false, 百般纠结也找不到问题所在,后来我看到一个报错信息, 是我之前增加的“高精度模式设置”,代码如下:

代码语言:javascript复制
 /**
     * 设置高精度
     * @param priority
     */
    @RequiresApi(api = Build.VERSION_CODES.LOLLIPOP)
    public void requestConnectionPriority(int priority){
        if (mBluetoothGatt != null) {
            boolean requestConnectionPriority = mBluetoothGatt.requestConnectionPriority(priority);
            Log.e("setHight"," requestConnectionPriority : "  requestConnectionPriority);
        }
    }

当时心情本来就烦躁,那管你什么高精度与否了, 直接注释了, 再运行就好了, 莫名其妙的错误,我也不知道为什么,但是这样做就是可以运行的。

还有一个重要的点!

代码语言:javascript复制
当你开启成功时, 那么必须,必须要延时之后再去发送指令, 
延时的时间可以根据具体情况调整, 建议先设置一个长一点的, 比如2~3秒,先跑通,之后再慢慢调。

大家注意。

0 人点赞