平時我們調試有時需要使用到tcp來遠程連接手機,每次輸入一堆命令實在太麻煩,寫了個腳本:
#!/usr/bin/env python
#coding=utf-8
# owner:penzhicai
import sys
import os
import time
import platform
getIpCount = 0
LINUX = 1
WINDOWS = 2
def usePlatform():
sysstr = platform.system()
if(sysstr =="Windows"):
systemPlatform = WINDOWS
else:
systemPlatform = LINUX
return systemPlatform
def parseIp():
global getIpCount
ip = ""
strip = ""
systemPlatform = usePlatform()
try:
cmd = ""
if systemPlatform == WINDOWS:
cmd = "adb shell ifconfig wlan0 | findstr \"inet addr:\""
else:
cmd = "adb shell ifconfig wlan0 | grep \"inet addr:\""
strip = os.popen(cmd).read()
ip = strip.split("addr:")[1].split(" ")[0];
print ip
except IndexError as e:
getIpCount = getIpCount + 1
print cmd + strip
print e
print "Error: 獲取ip失敗,重試第" + str(getIpCount) + "次"
time.sleep(2)
if getIpCount < 10:
return parseIp()
else:
print "Error: 獲取ip失敗,請檢查網絡"
return ip
def main():
os.system("adb kill-server")
os.system("adb wait-for-device")
os.system("adb root")
os.system("adb wait-for-device")
os.system("adb tcpip 5555")
os.system("adb wait-for-device")
time.sleep(4)
ip = parseIp()
os.system("adb wait-for-device")
cmd = "adb connect " + ip + ":5555"
print(cmd)
os.system(cmd)
main()
1.下載腳本
2.鏈接腳本到/usr/bin下:
pzc@pzc-QiTianM425-N000:~/tools/Tools$ cd /usr/bin/
pzc@pzc-QiTianM425-N000:/usr/bin$ sudo ln -s /home/pzc/tools/Tools/adb_tool/adbtcp.py adbtcp
3.插上手機,運行腳本
pzc@pzc-QiTianM425-N000:/$ adbtcp
* daemon not running; starting now at tcp:5037
* daemon started successfully
adbd is already running as root
restarting in TCP mode port: 5555
adb connect 10.90.175.233
connected to 10.90.175.233:5555