当前位置:   article > 正文

ADB命令封装批处理文件(无线调试、安装 apk 到指定已连接设备)_echo "install test apk

echo "install test apk

测试机设备 id

用 usb 线连接电脑,打开 usb 调试,可以看到设备的 serial number

adb devices
  • 1

在这里插入图片描述

功能列表

  • 一键连接无线调试
  • 安装 apk 到指定的已连接设备

使用方法

首先需要新建一个文件夹,之后新建的文件需要放在同一文件夹下。
如果不支持 adb 命令,需要先配置 adb 的环境变量。
这里是已经封装好的 adb 批处理工具 adb_tools.zip ,其中 device_list.txt 中需要替换成自己的设备 serial number

创建 device_list.txt

文件存放的是手机的device serial number(设备序列号),这个序列号一般是不会变得。
批处理命令自动连接无线调试,是从这个文件中读取设备序列号,循环遍历去尝试连接。
注意里边填自己的设备序列号

10466db3
  • 1
创建批处理文件 adb_tools.bat

注意保存时另存为编码格式为 ANSI 的文本,不然中文会乱码

@echo off

:main
echo please choose execution:
echo 	1.connect all android devices:
echo 	2.install APK:
echo 	0.exit:

set /p choose=please input choose:
if %choose%==1 goto connect
if %choose%==2 goto install
if %choose%==0 exit
pause

:connect
@rem 连接 wifi 调试
setlocal enabledelayedexpansion

echo 物理设备 serial number 请提前填写在同目录下的 device_list.txt 中

for /f %%h in (%~dp0device_list.txt) do (
	echo -------------------------------------------
	echo ------------adb connect start------------
	echo -------------------------------------------
	echo device_serial_number = %%h
	set command=adb -s %%h shell "ip address | grep inet | grep 192 | grep -v inet6 | grep -v 127"
	for /F "tokens=*" %%i in ('!command!') do (
		 set str="%%i"
	)
	for /f "tokens=2,*" %%a in (!str!) do (
		set str="%%a"
	)
	echo str = !str!
	for /f "delims=/ tokens=1,*" %%a in (!str!) do (
		set str=%%a
	)
	echo device_ip = !str!
	adb -s %%h tcpip 5555
	set _ip=!str!:5555
	set command=adb connect !_ip!
	for /F "tokens=*" %%i in ('!command!') do (
		set RESULT="%%i"
	)
	echo !RESULT! |findstr "connected" >nul
	if !errorlevel! equ 0 (
		echo "wifi adb connect success,device_serial_number : %%h, ip : !_ip!"
	) else (
		echo "wifi adb connect failed,device_serial_number : %%h, ip : !_ip!"
	)
	echo ---------clear variables in foreach-------
	set command=0
	set str=0
	set _ip=0
	set RESULT=0
	echo ------------------------------------------
	echo ------------adb connect end------------
	echo ------------------------------------------
	echo .
	echo .
	echo .
)
adb devices
endlocal
pause
goto main

:install
@rem 安装apk
setlocal enabledelayedexpansion
echo -------------------------------------------
echo ------------install apk start------------
echo -------------------------------------------

set command=adb devices
for /F "tokens=*" %%i in ('!command!') do (
	set full_str="%%i"
	for /f "tokens=2,*" %%j in (!full_str!) do set end_str="%%j"
	if !end_str! equ "device" (
		for /f "tokens=1,*" %%k in (!full_str!) do set start_str=%%k
		if not defined devices (
			set  devices=!start_str!
		) else (
			set  devices=!devices!,!start_str!
		)
	)
)
if not defined devices (
	echo no device connected!!!
	goto :end
)
echo all connected devices: !devices!
set print_devices=!devices:,d= !
set device_number=1
echo choose target device:
for %%a in (!print_devices!) do (
	echo !device_number!. %%a
	set /a device_number = !device_number! + 1
)
set /p selected_device_number=input device_number:
for /f "delims=, tokens=%selected_device_number%" %%a in ("!devices!") do set device_serial_number=%%a
echo choosed device serial number: !device_serial_number!

set /p apk_path=input apk_path:
if not exist %apk_path% (
	echo %apk_path% not exist!
)
echo inputed apk_path: %apk_path%

adb -s !device_serial_number! install -r -t %apk_path%
echo ----------!device_serial_number! install success

echo ------------------------------------------
echo ------------install apk end------------
echo ------------------------------------------
echo .
echo .
echo .

:end
endlocal
pause
goto main
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47
  • 48
  • 49
  • 50
  • 51
  • 52
  • 53
  • 54
  • 55
  • 56
  • 57
  • 58
  • 59
  • 60
  • 61
  • 62
  • 63
  • 64
  • 65
  • 66
  • 67
  • 68
  • 69
  • 70
  • 71
  • 72
  • 73
  • 74
  • 75
  • 76
  • 77
  • 78
  • 79
  • 80
  • 81
  • 82
  • 83
  • 84
  • 85
  • 86
  • 87
  • 88
  • 89
  • 90
  • 91
  • 92
  • 93
  • 94
  • 95
  • 96
  • 97
  • 98
  • 99
  • 100
  • 101
  • 102
  • 103
  • 104
  • 105
  • 106
  • 107
  • 108
  • 109
  • 110
  • 111
  • 112
  • 113
  • 114
  • 115
  • 116
  • 117
  • 118
  • 119
  • 120
  • 121
  • 122

截图

  1. 菜单
    在这里插入图片描述
  2. 连接无线调试
    在这里插入图片描述
  3. 安装 apk 到指定设备
    在这里插入图片描述

参考链接

bat批处理与adb命令的配合
怎样写一句for语句的批处理,用来把一个字符串分割成一个一个的子字符串
批处理中怎么判断一个参数是否被赋值成功
批处理中for中set的问题

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/weixin_40725706/article/detail/517507
推荐阅读
相关标签
  

闽ICP备14008679号