命令行关闭Android模拟器

命令行下关闭Android模拟器方法:

Linux系统下可以通过命令:adb emu kill实现,但是此命令在Windows下无效,

Windows系统下可进入模拟器的控制台关闭,方法如下:

命令行下输入:telnet localhost 5554(具体的模拟器端口)

在telnet窗口下输入kill即可。

如果要编程实现的话,python可以使用telnetlib模块实现telnet命令行控制,并且在发送kill命令之前最好发送help命令,因为windows下会忽略第一个发送的命令,所以发送一个无关紧要的help命令即可,具体代码可参考如下:

   1: def shutdownAVD(platform_tools):
   2:     """
   3:         shutdown avd
   4:     """ 
   5:     if sys.platform.startswith('win'):
   6:         try:
   7:             avd_telnet = telnetlib.Telnet()
   8:             avd_telnet.open('localhost',5554)
   9:             # 注意每个命令后的'\n',否则命令发送了没有效果,相当于回车
  10:             avd_telnet.write('help' + '\n')
  11:             avd_telnet.write('kill' + '\n')
  12:         except Exception:
  13:             pass
  14:         finally:
  15:             avd_telnet.close()
  16:     else:
  17:         try:
  18:             # platform_tools为Android Platform-tools目录路径
  19:             os.chdir(platform_tools)
  20:             avd_shutdown = 'adb emu kill'
  21:             pipe = subprocess.Popen(avd_shutdown,shell=True,stdout=subprocess.PIPE,stderr=subprocess.PIPE)   
posted @ 2012-05-13 10:27  MindMac  阅读(4418)  评论(2编辑  收藏  举报