我一直在研究一个项目,当我在android studio中运行项目时,它运行正常,当我在调试模式下运行时,它运行正常。
突然间,当我尝试正常运行项目时,它会在设备上弹出,等待调试器
在logcat中我得到了这个:
02-07 10:38:46.444 3968-3968/com.geog.test D/dalvikvm﹕ Late-enabling CheckJNI
02-07 10:38:46.784 3968-3968/com.geog.test W/ActivityThread﹕ Application com.geog.visitdub is waiting for the debugger on port 8100...
02-07 10:38:46.804 3968-3968/com.geog.test I/System.out﹕ Sending WAIT chunk
它不会再进一步了。我不知道为什么会发生这种情况,清单中没有调试命令,我已经杀死了adb并重新启动,就像我在android studio中所做的那样。
这是一个真正的痛苦,因为我无法通过调试模式运行应用程序。如果有人有任何想法,我想听听他们
由于
答案 0 :(得分:38)
重新启动Android设备,并检查java类中是否应该有任何断点。
答案 1 :(得分:3)
以上建议对我来说太具有侵略性,所以我再挖掘一下。以下解决方案适用于android studio:
答案 2 :(得分:3)
在我的情况下,有一个AsyncTask
doInBackground()
方法名为android.os.Debug.waitForDebugger()
,即使在运行模式下也会被提取。禁用该行修复它。重启设备没有帮助。
答案 3 :(得分:1)
试试这个,一直工作:
1 - 关闭Android Studio和您已打开的任何其他IDE(也许您还运行了Eclipse?)和模拟器实例;
2 - 从PC上拔下USB线,如果使用手机,请重新启动手机;
3 - 从控制台运行adb kill-server;
4 - 打开Android Studio;
5 - 点击run / debug;
6 - 当出现选择设备的窗口时,将设备连接到USB和USB连接到计算机;
答案 4 :(得分:1)
在我的情况下,这是我添加了android.os.Debug.waitForDebugger()的服务。该服务是在一个单独的过程中通过在清单中定义android:process =":sepprocess&#34 ;;删除此行后(使服务与主活动处于同一进程中),调试开始在服务中工作,我没有遇到
I/System.out﹕ Sending WAIT chunk
了。
答案 5 :(得分:1)
首先使用ctrl + shift + F8 for windows或mac cmd + shift + F8清除项目中的所有断点。重启你的Android设备。然后运行
答案 6 :(得分:0)
就我而言,有多个调试器。我在我的应用程序中运行了本机代码。
我通过选择Runger&Process; Attach Debugger to Process
来清除它答案 7 :(得分:0)
我删除了模拟器并重新创建。它对我有用。