帖子
帖子
用户
博客
课程
12下一页
返回列表 发新帖
显示全部楼层
4
帖子
0
勋章
66
Y币

[BUG] BLE模块修改MTU未生效

[复制链接]
发表于 2019-10-12 10:28:29
本帖最后由 mcliu0227 于 2019-10-12 10:36 编辑

官方ble模块修改MTU的调用未生效。

Android版本验证过修改MTU无效,IOS版本未验证

4
帖子
0
勋章
66
Y币
Android版本验证过修改MTU无效,IOS版本未验证
9
帖子
0
勋章
5634
Y币
修改mtu是哪个接口 ? 我怎么没找到关于mtu的
4
帖子
0
勋章
66
Y币
马浩川 发表于 2019-10-12 10:36
修改mtu是哪个接口 ? 我怎么没找到关于mtu的

请看源码如下:
        public void connect(UZModuleContext moduleContext, String address) {
                /*if ((address == null) || (address.length() == 0)) {
                        connectCallBack(moduleContext, false, 1, "null address");
                        return;
                }
                try {
                        if (this.bluetoothGatt != null) {
                                this.bluetoothGatt.disconnect();
                                this.bluetoothGatt.close();
                        }

                        final BluetoothDevice device = this.mBluetoothAdapter.getRemoteDevice(address);

                        ((Activity) this.mContext).runOnUiThread(new Runnable() {
                                public void run() {
                                        AndroidBle.this.bluetoothGatt = device.connectGatt(AndroidBle.this.mContext, false, AndroidBle.this.mBluetoothGattCallback);
                                        AndroidBle.this.bluetoothGatt.requestMtu(512);
                                }
                        });
                } catch (Exception e) {
                        connectCallBack(moduleContext, false, 2, "Exception");
                }*/
               
                  //存储连接接口的  moduleContext
              mConnectCallBackMap.put(address, moduleContext);  
                if (mBluetoothAdapter == null || address == null) {
                    Log.i(TAG, "BluetoothAdapter not initialized or unspecified address.");
                    connectCallBack(moduleContext, false, 1, "null address",null);
                    return;
                }
               
                        //获得给定的蓝牙硬件地址的蓝牙设备对象  ,也就是我们要连接的那个设备的device;
                        final BluetoothDevice device = mBluetoothAdapter.getRemoteDevice(address);
                        if (device == null) {
                        Log.i(TAG, "Device not found.  Unable to connect.");
                        connectCallBack(moduleContext, false, 2, "device is null object",null);
                        return;
                          
                    }
                        
                         /***
                 * 下方代码是为了防止手机最多能连接五次到六次的上限,所以进入时先判断,连接过没有
                 * 有的话先关闭掉,重新创建一个新的连接;
                 */
                        try {
                                if (mBluetoothGatt != null) {
                                        mBluetoothGatt.disconnect();
                                        mBluetoothGatt.close();
                                }
                                
                        //此代码连接操作        

                if (Build.VERSION.SDK_INT >= 23) {
                        mBluetoothGatt = device.connectGatt(mContext, false, mBluetoothGattCallback);
                        AndroidBle.this.mBluetoothGatt.requestMtu(512);
                } else {
                        mBluetoothGatt = device.connectGatt(mContext, false, mBluetoothGattCallback);
                        mBluetoothGatt.requestMtu(512);
                }
               
               
               
               
                  Log.i(TAG, "Trying to create a new connection.");
                        } catch (Exception e) {
                                  connectCallBack(moduleContext, false, 2, "Exception",null);
                        }
               
               
        }
4
帖子
0
勋章
66
Y币
马浩川 发表于 2019-10-12 10:36
修改mtu是哪个接口 ? 我怎么没找到关于mtu的

版主,这个是否有问题?
20
帖子
0
勋章
6613
Y币
mcliu0227 发表于 2019-10-14 09:26
版主,这个是否有问题?

原生开发不懂,帮你问一下吧
4
帖子
0
勋章
66
Y币
yxWin 发表于 2019-10-14 19:07
原生开发不懂,帮你问一下吧

感谢! 分享下ble最新的源码也行
20
帖子
0
勋章
6613
Y币
mcliu0227 发表于 2019-10-15 16:48
感谢! 分享下ble最新的源码也行

我没有源码。。。

看一下这个呢
https://www**.**/p/4ecc99679451
4
帖子
0
勋章
66
Y币
yxWin 发表于 2019-10-15 18:00
我没有源码。。。

看一下这个呢

有没有维护这个模块工程师的联系方式?
20
帖子
0
勋章
6613
Y币
mcliu0227 发表于 2019-10-16 09:25
有没有维护这个模块工程师的联系方式?

你是想自己封装一个蓝牙模块吗?
12下一页
您需要登录后才可以回帖 登录

本版积分规则