【发布时间】:2016-03-25 01:00:37
【问题描述】:
如果 Android Studio 正在我的开发机器上运行,当我使用以下命令从命令行在设备上启动应用程序时:
$ adb shell am start -D -n -a ...
Android Studio 会立即将本地主机上的一个端口(8600 及以上)转发到应用的 jdwp 端口,以便 Android Studio 中的调试器可以在必要时调试应用。
现在,如果我想使用第 3 方调试器(而不是 Android Studio 中的调试器)来调试应用程序,我需要将该调试器连接到由 Android Studio 转发到该应用程序的端口,以让调试工作。
我的问题:如何确定该端口是什么?
以下是我尝试过的几件事(无济于事):
-
$ adb forward --list
唉,Android Studio 完成的转发没有显示出来。
-
$ adb forward tcp:9010 jdwp:
调试器连接到 9010 失败,可能是因为 jdwp 端口已经被 Android Studio 的端口转发锁定了。
我可以打开 DDMS 并查看分配给应用程序的端口。但我需要的是一个 API 或文本输出,以便我可以通过编程方式获取该信息?
您的见解将不胜感激。
【问题讨论】:
标签: debugging android-studio adb portforwarding ddms