Android adb无线调试脚本

使用adb的无线调试功能十分的方便。
但是实际工作中,总是要手动输入,十分麻烦。所以就把它写成脚本文件。

使用步骤

  1. 连接上USB
  2. 运行脚本文件(windows双击运行bat文件,mac的话terminal运行)
  3. 拔掉USB
    这样就可以愉快的开始无线调试了~
  4. 注意手机和电脑需要在一个无线局域网内!!

window的bat脚本

adb_wifi.bat

@echo off
adb disconnect
REM 待处理的字符串
adb shell "ip address | grep inet | grep -v inet6 | grep -v 127" >ip.txt
set /P IP=result.txt
set /P RESULT=nul
if %errorlevel% equ 0 (
echo "成功连接到%_ip%"
) else (
echo "连接到%_ip%失败!!"
pause
)
  • 注意事项
  1. 需要配置adb的环境变量。否则需要将脚本中的adb写成绝对路径。
  2. 运行成功,就会直接关掉窗口。运行失败,则不会自动关闭窗口。
  3. 因为没有找到可以直接接受命令返回的方法,所以执行过程中会产生两个临时文件。(最后都会自动删除掉)
  4. bat脚本运行于windows,双击就可以运行。

shell脚本

adb_wifi.sh

#!/bin/bash
_port=":6666"
port=${_port:1-start}
# 将adb先断开
adb disconnect
#取到ip地址. 这里包括了3钟获取IP的方法,ip address应该是通用的方法
ip=`adb shell "ip address | grep inet | grep -v inet6 | grep -v 127"`
len=${#ip}
if [[ $len != 0 ]]; 
    _ip=`echo $ip |cut -f 2 -d ' ' |cut -f 1 -d '/'`${_port}
then 
    ip=`adb shell "ifconfig | grep inet | grep -v inet6 | grep -v 127"`
    len=${#ip}
    # 在魅族的手机上,可能获取不到数据,通过另外的方法来取
    if [[ $len == 0 ]]; 
    then
        ip=`adb shell "getprop dhcp.wlan0.ipaddress" | head -n 1`
        len=${#ip}
        val=`expr $len - 1`
        _ip=${ip:0:val}${_port}
    else
        ip=`echo ${ip} | cut -f 2 -d ' '`
        _ip=`echo ${ip} | cut -f 2 -d ':'`${_port}
    fi
fi
result=`adb tcpip ${port}`
result=`adb connect ${_ip}`
echo $result
  • 注意事项
  1. 需要配置adb的环境变量。否则需要将脚本中的adb写成绝对路径。
  2. shell脚本不需要文件做中间变量就可以。
  3. shell脚本的运行
    必须先给对应的权限.然后运行。
chmod +x adb_wifi.sh
./adb_wifi.sh

 



作者:deep_sadness
链接:https://www.jianshu.com/p/e0227b7d57fd
來源:简书
简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。

你可能感兴趣的:(Android,Notes)