fix: 启动时恢复已保存的 Android 设备 (#26)
This commit is contained in:
@@ -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]],
|
||||
|
||||
Reference in New Issue
Block a user