安卓系统的手机如何修改MTU值

安卓系统的手机如何修改MTU值,第1张

1、打开安卓手机

2、在手机上安装安卓版超级终端;

3、进入超级终端并输入"su",点击回车键

4、输入"busybox ifconfig",点击回车键;

5、输入命令"ip link set dev x mtu n",按下回车。

MTU是指在一个协议数据单元中( Protocol Data Unit, PDU ) 有效的最大传输 Byte 。

不同的蓝牙版本最大MTU不同,例如:蓝牙4.2的最大MTU=247Byte(不一定正确,也有说是257Byte、也有说是241Byte),蓝牙5.0的最大MTU=512Byte,有效的最大MTU还需要减去协议Byte、Opcode和Handler。

蓝牙4.2:1Byte(Opcode)+2Byte(Handler)+244Byte(BATT)=247Byte(不一定正确)

蓝牙5.0:512Byte不一定正确)

Added in API level 21

在 Android 中修改MTU很简单只需要调用 BluetoothGatt#requestMtu(int MTU) 方法即可。 requestMtu(intMTU) 必须在发现蓝牙服务并建立蓝牙服务连接之后才能调用,否则 MTU 会默认为 20Byte 。如果调用成功会自定回调 BluetoothGattCallback 类中的 onMtuChanged(BluetoothGatt gatt, int mtu, int status) 方法。

注意:我看到一些文档提到在 public void onServicesDiscovered(BluetoothGatt gatt, int status) { } 方法中设置 MTU ,但是亲自尝试之后不起作用。所以在连接成功之后立即设置 MTU ,成功之后再去搜索服务。

1 先下载安卓版超级终端到手机上,然后进行安装。

2 输入su之后按手机软键盘的回车键,此时是获取rot权限。

3 输入busybox ifconfig,按下软键盘的回车,此时可以查看手机ip、网卡硬件找到手机的无线连接。

4 输入命令ip link set dev x mtu n,按下回车,x只带的是网卡名城,n处输入你想修改的mtu值,最大不能超过1500。

5 此方式进行的mtu修改只是暂时性的,手机重启之后将会恢复默认设置。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/11384184.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-15
下一篇 2023-05-15

发表评论

登录后才能评论

评论列表(0条)

保存