用python写了个简单安卓ADB调试小工具

2024-03-05 11:31:20 14点赞 67收藏 16评论

前言

本人是小公司测开一枚,平时日常工作会对安卓平台测试,主要场景就是root,重启,查看设备、操作设备的一些基本信息。就想着怎么能用python开发语言将这些功能集合到一个工具上,方便使用。

设计理念

工具整体框架基于python3.10编写,使用tkinter库作为程序主窗口GUI,用pyinstaller库打包.exe包,方便Windows系统直接双击打开使用。对安卓设备进行调试,管理应用,查看adb log,对设备root,remount,截屏,录屏,发送adb命令等,目前自测所有功能均正常,不排除有BUG,有请反馈我,谢谢。

界面截图

主界面-未连接设备时主界面-未连接设备时应用管理菜单应用管理菜单设备管理菜单设备管理菜单日志下载菜单日志下载菜单代码片段1代码片段13800多行代码了已经3800多行代码了已经

使用方法

下载后,直接打开.exe文件,默认会在当前目录生成log、pic、video,3个目录,用于存放日志,截图,录屏文件。

无设备连接时,部分功能按钮不可用,必须安卓设备打开USB调试模式+电脑正确配置ADB环境 可用本工具(不会配置的百度、Google)

具体使用方法见工具内--更多功能_使用帮助

版本记录

20230711 初版产生 后期将以日期为版本号进行命名

Version:20230711

新增了:安装应用,卸载应用,下载日志,重启设备,root设备

20230825

优化了:发送adb命令由弹窗式改为输入式,无设备时异常提示

优化了:界面按钮输入框重新布局600x350

优化了:各种错误提示消息

优化了:所有注释,因为功能多了,注释有点乱

20230912

优化了:发送adb 命令时,输入框内的提示文案

优化了:获取Activity失败时的异常显示

优化了:点击实时日志按钮会打开windows DOS黑窗口

优化了:发送adb命令时,大写转小写后发送

新增了:adb logcat日志实时显示按钮

新增了:下载日志、录屏、截图后自动打开保存的文件夹

20231122

新增了:文件管理中新增monkey测试,翟总定制功能

点击后,自动创建文件夹,自动检查传输,传输完弹出输入框,输入内容后,自动开始测试

优化了:应用卸载时的交互方案,改为:scrolledtext.ScrolledText()

20231124

新增了:支持多设备连接,可选择对某一设备进行操作。

新增了:使用帮助弹窗独立窗口。

优化了:日志输出逻辑。

优化了:程序交互逻辑。

20231208

新增了:设备管理菜单增加获取《电池信息》选项。

新增了:设备管理菜单《设备信息》中增加了开机时间。

20231215

新增了:清除指定应用和全部应用缓存菜单。

新增了:自检按钮,检查日志文件夹和adb环境是否存在。

优化了:下载日志时才创建log文件夹,改为程序启动就创建。

优化了:获取设备的内存和硬盘显示格式。

修复了:获取设备信息异常的。

20231221

修复了:已连接的设备拔出,插入其他设备使用时的报错。

增加自动刷新设备函数,避免adb -s xxxx device not defound。

优化了:log输出更简洁明了。

优化了:log输出窗口无用log自动删除

新增了:Adb环境的检查和工具自检功能,工具自检可以修复默认文件夹被删除后,自动创建功能。

新增了:从安卓设备端拉取文件到电脑端。

20231228

新增了:工具所有操作日志以天为单位保存到log文件。

优化了:博客地址,工具更新,定制菜单的初始化开关配置。

优化了:工具自动刷新检测设备时间改为1分钟,避免日志文件写入大量内容。

优化了:工具自动检测更新功能,如果服务器版本大于本地,自动下载更新运行。

喝了太多的咖啡,休息下,2023年的最后一次更新了。

20240102

2024新年好!

优化了:工具自动更新功能。

新增了:自检时调用1次更新函数。

20240103

优化了:工具自动更新功能。

20240110

由于手残将pyinstaller库升级到最新后,打包出现异常导致生成exe文件在启动后报异常。

上述问题已在20240109修复解决。

新增了:设备管理增加CPU、MEM、DISK、Ping,4个功能。

新增了:应用管理增加保存Apk到电脑和查看Apk包信息,2个功能。

优化了:获取设备信息时和导出bugreport.zip时工具短暂卡顿。

优化了:Log日志类和ADBtool类合并,避免因调用日志模块出现No module xxx。

优化了:工具关键运行代码处,使用多线程处理函数,避免卡顿,影响使用体验。

优化了:卸载应用、结束其他应用、保存Apk到电脑、清除指定应用缓存时,先检测输入的包名是否存在于设备中。

20240201

基本上2个星期会更新1次,特大bug除外

优化了:截图时工具卡顿,使用多线程;

优化了:工作目录全局global;

优化了:工具启动时详细日志输出,方便定位bug;

优化了:输入某些adb命令时的异常;

修复了:录屏结束时、截图、保存日志、拉取文件,未自动高亮;

修复了:截图时,频繁点击截图按钮异常bug;

新增了:启动工具首先检测电脑中ADB环境,如果异常,工具3s后自动关闭;

新增了:工具启动后自检日志输出更详细;

去掉了:电脑adb环境变量自动配置代码;

喝了太多的咖啡,休息下,年前的最后一次更新了;

祝大家龙年大吉,龙凤呈祥!

说明

1、由于安卓系统安全限制原因,对于安卓OS10+ 设备存在录屏截屏失败问题,暂时无解(可使用三方工具录屏截屏,具体百度,google)

2、工具已通过腾讯哈勃病毒分析系统,放心使用,不放心请勿用

https://habo.qq.com/file/showdetail?pk=ADQGbl1qB28IO1s6U2oHYA==
3、闲暇之余开发,能力一般水平有限,勿喷,我会不定期更新维护,谢谢大家!

下载地址

懒揍链接:↓

https://www.lanzoub.com/iGrIt1qdemkh
密码:6ows

作者声明本文无利益相关,欢迎值友理性交流,和谐讨论~

展开 收起
16评论

  • 精彩
  • 最新
  • 拟对电子书做笔记思维导图呈现,用Python爬虫采集的语句,作为思维导图的多层级节点,放入多层级设置的思维导图,最终导出为PDF or word格式,
    具体规律如下:
    把每一个自然段作为父节点,每一段每一句or分号作为子节点。
    or把“一、二、三、”作为爷节点,“(一)(二)(三)”作为父节点,“1、2、3”作为子节点,“(1)(2)(3)”作为孙节点
    可以句号or分号为准,

    so求软件推荐or完整代码(只需替换电子书地址即可实现)

    校验提示文案

    提交
    为什么不把爬虫到的文件直接保存PDF或word格式??

    校验提示文案

    提交
    一、电子书已有,爬虫是为了采集知识点
    二、知识点放在思维导图
    三、知识点按照层级放在思维导图
    so减少整本书大纲式的格式,通过思维导图而提高阅读效率和发散思维
    so求软件推荐or完整代码(只需替换电子书地址即可实现),or有偿受托定做

    校验提示文案

    提交
    收起所有回复
  • 拟用python做策略建模,包括但不限于:策略规则、算法建模:
    一、数据导入
    二、数据预处理(清洗规整、增删改查、数据类型转化)
    三、探索分析(可视自动化)
    四、特征衍生(组合变量批量自动化生成、特征筛选指标评估自动化)
    五、分箱筛选(变量分箱最优自动化)
    六、相关性构建(多类算法聚合:逻辑、回归、分类&机器学习、深度学习、强化学习
    七、检验评测(第六项计算各自的混淆矩阵指标,自动化计算结果)
    八、分数转换
    九、超参调优

    so针对第二至七项,就python及其第三方库(自动化)实操详解的电子书及其代码而言,特跪求大佬推荐。。。非AI或者chatgpt+XX系列,书籍需求具体如下:
    1、小白速成上手、简单易懂
    because:文科转型
    2、行业内公认靠谱,电子书中文版(暂不考虑:单个某库的说明书)
    because:内容忒多繁杂,且无常用算法库的聚合呈现
    3、需要2023年出版
    because:即使按书实操,旧版书均因为其所涉之第三方库的灭失、相同操作而新旧版本不适配、新旧版本变更操作等原因而导致无法实现同等功能)

    校验提示文案

    提交
    认真看了你的需求,你应该是找关于:python数据分析方向的书籍吧

    校验提示文案

    提交
    量化风控的策略规则、算法建模、数据分析、数据预处理:大神2023推荐书籍
    PS:毕竟书籍多如鸿毛,但都2021以前的

    校验提示文案

    提交
    收起所有回复
  • 目,代码什么的都是Ctrl键➕c和Ctrl键➕v=网上现成=能看懂会改参数,但从零到一原创编写的不会
    二,后面有其他大佬建议,原因在于之前囫囵吞枣,应该得回归基础,找几本书看看。。。
    三,目前执行中,但书本看过的内容很快就忘,没啥感觉,对python及其第三库规则or参数还是不甚了解。。。
    四,本人非系统开发方向,非程序员,但需要python做统计分析、数据挖掘、规则策略和算法建模,so应该咋办?求指导

    校验提示文案

    提交
    多看看视频教程,有条件的参加培训班,跟着教程自己多敲

    校验提示文案

    提交
    收起所有回复
  • 批量,pdf文档文章or图片ocr识别且自动重命名,
    给图片型的PDF文档,按照第一行标题,第二行日期,第三行作者做ocr识别
    根据ocr内容给文档重名
    so求软件推荐or完整代码(只需替换电子书or图片地址即可实现)

    校验提示文案

    提交
    简单说下思路:
    1、OCR识别可以用python开源的库,谷歌,微软的,很多...
    2、剩下的就是交给正则匹配你的标题,日期,作者
    3、最后os.rename()重命名
    Done

    校验提示文案

    提交
    收起所有回复
  • 不上github么

    校验提示文案

    提交
    就是自己用用,目前不打算开源 [抽烟]

    校验提示文案

    提交
    收起所有回复
  • 打开直接报错啊?
    Unhandled exception in
    Failed to execute 'A' due to unhandled exception:"AdbTool' object has no attribute 'log text'

    校验提示文案

    提交
    和你一样

    校验提示文案

    提交
    收起所有回复
  • 这个可以给安卓手机卸载自带软件不

    校验提示文案

    提交
  • 大哥 能给个源码不 参考学习下

    校验提示文案

    提交
提示信息

取消
确认
评论举报

相关文章推荐

更多精彩文章
更多精彩文章

张大妈老公公

京都IT狗一枚,数码控,喜欢DIY。

关注 打赏
最新文章 热门文章
67
扫一下,分享更方便,购买更轻松