fix: 启动时恢复已保存的 Android 设备 (#26)

This commit is contained in:
chengma
2026-08-07 14:53:28 +08:00
parent e40ce5a13c
commit dc9b000a36
4 changed files with 253 additions and 14 deletions
+24
View File
@@ -121,6 +121,20 @@ class AndroidDeviceService:
)
return enriched
def restore_saved_device(
self,
serial: str,
is_cancelled: Optional[Callable[[], bool]] = None,
) -> List[AndroidDevice]:
"""恢复已保存设备;Wi-Fi 先重连,USB 只刷新设备列表。"""
self._validate_saved_serial(serial)
self._check_cancelled(is_cancelled)
if ":" in serial:
self._connect_wifi(serial)
self._check_cancelled(is_cancelled)
return self.search(is_cancelled)
def convert_usb_to_wifi(
self,
usb_serial: str,
@@ -334,6 +348,16 @@ class AndroidDeviceService:
if ":" in serial:
raise AndroidDeviceSearchError("当前设备已经是 Wi-Fi 连接")
@staticmethod
def _validate_saved_serial(serial: str) -> None:
if not isinstance(serial, str) or not serial.strip():
raise AndroidDeviceSearchError("已保存 Android 设备号为空")
contains_whitespace = any(
character.isspace() for character in serial
)
if serial != serial.strip() or contains_whitespace:
raise AndroidDeviceSearchError("已保存 Android 设备号格式不正确")
@staticmethod
def _check_cancelled(
is_cancelled: Optional[Callable[[], bool]],