为什么我要调试应用程序总是出现消息“监视器将关闭以启用ADB集成”?
答案 0 :(得分:0)
很晚但我将答案留作未来参考。当我打开DDMS时,我在android studio中面临同样的问题。我认为这个答案(https://stackoverflow.com/a/9258707/677096)会回复你的问题。
我只想补充一下,该消息告诉您Idea将停止使用它内部用于调试android的集成,因此它将允许您使用DDMS来调试代码。 DDMS是一个外部工具,因此为了使用它进行调试,您需要按照此处的说明配置IDE:http://developer.android.com/tools/debugging/debugging-projects-cmdline.html#start-debugging。
我还没有这样做,但我认为你需要进行远程调试,如下所述:
http://www.jetbrains.com/idea/webhelp/run-debug-configuration-remote.html
答案 1 :(得分:0)
我正在使用Android工作室和我的猜测: 监视器(DDMS)和INTELIJ是冲突的,因为它们都使用adb(android调试桥)。这是因为单个调试器可以连接到单个VM(app)。
DDMS为设备上的每个VM分配一个调试端口。通常情况下, DDMS为第一个可调试VM分配端口8600,在8601上分配下一个端口8600, 等等。当调试器连接到其中一个端口时,所有流量 从关联的VM转发到调试器。你只能 将单个调试器附加到单个端口...
尽管您应该能够使用DDMS提供的端口转发在单个VM(app)上使用多个调试器:
您只能将单个调试器附加到单个端口,但DDMS可以 处理多个附加的调试器。
默认情况下,DDMS还会侦听另一个调试端口DDMS "基地港口" (默认为8700)。基本端口是端口转发器, 它可以接受来自任何调试端口的VM流量并将其转发到 端口8700上的调试器。这允许您将一个调试器连接到 端口8700,并调试设备上的所有VM。那是什么交通 转发由DDMS中当前选定的进程确定 设备视图。
您可以通过简单的调试器连接到DDMS,即jdb(java调试器),通过以下方式确保这是可能的:
jdb -attach localhost:8700
(如果DDMS在8700端口转发)
这就像我所知道的那样。
我无法发布超过2个链接,但引用来自官方Android开发者网站,标题为:
使用DDMS
一些链接: