main.py 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. import subprocess
  2. import asyncio
  3. from time import sleep
  4. from pymobiledevice3.lockdown import create_using_usbmux
  5. from pymobiledevice3.services.dvt.instruments.process_control import ProcessControl
  6. from pymobiledevice3.services.installation_proxy import InstallationProxyService
  7. from pymobiledevice3.services.dvt.dvt_secure_socket_proxy import DvtSecureSocketProxyService
  8. from pymobiledevice3.services.dvt.instruments.device_info import DeviceInfo
  9. from pymobiledevice3.services.dvt.instruments.simulate_touch
  10. BUNDLE_ID = 'com.laiwang.DingTalk'
  11. def main():
  12. try:
  13. # 连接手机
  14. lockdown = create_using_usbmux()
  15. print("开发者模式",lockdown.developer_mode_status)
  16. # 获取钉钉-app
  17. with InstallationProxyService(lockdown) as installer:
  18. # 查找特定应用
  19. ddApp = [app for app in installer.get_apps() if 'DingTalk' in app]
  20. if len(ddApp):
  21. print("找到包",ddApp[0])
  22. if ddApp[0] == BUNDLE_ID:
  23. # 打开app
  24. with DvtSecureSocketProxyService(lockdown) as dvt:
  25. process_control = ProcessControl(dvt)
  26. pid = process_control.launch(BUNDLE_ID)
  27. print("启动app",pid)
  28. # 点击工作台
  29. sleep(5)
  30. else:
  31. print("包名不匹配")
  32. else:
  33. print("没找到包,请安装钉钉")
  34. except ConnectionError as e:
  35. print(f"连接失败")
  36. if __name__ == '__main__':
  37. main()