INNER CODE UNIT · Python
resolve_workspace_root
cvet/fonline · BuildTools/android_device.py:29
def resolve_workspace_root(workspace_root: str | None) -> Path:
if workspace_root:
return Path(workspace_root).resolve()
return (Path.cwd() / 'Workspace').resolve()
def resolve_adb_path(workspace_root: Path) -> str:
adb_name = 'adb.exe' if os_name_is_windows() else 'adb'
workspace_adb = workspace_root / 'android-sdk' / 'platform-tools' / adb_name
if workspace_adb.is_file():
return str(workspace_adb)
adb_path = shutil.which('adb')
if adb_path:
return adb_path
raise SystemExit('adb not found; prepare Android workspace or install adb on the host')