diff --git a/lib/login/login/starLock_login_page.dart b/lib/login/login/starLock_login_page.dart index 701eddc9..9c982a13 100755 --- a/lib/login/login/starLock_login_page.dart +++ b/lib/login/login/starLock_login_page.dart @@ -247,7 +247,6 @@ class _StarLockLoginPageState extends State { ToPeerId: '3phX8Ng2cZHz5NtP8xAf6nYy2z1BYytoejgjoHrWMGhH'); }, ), - SizedBox(height: 50.w), Row( mainAxisAlignment: MainAxisAlignment.center, diff --git a/lib/talk/startChart/entity/scp_message.dart b/lib/talk/startChart/entity/scp_message.dart index fe3bd152..68d805b5 100644 --- a/lib/talk/startChart/entity/scp_message.dart +++ b/lib/talk/startChart/entity/scp_message.dart @@ -236,20 +236,25 @@ class ScpMessage { } // Payload (字符串,转换为字节) - if (message.PayloadLength != null && - bytes.length - offset >= message.PayloadLength!) { - message.Payload = - utf8.decode(bytes.sublist(offset, offset + message.PayloadLength!)); - offset += message.PayloadLength!; - } else { - throw FormatException("Invalid Payload or PayloadLength"); - } + // if (message.PayloadLength != null && + // bytes.length - offset >= message.PayloadLength!) { + // message.Payload = + // utf8.decode(bytes.sublist(offset, offset + message.PayloadLength!)); + // offset += message.PayloadLength!; + // } else { + // throw FormatException("Invalid Payload or PayloadLength"); + // } + + // 打印解析后的 PayloadLength + print('Parsed PayloadLength: ${message.PayloadLength}'); // 解析Payload - // 解析Payload - if (message.PayloadType == 110) { // 假设110表示HeartbeatResponse类型 - if (message.PayloadLength != null && bytes.length - offset >= message.PayloadLength!) { - final payloadBytes = bytes.sublist(offset, offset + message.PayloadLength!); + if (message.PayloadType == PayloadTypeConstant.heartbeat) { + // 假设110表示HeartbeatResponse类型 + if (message.PayloadLength != null && + bytes.length - offset >= message.PayloadLength!) { + final payloadBytes = + bytes.sublist(offset, offset + message.PayloadLength!); message.Payload = HeartbeatResponse.deserialize(payloadBytes); offset += message.PayloadLength!; } else { @@ -257,15 +262,16 @@ class ScpMessage { } } else { // 处理其他类型的Payload - if (message.PayloadLength != null && bytes.length - offset >= message.PayloadLength!) { - message.Payload = utf8.decode(bytes.sublist(offset, offset + message.PayloadLength!)); + if (message.PayloadLength != null && + bytes.length - offset >= message.PayloadLength!) { + message.Payload = + utf8.decode(bytes.sublist(offset, offset + message.PayloadLength!)); offset += message.PayloadLength!; } else { throw FormatException("Invalid Payload or PayloadLength"); } } - // 验证PayloadCRC // if (message.Payload != null) { // var crcBytes = List.from(utf8.encode(message.Payload!)); diff --git a/lib/talk/startChart/start_chart_manage.dart b/lib/talk/startChart/start_chart_manage.dart index 9b060557..15efe208 100644 --- a/lib/talk/startChart/start_chart_manage.dart +++ b/lib/talk/startChart/start_chart_manage.dart @@ -139,8 +139,9 @@ class StartChartManage { try { _log(text: '收到消息---> 长度:${dg?.data?.length}, 数据:${dg?.data}'); if (dg?.data != null) { - final deserialize = ScpMessage.deserialize(dg!.data); _log(text: '=============${bytesToHex(dg!.data)}'); + final deserialize = ScpMessage.deserialize(dg!.data); + _log(text: 'Udp收到结构体数据---》$deserialize'); } } catch (e) {