使用adb shell测试的批处理文件编写

  • 以实现N7000R自动拍照为例

方法一:

@echo off
set i=1
echo open Camera
adb shell am start -n "com.android.gallery3d/com.android.camera.CameraLauncher"
:CLICK
::延时2秒
ping 127.0.0.1 -n 2 >nul
echo click %i%...,take photo
::点击坐标为460,1200的拍照按钮,休眠1秒
adb shell input tap 460 1200
adb shell sleep 1
set /a i=i+1
echo %i%
::无限循环直接goto CLICK
::goto CLICK
if %i% lss 10 goto CLICK

方法二:

@echo off
::设置循环次数
set a=10
::打开相机
echo open Camera
adb shell am start -n "com.android.gallery3d/com.android.camera.CameraLauncher"
for  /l %%i in (1 1 %a%) do (
echo click %%i,take photo
adb shell input tap 460 1200
::延时2秒
ping 127.0.0.1 -n 2 >nul
)
pause

dos批处理循环命令
  格式:FOR [参数] %%变量名 IN (相关文件或命令)   DO 执行的命令
  作用:对一个或一组文件,字符串或命令结果中的每一个对象执行特定命令,达到我们想要的结果。
  注意:在批处理文件中使用 FOR 命令时,指定变量请使用 %%variable,而不要用 %variable。变量名称是区分大小写的,所以 %i 不同于 %I.
  关于:for命令可以带参数或不带参数,带参数时支持以下参数:/d /l /r /f

详细用法见:https://blog.csdn.net/fool2009/article/details/52265966

  参数 /L (该集表示以增量形式从开始到结束的一个数字序列。可以使用负的 Step)

  格式:FOR /L %variable IN (start,step,end) DO command [command-parameters]
  该集表示以增量形式从开始到结束的一个数字序列。可以使用负的 Step

  示例:
  for /l %%i in (1,1,5) do @echo %%i --输出1 2 3 4 5
  for /l %%i in (1,2,10) do @echo %%i --输出1,3,5,7,9 
  for /l %%i in (100,-20,1) do @echo %%i --输出100,80,60,40,20
  for /l %%i in (1,1,5) do start cmd --打开5个CMD窗口
  for /l %%i in (1,1,5) do md %%i --建立从1~5共5个文件夹
  for /l %%i in (1,1,5) do rd /q %%i --删除从1~5共5个文件夹

  • 休眠解锁唤醒设备:
@echo off
set a=2
for /l %%i in (1 1 %a%) do (
echo the %%i time test start!!
adb shell input keyevent 26
adb shell input swipe 370 1250 370 200 1000
adb shell sleep 3
adb shell input keyevent 26
adb shell sleep 3
echothe %%i time test end!!
)

猜你喜欢

转载自www.cnblogs.com/zf612326/p/9542641.html