Android adb脚本文件神器

Posted 峥嵘life

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android adb脚本文件神器相关的知识,希望对你有一定的参考价值。

android adb脚本文件神器

本文介绍一个adb脚本神器,建议经常使用到Android脚本文件的收藏一下。

adb是啥,我就不多说了,就是Android Debug调试工具。

文章目录

一、adb 脚本文件内容

新建一个文件命名为xxx.bat
xxx为要在在cmd窗口中执行的命令,

bat文件的内容,如下:

@echo off
echo config %0
echo config file name %~n0
for %%i in (%0) do (set "name=%%~ni")
echo cmd: %name% :
%name%
pause

上面echo是窗口提示的内容,真正的代码只有两行。
有需要的可以进行窗口的提升优化,或者内容优化。

双击执行bat神器文件效果如下:


可以看到实现了:不用编辑文件里面的内容,修改文件名称即可执行命令。

好处:快捷,方便,并且永久性保存,备忘

比如已经有了adb reboot.bat,那么Crtl+c复制一份,修改复制的文件修改文件名称,双击就可以执行你的命令
节省了打开cmd窗口,后续如果要经常执行,后面只要双击就可以执行,非常方便。

二、adb 脚本文件适用的部分示例

adb基本命令

adb reboot
adb root
adb remount
adb kill-server
adb device
adb connect 192.168.XXX.XX 

这里只列举简单的一些,上面的命令也比较简单,不做介绍。

adb shell基本命令

//清除日志缓存
adb shell logcat -c 
//设置日志缓存大小为100M
adb shell logcat -G 100m
//获取系统内所有的prop属性
adb shell getprop
//查看网络节点数据
adb shell ifconfig

//获取系统settings数据
感觉这个还是比较有用的,避免大量重复的输入,也避免有时候记不住的情况

//获取有线网络的开关
adb shell settings get global ethernet_on
//获取有线网络的状态,2关,3开;有的设备没有这个属性
adb shell settings put global ethernet_on 2
//获取系统休眠时间
adb shell settings get system  screen_off_timeout
//设置系统休眠时间,永久
adb shell settings put system  screen_off_timeout 2147483647
//查询锁屏状态知否显示通知
adb shell settings get secure lock_screen_show_notifications
//设置锁屏状态知否显示通知
adb shell settings put secure lock_screen_show_notifications false
。。。

获取settings属性还有比较有用的,而且有的属性不太好记住,使用了这个脚本可以永久记忆,或者简单替换。

之前写的一篇Android属性设置和获取解析的文章,有兴趣可以看看:
https://blog.csdn.net/wenzhi20102321/article/details/120029551

adb shell dumpsys 系类

//查看某个应用包名的所有信息
adb shell dumpsys package com.XXX
//查看系统内存使用情况
adb shell dumpsys meminfo
//查看网络连接情况
adb shell  dumpsys connectivity 
//查看当前顶端Activity的信息
adb shell dumpsys activity top

。。。很多的,这里就不一一列举了

app控制

//停止某个应用
adb shell am force-stop com.XXX
//安装某个应用
adb install xxx.apk //xxx.apk必现是要在脚本同一个目录
//删除某个应用
adb uninstall com.xxx

//手机控制系列
home
adb shell input keyevent 3
//输入12345678
adb shell input text 12345678
//删除一个输入的字符
adb shell input keyevent 67
//返回按键
adb shell input keyevent 4
//确定
adb shell input keyevent 23
//静音
adb shell input keyevent 164
//增加音量
adb shell input keyevent 24
//减少音量
adb shell input keyevent 25
//向上移动
adb shell input keyevent 19
//向下移动
adb shell input keyevent 20

删除应用,停止应用,这两个功能也是经常在调试应用中会有用到
有时候可以结合adb shell dumpsys activity top,
就可以知道当前最顶端的应用界面信息,获取到对应的应用包名。

adb命令还是蛮多,有需要的自己看看,学学吧。
有经常用到的可以使用这个adb神器把他用上,非常方便。

之前也写了不是相关的文章,有兴趣的可以看看:
adb简介及常用命令总结:
https://blog.csdn.net/wenzhi20102321/article/details/113487927

Android adb查看网络连接情况:
https://blog.csdn.net/wenzhi20102321/article/details/122161589

使用adb logcat命令显示Android设备上的Log日志
https://blog.csdn.net/wenzhi20102321/article/details/81058196
上面这个文章阅读有19万,我也很意外。

下面这个是后面写的,总结得简洁一些:
Android 日志获取总结
https://blog.csdn.net/wenzhi20102321/article/details/81058196

三、其他

优点就不必重复所了,无法是高效便捷。

但是也是有一些缺点的,就是有些命令无法直接输入
因为Windows的文件名称不能包含*?/|、
所以不能执行一些过滤命令或者push文件的命令,这个是很遗憾的。
后续如果有人可以更新,增强这个脚本文件,我是非常感谢的

毕竟不是专门开发这个的,都是现学的,目前在Window10 、Window 11测试是ok的。

优化思路可以参考:

比如正常命令:
adb push D:\\temp\\test.txt /sdcard/
使用替换命令:
adb push D~(temp(test.txt )sdcard)

在bat文件里面遍历替换,:替换成~,(替换成\\(,)替换成/

查看最上层窗口Activity正常命令:
adb shell dumpsys window | grep mFocu
使用替换命令:
adb shell dumpsys window ! grep mFocu
在bat文件里面遍历替换,! 替换成 |

总的来说好处还是大大有的,Android开发建议收藏。

共勉:多学习。

以上是关于Android adb脚本文件神器的主要内容,如果未能解决你的问题,请参考以下文章

Android关于Groovy脚本执行ADB命令

Android关于Groovy脚本执行ADB命令

通过 ADB 以 root 身份启动脚本

使用ADB命令写Android自动化测试脚本

bat脚本--android adb一键截图

autojs没有apk开不了adb永久无障碍