From a24d4ecf04a4e68a52dcdaee673c80e93d0f2cbd Mon Sep 17 00:00:00 2001 From: MistEO Date: Wed, 26 Jun 2024 00:50:28 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E4=BF=AE=E5=A4=8DAdb=E9=85=8D=E7=BD=AE?= =?UTF-8?q?=E4=B8=8D=E8=83=BD=E6=AD=A3=E7=A1=AE=E5=AF=BC=E5=85=A5=E7=9A=84?= =?UTF-8?q?=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/MaaDebugger/maafw/__init__.py | 4 ++-- .../webpage/index_page/master_control.py | 20 +++++++++++++++++-- 2 files changed, 20 insertions(+), 4 deletions(-) diff --git a/src/MaaDebugger/maafw/__init__.py b/src/MaaDebugger/maafw/__init__.py index 04499c8..f3f5215 100644 --- a/src/MaaDebugger/maafw/__init__.py +++ b/src/MaaDebugger/maafw/__init__.py @@ -53,8 +53,8 @@ async def detect_win32hwnd(class_regex: str, window_regex: str) -> List[Window]: return windows - async def connect_adb(self, path: Path, address: str) -> bool: - self.controller = AdbController(path, address) + async def connect_adb(self, path: Path, address: str, config: dict) -> bool: + self.controller = AdbController(path, address, config=config) connected = await self.controller.connect() if not connected: print(f"Failed to connect {path} {address}") diff --git a/src/MaaDebugger/webpage/index_page/master_control.py b/src/MaaDebugger/webpage/index_page/master_control.py index bcb68a0..c2324c0 100644 --- a/src/MaaDebugger/webpage/index_page/master_control.py +++ b/src/MaaDebugger/webpage/index_page/master_control.py @@ -1,4 +1,5 @@ import asyncio +import json from pathlib import Path from maa.define import MaaWin32ControllerTypeEnum @@ -65,6 +66,14 @@ async def connect_adb_control(): .props("size=30") .bind_value(app.storage.general, "adb_address") ) + adb_config_input = ( + ui.input( + "Extras", + placeholder="eg: {}", + ) + .props("size=30") + .bind_value(app.storage.general, "adb_config") + ) ui.button( "Connect", on_click=lambda: on_click_connect(), @@ -96,8 +105,14 @@ async def on_click_connect(): GlobalStatus.ctrl_connecting = Status.FAILURE return + try: + config = json.loads(adb_config_input.value) + except json.JSONDecodeError as e: + print("Error parsing extras:", e) + config = {} + connected = await maafw.connect_adb( - Path(adb_path_input.value), adb_address_input.value + Path(adb_path_input.value), adb_address_input.value, config ) if not connected: GlobalStatus.ctrl_connecting = Status.FAILURE @@ -114,7 +129,7 @@ async def on_click_detect(): devices = await maafw.detect_adb() options = {} for d in devices: - v = (d.adb_path, d.address) + v = (d.adb_path, d.address, d.config) l = d.name + " " + d.address options[v] = l @@ -130,6 +145,7 @@ async def on_click_detect(): def on_change_devices_select(e): adb_path_input.value = str(e.value[0]) adb_address_input.value = e.value[1] + adb_config_input.value = str(e.value[2]) async def connect_win32_control():