python-uiautomator2/main.py

41 lines
939 B
Python
Raw Normal View History

2024-08-01 20:39:20 +08:00
import uvicorn
2024-08-01 18:52:16 +08:00
2025-02-01 14:41:23 +08:00
import uiautomator2 as u2
from app import *
from api.base import *
2024-08-01 21:07:17 +08:00
2024-08-01 20:39:20 +08:00
@app.get("/health", response_model=Response)
def health():
return Response()
2024-08-01 21:07:17 +08:00
2024-08-01 20:39:20 +08:00
@app.post("/device/connect", response_model=Response)
def connect_device(item: Device):
try:
d = u2.connect(item.serial)
except Exception as e:
return Response(code=500, msg=str(e))
print(d.info)
print(d.device_info)
devices[item.serial] = d
return Response(data=d.device_info)
@app.post("/device/size", response_model=Response)
def get_device_size(item: Device):
if item.serial not in devices:
return Response(code=500, msg="设备 {} 不存在".format(item.serial))
2024-08-01 21:07:17 +08:00
2024-08-01 20:39:20 +08:00
d = devices[item.serial]
width, height = d.window_size()
return Response(data={
"width": width,
"heighth": height,
})
2024-08-01 21:07:17 +08:00
2024-08-28 03:19:41 +08:00
2024-08-01 20:39:20 +08:00
if __name__ == '__main__':
2024-08-01 21:07:17 +08:00
uvicorn.run('main:app', host='0.0.0.0', port=8000, reload=True)