在GDK8的安卓系统中调试Java程序

调试环境:windows 10
1.首先要保证安卓设备已经开机且进入了开发者模式,通过首页的 setting–> Device Preferences–> Aboot–> Build。如下图所见,连续点击build将会触发安卓系统的开发者模式。

2.找到系统中adb的位置,移动到其所在位置输入命令

adb connect <ip>

这里如果你不输入端口号,那么系统默认指定使用5555端口进行连接。

输入命令:

adb jdwp

可显示安卓系统中的java进程的pid

ctrl+c断下来后,输入命令:

adb forward tcp:<port> jdwp:<pid>

port为我们要使用的端口,安卓上一共有6万多个端口,很多都是空闲的,选择一个端口进行连接即可。

3.进行连接,输入命令:

jdb -connect com.sun.jdi.SocketAttach:hostname=localhost,port=<port>

该命令为是Java Debugger(jdb)命令的一部分,用于通过 Socket 连接到正在运行的 Java 进程进行调试。具体而言,该命令使用 com.sun.jdi.SocketAttach 类连接到本地主机(localhost)上的 8000 端口,并启动与目标 Java 进程的调试会话。这种方式通常用于远程调试正在运行的 Java 应用程序。

通过运行该命令,你可以在 jdb 中连接到正在监听 8000 端口的 Java 进程,并开始对其进行调试操作。这样,你就可以使用 jdb 提供的各种调试功能(如断点设置、变量查看和步进执行等)来分析和修复代码中的问题。

需要注意的是,成功运行该命令需要确保目标 Java 进程正在监听指定的 8000 端口,并且已启用了调试模式。此外,你还需要正确配置和安装相应的 JDK(Java Development Kit)以及 jdb 工具。

不过请注意,jdb的功能比较有限,无法对安卓中的Java程序做更高级的调试,如果想做更多操作,如设置断点等操作,还请下载Android进行操作。

作者:施国瑞  创建时间:2023-10-24 15:15
最后编辑:施国瑞  更新时间:2024-03-12 10:45