From 6816b4d3c562356900858d89b42d35b211c4e1af Mon Sep 17 00:00:00 2001 From: MistEO Date: Mon, 6 Jun 2022 01:02:35 +0800 Subject: [PATCH] =?UTF-8?q?chore.=E5=A2=9E=E5=8A=A0=E4=BA=86=E4=B8=80?= =?UTF-8?q?=E4=B8=AA=E5=88=86=E8=BE=A8=E7=8E=87=E8=8E=B7=E5=8F=96=E9=94=99?= =?UTF-8?q?=E8=AF=AF=E7=9A=84=E6=8A=A5=E9=94=99?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docs/回调消息协议.md | 2 ++ src/MeoAssistant/Controller.cpp | 10 ++++++++-- src/MeoAsstGui/Helper/AsstProxy.cs | 16 +++++++--------- 3 files changed, 17 insertions(+), 11 deletions(-) diff --git a/docs/回调消息协议.md b/docs/回调消息协议.md index 2dca15d0df..c4c3c3c0dd 100644 --- a/docs/回调消息协议.md +++ b/docs/回调消息协议.md @@ -79,6 +79,8 @@ Todo 已获取到设备唯一码 - `UnsupportedResolution` 分辨率不被支持 +- `ResolutionError` + 分辨率获取错误 #### AllTasksCompleted diff --git a/src/MeoAssistant/Controller.cpp b/src/MeoAssistant/Controller.cpp index b44b300e57..67beee8abf 100644 --- a/src/MeoAssistant/Controller.cpp +++ b/src/MeoAssistant/Controller.cpp @@ -974,7 +974,13 @@ bool asst::Controller::connect(const std::string& adb_path, const std::string& a m_callback(AsstMsg::ConnectionInfo, info, m_callback_arg); - if (m_width < WindowWidthDefault || m_height < WindowHeightDefault) { + if (m_width == 0 || m_height == 0) { + info["what"] = "ResolutionError"; + info["why"] = "Get resolution failed"; + m_callback(AsstMsg::ConnectionInfo, info, m_callback_arg); + return false; + } + else if (m_width < WindowWidthDefault || m_height < WindowHeightDefault) { info["what"] = "UnsupportedResolution"; info["why"] = "Low screen resolution"; m_callback(AsstMsg::ConnectionInfo, info, m_callback_arg); @@ -1062,7 +1068,7 @@ bool asst::Controller::release() { return call_command(m_adb.release).has_value(); } - } +} const std::string& asst::Controller::get_uuid() const { diff --git a/src/MeoAsstGui/Helper/AsstProxy.cs b/src/MeoAsstGui/Helper/AsstProxy.cs index 27a7f5f2e1..79b6ea8efd 100644 --- a/src/MeoAsstGui/Helper/AsstProxy.cs +++ b/src/MeoAsstGui/Helper/AsstProxy.cs @@ -161,17 +161,21 @@ namespace MeoAsstGui private void procConnectInfo(JObject details) { var what = details["what"].ToString(); + var svm = _container.Get(); + var mainModel = _container.Get(); switch (what) { case "Connected": - var svm = _container.Get(); svm.ConnectAddress = details["details"]["address"].ToString(); break; case "UnsupportedResolution": - var mainModel = _container.Get(); mainModel.AddLog("分辨率过低\n请设置为 720p 或更高", "darkred"); break; + + case "ResolutionError": + mainModel.AddLog("分辨率获取失败\n建议重启电脑\n或更换模拟器后再试", "darkred"); + break; } } @@ -631,7 +635,6 @@ namespace MeoAsstGui public bool AsstConnect(ref string error) { - error = ""; var settings = _container.Get(); if (settings.AdbPath == String.Empty || settings.ConnectAddress == String.Empty) @@ -643,11 +646,6 @@ namespace MeoAsstGui } settings.TryToSetBlueStacksHyperVAddress(); - if (settings.ConnectConfig == "LDPlayer") - { - error = "检测到您正在使用雷电模拟器\n由于雷电模拟器过于离谱\nMAA 不推荐使用\n若您遇到任何问题\n建议更换模拟器并再次尝试"; - } - bool ret = AsstConnect(_handle, settings.AdbPath, settings.ConnectAddress, settings.ConnectConfig); // 尝试默认的备选端口 @@ -796,4 +794,4 @@ namespace MeoAsstGui SubTaskCompleted, // 原子任务完成 SubTaskExtraInfo // 原子任务额外信息 }; -} \ No newline at end of file +}