QtAdb/README.md
Lappland Saluzzo d90c8d1928 修改readme
2023-06-17 21:08:43 +08:00

220 lines
9.3 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<div align=center><img src="https://blog-lappland.oss-cn-hangzhou.aliyuncs.com/logo-256.png"></div>
# QtAdb
QtAdb 是一个基于 [Qt](https://www.qt.io/) 的 Android 工具集合。
[官方网站](https://lapplandsp.github.io/QtAdb-Pages/)
## 🧑‍💻开发目的
[Android 调试桥 (adb)](https://developer.android.google.cn/studio/command-line/adb?hl=zh-cn) 是一种功能多样的命令行工具可让开发者与设备之间进行通信。adb 命令可用于执行各种设备操作(例如安装和调试应用),并提供对 Unix shell可用来在设备上运行各种命令的访问权限。
Android 系统的可玩性在 adb 的加成下变得更加丰富由此涌现出众多的命令用法。非开发者的Android 爱好者经常根据需求运行 adb 命令以提升使用体验。
但由于 adb 涉及到环境配置、终端执行等操作,对于不会使用的人可能造成困扰;一些命令行参数的记忆对于并不熟悉的人来说同样令人头疼。所以可供一键式操作,并且已内置环境的图形窗口有一定需求。
## 🔩特性
- QtAdb 已**内置 adb 环境**,并可在运行时自行配置,使用者无需关心环境变量的配置情况。封装命令的具体内容将在后文说明。
- 支持 Windows 11 中的 Android 子系统(**WSA**)。*仅可在 WSA 运行时连接 WSA。
- 支持 Android R (11) 及以上版本的**无线调试**。
- 提供命令模板,使用者可直接复制命令并自行执行。
- 支持多种状态显示及使用开机、Recovery及 adb sideload.
*注意QtAdb 暂不支持比 Windows10 更早的 Windows 系统*
## 🛠️功能
### ℹ️设备信息
- 获取设备型号、屏幕分辨率、屏幕密度DPI、Android Id、安卓版本以及处理器型号的信息
- 修改 DPI、修改屏幕分辨率
- 实时监控CPU使用率、内存使用率。
### ✔️激活
- 提供主流工具应用的激活:[黑阈](https://brevent.jianyv.com/)、[冰箱](https://iceboxdoc.catchingnow.com/)、[小黑屋](https://stopapp.https.gs/)、[Shizuku](https://shizuku.rikka.app/zh-hans/)、*黑洞*、[太极](https://taichi.cool/)、[Island](https://island.oasisfeng.com/)、Scene、[看帧数+](https://www.coolapk.com/apk/com.watchfps)、[权限狗](https://www.coolapk.com/apk/com.web1n.permissiondog)、[雹](https://github.com/aistra0528/Hail)、[安装狮](https://www.coolapk.com/apk/com.modosa.apkinstaller)、[Dhizuku](https://github.com/iamr0s/Dhizuku)
- 为应用授予其所需的权限BatteryGuru使用情况访问、修改安全系统设置、读取DUMP
- 更多应用正在添加中。
### 🎮设备控制
- 电源控制:
- 关机
- 重启到系统
- 重启到 Recovery
- 重启到 Fastboot
- 按键模拟:
- 系统导航:返回键、主页键、菜单键、任务键
- 实体按键:电源键、音量 + 、音量 - 、静音、拍照(处于相机应用中时)、唤起助理应用
- 媒体控制:播放音乐、停止播放、上一曲、继续、暂停、下一曲
- 其他指令:亮度 - 、亮度 + 、系统休眠、点亮屏幕、挂断电话
- 拉起系统应用:设置、通讯录、拨号、浏览器、音乐、日历、计算器
- 命令行:
- 运行自定义的 adb 命令
- 直接在 adb 环境中打开命令行窗口
### 📦软件包管理器:
- 安装应用
- 列出已知的权限
- 可单独打开大窗口查看列表
- 可按以下要求输出:
- 按权限组进行整理
- 输出所有信息
- 输出简短摘要
- 仅列出危险权限
- 仅列出用户将看到的权限
- 列出已知的权限组
- 列出软件包
- 卸载、停用、启用、清除数据
- 获取软件包包名、安装者、关联文件等信息
- 列出系统的所有功能
- 列出当前设备支持的所有库
- 用户
- 列出当前设备中的所有用户
- 删除选中用户
### 🔧Recovery 功能:
- 侧载
- 当设备处于 adb sideload 模式时可使用侧载刷入zip刷机包
- **这是危险功能,即使正确地使用也可能导致设备故障,请确保您有足够的排障能力后使用**
- **使用侧载功能时请不要关闭程序**
### 🔮其它功能
- 账户
- 查看设备中各个用户已登录的账户
- 去除叹号
- 修改验证服务器提供了多个预设选项MIUI、EMUI等国内验证服务器
- 修改过渡动画
- 修改动画时长
- 修改过渡动画
- 修改窗口动画
- 状态栏与导航栏
- 隐藏状态栏图标:静音/震动、定位、麦克风、录屏状态、WIFI、热点、飞行模式、耳机、闹钟、蓝牙、NFC
- 重置状态栏图标
- 全局隐藏状态栏、导航栏
- 修改系统震感强度
### *🍘饼*
> Q为什么刷机相关命令这么少为什么没有修改系统文件衍生的玩法
>
> A危险性较高防小白。不过也不是不能加。
- 跨平台
- 文件管理
- 集成scrcpy
- 命令
- 更改屏幕边距
- ~~获取 Google 服务框架ID~~
- 控制台
- 优化 err 处理
## 💕Q&A
- **Q还有其它名为 QtAdb 的项目/软件,此项目与它们是什么关系?**
A我写这篇文档时才发现已经有好多个 QtAdb了这也没有办法只能将错就错了😔。此前的几个项目有比本项目功能更丰富的也有功能专一且强大的但他们都已停更许久。在未来可能会参考这几个项目不过目前并没有这样做~~看不懂而且没时间~~)。
- **Q不是有环境吗怎么还是跑不了🥺**
A您下载的是压缩包请全部解压后再使用请确保您的设备已打开USB调试并正确连接。
- **Q我已经解压仍然无法使用**
A部分 ADB 工具,如秋之盒、搞机工具箱等在退出后不会杀死其拉起的 ADB 服务端QtADB异常退出后也可能来不及杀死 adb 进程,请进入任务管理器中结束 “adb.exe” 进程后重试,若仍无法使用请尝试重新启动系统。
- **Q怎么这么多类似乱码的报错😱**
A我已经尽可能让它减少报错了若弹出的“未知错误”对话框中的报错无法构成一个完整的句子那么您可以根据它的内容视情况忽略它并查看另一条报错。
> Tips使用 Qt 所封装的进程类在获取 adb 输出的错误时,有时会将一条错误随机分成多段错误处理,而每一段错误将被报告为一条单独的错误。所以程序用于识别报错类型所需的关键字信息可能只在其中一条错误中,甚至可能被拦腰斩断,分散在两条报错中,此时 QtAdb 将无法分辨这些不包含关键字的信息,从而弹出“未知错误”对话框,并显示这些错误。这个问题目前没有找到彻底的解决办法。
- **Q应用无法安装🙁**
A请排查您是否为降级安装、在不兼容的安卓版本上安装等等请根据报错内容结合搜索引擎自行判断。
- **Q侧载未响应**
A侧载与应用安装类似功能暂未完全实现为不稳定功能。若侧载压缩包过大将会导致主界面阻塞时间过长请不要进行操作具体以 recovery 输出为准。**请具备一定容错能力后再使用。**
- **Q按键模拟不生效🤨**
A此功能因设备而异部分ROM中并没有提供相关功能比如播放音乐、拉起计算器等。若弹出错误提示可以进行反馈。
- **Q连接无线调试卡死**
A需要分情况讨论若更换另一部手机可以连接则可能是手机端 ROM 出现问题请重启并尝试再次连接若设备没有问题则可能是路由器出现问题请更换其它WI-FI网络再尝试。
- **Q无法连接WSA**
A请确保 **WSA 已安装并正在运行**:仅仅安装完成是不够的,还需要在开始菜单中打开 “适用于 Android^TM^ 的 Windows 子系统设置” 应用,选择 “开发人员” ,并打开 “开发人员模式”。在此之后,你可能还需要选择“系统” ,打开 “文件” 以确保 WSA 正在运行中。
- **Q闪退**
A请提交反馈并描述发生闪退之前您进行的操作谢谢
- **Q我可以催更吗**🥺
A~~你可以请我喝可乐吗🥺~~当然可以催更,它现在仍处于开发中,并没有正式发布,仍需要长时间的调试。
## 🙋反馈
若您对代码有优化建议,或是有新的命令用法想要添加,请直接提交 issue
若您有想要添加的可激活的应用,请告诉我它的命令,最好带上该应用的文档/官网,提交 issue 或联系我。
十分感谢你的建议!
## 🧬资源
### 图标
- 主要:[RemixIcon](https://github.com/Remix-Design/RemixIcon)
- 补充:[IconPark](https://github.com/bytedance/IconPark)
### 字体
- [lxgw/LxgwWenKai-Lite: The lite edition of LXGW WenKai. (github.com)](https://github.com/lxgw/LxgwWenKai-Lite)
## 构建
- 建议使用 Qt 6.2.4 版本Kit 请选择 MinGW 。
- 运行环境将在 mainwindow 类构造时被更改至 ./Resources/platform-tools 请确保 debug 或 release 时Resources文件夹位于正确的位置。
## 🤙联系
- Github@[LapplandSp](https://github.com/LapplandSP)
- 邮箱DXLin666@outlook.com
- Telegram@[LapplandSP](https://t.me/LapplandSP)
- QQ频道 [点击加入](https://pd.qq.com/s/k96ej1)
- QQ群860105291