ADB应用浅析-普通手机app不依赖电脑如何获取ADB权限

普通手机app不依赖电脑-如何获取ADB权限

--ADB应用浅析

在之前的篇章中,我们花了好多的篇幅在ADB连接的专题上,如

ADB点击实战-做一个自动点广告播放领金币的脚本

app如何跳过录屏的权限和通知栏提示获取屏幕画面

ADB连接专题-跨互联网远程adb连接到手机》等等系列的文章。我们在这些系列的篇章中分门别类的论述了:如何在手机已经开启了tcpip 5555端口的情况下,充分利用Android手机中的ADB指令和功能,实现复杂的扩展功能和应用的能力。

但是这一切,都绕不开一个根本的问题:我们一个普通的手机,如何让它能获取得到ADB权限呢

前面的篇章《ADB点击实战-做一个自动点广告播放领金币的脚本app(下)》文中,我们罗列了常规的、依赖电脑操作的标准方式:

【开发者选项】->【USB调试开关】->【USB的OTG线插到电脑】->【电脑解压platform-tools.rar】->【电脑运行adb.exe tcpip 5555】

通过这几个级联的步骤和操作,开启的手机ADB权限(复杂度其实挺高的)。

这个方式也是绝大多数Android应用开发者和用户使用ADB去操控手机的前提步骤。现在的各种AI手机方案基本也是采用这样的方式来"间接"操控手机屏幕界面和事件操作。

那问题来了,就如我们去年底遇到的情况一样:哪天你出门向你的客户展示你的方案,客户觉得不错,拿出它的手机,让你在它手机上也装一个APP试试。你咋办?要告诉他APP要依赖电脑,要先插电脑上授权一个ADB然后才能工作吗?还是告诉他今天出门你没带电脑,授权不了手机ADB?^V^。

因此,我们回过头来反思:凡是不能在手机本身实现闭环的应用或者方案,都踏马的是垃圾!一个手机应用APP,居然不能独立工作,要依赖其它CPU设备的干预,才能正常跑起来,那不扯蛋呢吗!

后来我们就痛定思痛,在Android手机ADB授权的基础上,弄出了"普通手机app不依赖电脑-直接获取ADB权限"的方案和能力,也即本篇内容的由来。

经过此步骤的安卓手机,不再需要插入电脑进行ADB授权,也可正常在手机内部独立完成手机的ADB授权操作。哪怕是手机重启或恢复了出厂设置的Android,均可完整的实现手机ADB的授权。

体验和下载地址:

ADB无线调试-测试App: http://120.78.211.195:8060/adbtest.apk

或 智能拨号器App: http://120.78.211.195:8060/Dialer.apk

  • 二、APP操作测试界面

当前的测试APP共有以下的三大依赖项(需要在应用操作过程中手动授权允许):

1、依赖百度飞桨的paddle-lite的OCR识别(测试APP自带)

2、依赖手机开发者选项中的【无线调试】的入口(参考下章节的步骤手动操作)

3、依赖Android默认MediaProjection的录制屏幕的能力(需手动授权)。

测试APP界面上只有两个按钮和顶部的状态进度文字显示区域,如下图所示:

通常只需要按下第一个按钮【申请录制屏幕权限】,即可正常的加载ocr识别库和模型、弹出录屏的授权提示框,并自动跳转到手机的"开发者选项",自动完成级联操作。

申请录屏权限后,手机会弹出录屏的授权提示框,如下图所示:

此时部分手机需要选择"共享整个屏幕"的选项,再点击确定按钮,即可允许应用APP对整个手机进行屏幕画面的提取。

授权了手机录屏权限后,测试APP自动跳转到Android手机的【开发者选项】的界面。

  • 三、手机无线调试的操作入口

一般的手机,如果该手机之前从未开启过【开发者选项】,就需要进"关于手机"中,狂点某个条目(如下图左侧的版本号),开启手机的开发者模式。如果手机已开启过【开发者模式】的,在上面录屏授权后会直接跳转到【开发者选项】的界面。

在开发者选项中,点击【无线调试】的条目,进入无线调试的配置界面(不用开启USB调试,开不开都可以),如下图右侧所示:

无线调试的界面中,用户需要手动打开"无线调试"的开关,然后手动点击【使用配对码配对设备】。让它弹出如下图那样具有"WLAN配对码"(通常是6位数字)内容的弹窗界面,如下图所示:

至此就可以了,耐心的等待弹窗消失。测试APP在前面授权了录制屏幕的权限后,就一直会捕获手机屏幕的画面,当测试APP从当前界面中识别出有"无线调试配对--配对码和连接IP地址端口"后,会自动进行配对和连接。连接成功后当前弹出的【与设备配对】界面会自动消失。当这个配对码弹窗消失了,说明测试APP已完成预期的【普通手机app不依赖电脑-直接获取ADB权限】的功能。

这个过程是很快的(约2~5秒左右),假设如果等待10秒,配对弹窗仍未消失,用户不放心的可以点击"取消"按钮,再次点击【使用配对码配对设备】条目,重新弹出配对弹窗等待测试APP主动读取识别即可。通常不需要这样操作都能直接快速的完成配对。

  • 四、ADB无线调试-测试App的配对和连接过程

如果读者对技术有求知欲,并且可以查看测试APP的Logcat日志,可以在日志中过滤"com.ade.adbtest"字样,就可以很清晰的看到测试APP的录屏和OCR识别的经过,如下图所示:

从图中的日志信息,我们可以很容易的看出当前配对成功的手机WLAN的IP地址、配对端口、配对码,以及手机无线调试的连接端口。测试APP就使用这4个属性的值,来独立完成手机的ADB授权操作。

  • 五、总结

我们前面一直依赖电脑来给Android做ADB授权操作,对于一个手机应用APP和用户而言,确实是很不方便的。这个问题也困扰了我们好久。

得益于GitHub上的开源方案和思路,以及DeepSeek强大的编程能力,我们通过各种方案和思路的尝试,最终还是搞定了这个课题。实现了手机本身就可以实现【对应用APP做adb的授权】,从此不再依赖电脑做adb授权

我们前期在互联网上,并没有看到有人做过此类尝试,至少截至目前,方案具备足够的先进性,我们也算是这个方向开拓的先驱^V^。

感兴趣的朋友可以自行下载测试APP,试用和体验一下手机无线调试配对和ADB连接授权的效果。本文的探索方向和思路,对Android手机操控和应用,也具有一定的实践意义。

相关推荐
流星白龙7 小时前
【MySQL高阶】7.MySQL日志
数据库·mysql·adb
流星白龙7 小时前
【MySQL高阶】0.MySQL的安装
数据库·mysql·adb
aaajj8 小时前
【Android】手机屏幕劫持防护
android·智能手机
玫幽倩9 小时前
2025FIC取证决赛wp(手机取证)
python·智能手机·手机·电子取证·计算机取证·手机取证·fic
流星白龙9 小时前
【MySQL高阶】6.MySQL数据目录,日志
android·mysql·adb
流星白龙10 小时前
【MySQL高阶】2.MySQL命令行客户端(2)
android·mysql·adb
流星白龙10 小时前
【MySQL高阶】5.MySQL服务器简介
服务器·mysql·adb
流星白龙10 小时前
【MySQL高阶】9.在一台机器上运行多个MySQL实例
数据库·mysql·adb
x-cmd11 小时前
[260531] OpenClaw 五月月报:模型接入大爆发、安全重构、手机端终于能当主控台用了 [特殊字符]
安全·ai·智能手机·重构·x-cmd·openclaw
流星白龙12 小时前
【MySQL高阶】8.MySQL系统库
android·mysql·adb