From 450df4a0d3517816d3fcce6e2dcab67507cbe4b0 Mon Sep 17 00:00:00 2001 From: MistEO Date: Tue, 19 Oct 2021 19:03:38 +0800 Subject: [PATCH 1/4] =?UTF-8?q?fix.=E4=BF=AE=E5=A4=8D=E5=81=B6=E7=8E=B0?= =?UTF-8?q?=E7=95=8C=E9=9D=A2=E5=90=AF=E5=8A=A8=E6=97=B6=E5=B4=A9=E6=BA=83?= =?UTF-8?q?=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/MeoAsstGui/Helper/ViewStatusStorage.cs | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/MeoAsstGui/Helper/ViewStatusStorage.cs b/src/MeoAsstGui/Helper/ViewStatusStorage.cs index f1f0f07ac3..403f46d5cd 100644 --- a/src/MeoAsstGui/Helper/ViewStatusStorage.cs +++ b/src/MeoAsstGui/Helper/ViewStatusStorage.cs @@ -9,7 +9,7 @@ namespace MeoAsstGui public class ViewStatusStorage { private static string _configFilename = System.Environment.CurrentDirectory + "\\gui.json"; - private static JObject _viewStatus; + private static JObject _viewStatus = new JObject(); public static string Get(string key, string defalut_value) { @@ -36,6 +36,11 @@ namespace MeoAsstGui { string jsonStr = sr.ReadToEnd(); _viewStatus = (JObject)JsonConvert.DeserializeObject(jsonStr); + // 文件存在但为空,会读出来一个null,感觉c#这库有bug + if (_viewStatus == null) + { + _viewStatus = new JObject(); + } } } catch (Exception) From a5a1851411dff30fb88e7bb050c03fc4a254e415 Mon Sep 17 00:00:00 2001 From: EricPu <779781675@qq.com> Date: Tue, 19 Oct 2021 20:55:19 +0800 Subject: [PATCH 2/4] Leidian Connection Problem Patch --- src/MeoAssistance/Controller.cpp | 33 ++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) diff --git a/src/MeoAssistance/Controller.cpp b/src/MeoAssistance/Controller.cpp index 8ee9628661..02be54ff31 100644 --- a/src/MeoAssistance/Controller.cpp +++ b/src/MeoAssistance/Controller.cpp @@ -196,6 +196,39 @@ bool Controller::try_capture(const EmulatorInfo& info, bool without_handle) m_emulator_info = info; adb_dir = '"' + utils::string_replace_all(m_emulator_info.adb.path, "[ExecDir]", utils::get_cur_dir()) + '"'; } + + // 针对雷电模拟器连接问题的专用补丁 + if (m_emulator_info.handle.class_name == "LDPlayerMainFrame") { + log.trace("LDPlayer Connection Patch Activated."); + std::string connect_cmd = utils::string_replace_all("[Adb] devices", "[Adb]", adb_dir); + auto devices_result = call_command(connect_cmd); + std::string devices_list( + std::make_move_iterator(devices_result.begin()), + std::make_move_iterator(devices_result.end())); + // 查找连接的所有设备 + std::string device = {}; + + if (devices_list.find("emulator") != devices_list.npos) { + device = devices_list.substr(devices_list.find("emulator"), 13); + m_emulator_info.adb.connect = ""; + } + else if (devices_list.find("127") != devices_list.npos) { + devices_list.substr(devices_list.find("127"), 14); + } + + if (device.empty()) { + log.trace("no device detected."); + return false; + } + + log.trace("device detected: ", device); + + m_emulator_info.adb.connect = utils::string_replace_all(m_emulator_info.adb.connect, "127.0.0.1:5555", device); + m_emulator_info.adb.click = utils::string_replace_all(m_emulator_info.adb.click, "-e", "-s " + device); + m_emulator_info.adb.swipe = utils::string_replace_all(m_emulator_info.adb.swipe, "-e", "-s " + device); + m_emulator_info.adb.display = utils::string_replace_all(m_emulator_info.adb.display, "-e", "-s " + device); + m_emulator_info.adb.screencap = utils::string_replace_all(m_emulator_info.adb.screencap, "-e", "-s " + device); + } // TODO,检查连接是否成功 std::string connect_cmd = utils::string_replace_all(m_emulator_info.adb.connect, "[Adb]", adb_dir); From 1a54b55e797f4585d0c75f88a7f9293be104427b Mon Sep 17 00:00:00 2001 From: EricPu <779781675@qq.com> Date: Tue, 19 Oct 2021 23:40:04 +0800 Subject: [PATCH 3/4] a missing "=" expression added. --- src/MeoAssistance/Controller.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/MeoAssistance/Controller.cpp b/src/MeoAssistance/Controller.cpp index 02be54ff31..b1132091fc 100644 --- a/src/MeoAssistance/Controller.cpp +++ b/src/MeoAssistance/Controller.cpp @@ -213,7 +213,7 @@ bool Controller::try_capture(const EmulatorInfo& info, bool without_handle) m_emulator_info.adb.connect = ""; } else if (devices_list.find("127") != devices_list.npos) { - devices_list.substr(devices_list.find("127"), 14); + device = devices_list.substr(devices_list.find("127"), 14); } if (device.empty()) { From 3ae9f6e2799c0d46e64399041ce1aec3da0aa0d5 Mon Sep 17 00:00:00 2001 From: MistEO Date: Wed, 20 Oct 2021 00:59:33 +0800 Subject: [PATCH 4/4] =?UTF-8?q?chore.=E6=9B=B4=E6=96=B0v1.2-beta.2?= =?UTF-8?q?=E7=89=88=E6=9C=AC=E5=8F=B7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/MeoAssistance/Version.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/MeoAssistance/Version.h b/src/MeoAssistance/Version.h index 05ca7cd986..72443e7bd9 100644 --- a/src/MeoAssistance/Version.h +++ b/src/MeoAssistance/Version.h @@ -1,5 +1,5 @@ #pragma once namespace asst { - constexpr static const char* Version = "v1.2-beta"; + constexpr static const char* Version = "v1.2-beta.2"; } \ No newline at end of file