This commit is contained in:
parent
148ab6a8db
commit
15875a3fe0
2 changed files with 13 additions and 21 deletions
|
@ -132,7 +132,7 @@ class ADB:
|
|||
|
||||
def check_server_status(self) -> str:
|
||||
"""Use `adb devices` as `adb start-server`, result is actually useless"""
|
||||
stdout = self.adb_command(["devices"])
|
||||
stdout = self.adb_command(["devices"]).strip()
|
||||
logger.info(stdout)
|
||||
return stdout
|
||||
|
||||
|
|
|
@ -32,7 +32,7 @@ class DroidCast:
|
|||
def __init__(self):
|
||||
self.session = requests.Session()
|
||||
self.port = 0
|
||||
self.process = None
|
||||
self.socket = None
|
||||
|
||||
@cached_property
|
||||
def adb(self) -> ADB:
|
||||
|
@ -88,27 +88,19 @@ class DroidCast:
|
|||
logger.info(f"保持DroidCast端口为{port}")
|
||||
self.adb.adb.forward(f"tcp:{port}", f"tcp:{port}")
|
||||
logger.info("ADB端口转发成功,启动DroidCast")
|
||||
self.process = self.adb.process(
|
||||
class_path,
|
||||
[
|
||||
"app_process",
|
||||
"/",
|
||||
"com.rayworks.droidcast.Main",
|
||||
f"--port={port}",
|
||||
],
|
||||
)
|
||||
cmd = f"{class_path} app_process / com.rayworks.droidcast.Main --port={port}"
|
||||
self.socket = self.adb.adb_shell(cmd, True)
|
||||
time.sleep(1) # TODO: 更好地等待DroidCast启动
|
||||
return True
|
||||
|
||||
@retry_droidcast
|
||||
def capture_display(self):
|
||||
try:
|
||||
url = f"http://127.0.0.1:{self.port}/screenshot"
|
||||
logger.debug(f"GET {url}")
|
||||
r = self.session.get(url)
|
||||
img = bytes2img(r.content)
|
||||
if config.conf.droidcast.rotate:
|
||||
img = cv2.rotate(img, cv2.ROTATE_180)
|
||||
return img
|
||||
except Exception as e:
|
||||
raise e
|
||||
if self.port == 0:
|
||||
raise Exception("DroidCast未启动")
|
||||
url = f"http://127.0.0.1:{self.port}/screenshot"
|
||||
logger.debug(f"GET {url}")
|
||||
r = self.session.get(url)
|
||||
img = bytes2img(r.content)
|
||||
if config.conf.droidcast.rotate:
|
||||
img = cv2.rotate(img, cv2.ROTATE_180)
|
||||
return img
|
||||
|
|
Loading…
Reference in a new issue