设为首页 加入收藏

TOP

Python实现的基于ADB的Android远程工具(十一)
2015-04-07 15:30:41 来源: 作者: 【 】 浏览:218
Tags:Python 实现 基于 ADB Android 远程 工具
top arobot_keys'
? ? ? ? if self.__tkapp != None:
? ? ? ? ? ? self.__tkapp.quit()
? ? ? ? self.thread_stop = True


# screen windows thread
class arobot_lcd(threading.Thread):
? ? __tkapp = None
? ? __root = None
? ?
? ? def __init__(self):
? ? ? ? threading.Thread.__init__(self)
? ? ? ? self.thread_stop = False


? ? def run(self):
? ? ? ? if DEBUG:
? ? ? ? ? ? print 'run arobot_lcd'
? ? ? ? self.__root = tk.Tk()
? ? ? ? self.__tkapp = LcdApplication(master=self.__root)
? ? ? ? self.__tkapp.master.title('ARobot3.0-Lcd')
? ? ? ? t = threading.Timer(1, self.__tkapp.updatelcd_sock)
? ? ? ? t.start()
? ? ? ? self.__tkapp.grid()
? ? ? ? self.__tkapp.mainloop()
? ? ? ? if DEBUG:
? ? ? ? ? ? print 'exit arobot_lcd mainloop'
? ? ? ? self.__tkapp.stop()


? ? def stop(self):
? ? ? ? if DEBUG:
? ? ? ? ? ? print 'stop arobot_lcd'
? ? ? ? self.thread_stop = True
? ? ? ? if self.__tkapp != None:
? ? ? ? ? ? self.__tkapp.stop()
? ? ? ? ? ? self.__tkapp.quit()


def arobot_main(prog):
? ? if prog == None:
? ? ? ? return


? ? if prog == 'lcd':
? ? ? ? lcd_thread = arobot_lcd()
? ? ? ? lcd_thread.start()


? ? if prog == 'keypad':
? ? ? ? keypad_thread = arobot_keys()
? ? ? ? keypad_thread.start()


def usage():
? ? print '--------------------------------------------'
? ? print 'Arobot 3.1'
? ? print 'This is a tool to control Android device via ADB'
? ? print 'usage: python %s [option]' % sys.argv[0]
? ? print 'option:'
? ? print '? -keypad? ? run keypad'
? ? print '? -lcd? ? ? ? run lcd'
? ? print '--------------------------------------------'


if __name__ == '__main__':
? ? prog_name = sys.argv[0]
? ? if '--debug' in? sys.argv:
? ? ? ? DEBUG = True


? ? if DEBUG:
? ? ? ? if len(sys.argv) == 2:
? ? ? ? ? ? cmd_str = 'python %s -keypad --debug' % prog_name
? ? ? ? ? ? p1 = subprocess.Popen(cmd_str, shell=True)
? ? ? ? ? ? cmd_str = 'python %s -lcd --debug' % prog_name
? ? ? ? ? ? p2 = subprocess.Popen(cmd_str, shell=True)
? ? ? ? elif len(sys.argv) == 3:
? ? ? ? ? ? if sys.argv[1] == '-keypad':
? ? ? ? ? ? ? ? arobot_main('keypad')
? ? ? ? ? ? elif sys.argv[1] == '-lcd':
? ? ? ? ? ? ? ? arobot_main('lcd')
? ? ? ? ? ? else:
? ? ? ? ? ? ? ? usage()
? ? else:
? ? ? ? if len(sys.argv) == 1:
? ? ? ? ? ? # Do not wast your time on threading, it is disaster working with tk!
? ? ? ? ? ? # I have tried many ways to open multi-windows via Tk and Threading
? ? ? ? ? ? # but fail! or linux ok but windows fail, so, just use the subprocess!
? ? ? ? ? ? cmd_str = 'python %s -keypad' % prog_name
? ? ? ? ? ? p1 = subprocess.Popen(cmd_str, shell=True)
? ? ? ? ? ? cmd_str = 'python %s -lcd' % prog_name
? ? ? ? ? ? p2 = subprocess.Popen(cmd_str, shell=True)
? ? ? ? elif len(sys.argv) == 2:
? ? ? ? ? ? if sys.argv[1] == '-keypad':
? ? ? ? ? ? ? ? arobot_main('keypad')
? ? ? ? ? ? elif sys.argv[1] == '-lcd':
? ? ? ? ? ? ? ? arobot_main('lcd')
? ? ? ? ? ? else:
? ? ? ? ? ? ? ? usage()? ? ? ?
? ? ? ? else:
? ? ? ? ? ? usage()


--------------------------------------分割线 --------------------------------------


首页 上一页 8 9 10 11 下一页 尾页 11/11/11
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇Python基础教程 - global关键字及.. 下一篇Python基础教程 - lambda关键字

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: