Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/eclipse/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
android调试器不会在断点处停止_Android_Eclipse_Android Studio_Debugging - Fatal编程技术网

android调试器不会在断点处停止

android调试器不会在断点处停止,android,eclipse,android-studio,debugging,Android,Eclipse,Android Studio,Debugging,我在控制台中看到调试语句,但调试器不会在任何断点上停止。我尝试清除所有断点并将它们重新添加到中。不确定这是如何发生的,但确实如此。您是否在AndroidManifest中设置了可调试标志? 如果您没有注意到这一点,请在应用程序标记中添加android:debuggable=“true”。 最后应该是这样的: <application android:icon="@drawable/icon" android:label="@string/app_name" android:debuggab

我在控制台中看到调试语句,但调试器不会在任何断点上停止。我尝试清除所有断点并将它们重新添加到中。不确定这是如何发生的,但确实如此。

您是否在AndroidManifest中设置了可调试标志? 如果您没有注意到这一点,请在应用程序标记中添加android:debuggable=“true”。 最后应该是这样的:

<application android:icon="@drawable/icon" android:label="@string/app_name" android:debuggable="true">

我遇到了同样的问题,并通过增加调试器超时值解决了它。 仿真器的速度很慢,就像我的开发设备上的狗一样慢,这就是阻止调试器捕捉并停止断点的原因。 我分别将超时值从3000更改为10000,从20000更改为60000,现在一切正常

V.

您是否执行了“作为-->Android应用程序调试”而不是“作为运行”


只有当您执行“调试为”时,eclipse才会在断点处停止。

如果您使用Android studio,请单击
调试应用程序
,而不是
运行应用程序

对于Android Studio:
  • 检查是否错误地启用了禁用断点选项。图标如下所示:

对于Eclipse:
  • 检查选项“跳过所有断点””是否错误启用。它是以下工具栏上的最后一个图标

在我的例子中,单击“将调试器附加到Android进程”

它会显示一个窗口,上面写着“选择过程” 选择正在使用的设备,然后选择要调试的项目。它是有效的

有时,当您第一次打开调试器时,调试器需要重新连接到设备。

根据,在
build.gradle
中,对于您的应用程序模块,禁用构建变量的minifyEnable并将其更改为false。那么应该是:

minifyEnabled false
否则,当您将鼠标悬停在断点标记上时,您将看到xxxx类中不可用的
行号
,这些行号上会有一个叉号

对我有效的解决方案:
  • 只需从设备上卸载应用程序(在设备上手动),然后再次尝试调试(!)

在我的例子中,应用程序使用AndroidManifest中的
android:process=“:service”
创建了一个具有不同进程的服务。因此,当调试器自动连接到主应用程序进程时,我在服务进程代码中设置断点。我真是太蠢了,但这可能会帮助别人

您可以使用
Run>将调试器附加到Android进程
附加到服务进程,然后选择服务进程。您可能需要添加
android.os.Debug.waitForDebugger()添加到服务流程代码


据我所知,在运行之前无法自动告诉Android Studio或IntelliJ附加到不同的进程。

如果您在
build.gradle
中添加了一些
构建类型
,请检查是否为
可调试的true

buildTypes {
    debug {
        debuggable true
        minifyEnabled false
        proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
    } 

    release {
        minifyEnabled true
        proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
    }
}

我遇到了这个问题,我清理build.gradle中的buildTypes部分
试试age,让它对我有用。

在我的情况下,它不会有帮助:-(@Wooff你应该把它作为一个单独的答案发布。)@Wooff好像我的开发文件夹里没有足够的文件。你是说我需要另一个“调试”文件夹吗。我认为Linux将是一个更易于维护的解决方案。Android Studio不再支持此标志。@bhunubaba是的,重新安装Eclipse。较弱的解决方案是:工作区清理(删除所有eclipse文件并从生成的项目中导入;清理项目,重新启动eclipse。您在哪里设置调试器超时值?我想我和您有相同的问题,因为当我在物理设备上调试时,调试器捕捉到每个断点,但在我在emu上调试时,通常无法捕捉到我设置的第一个断点。)lator.-SarahSilly me!+1.这应该是公认的答案。Android studio警告您不要将
Android:debuggable=“true”
放在公认答案中建议的应用程序清单中。在Android studio中,在哪里可以找到此选项?在Android studio中,“静音断点”选项出现在调试视图中。请检查我编辑过的答案。我的解决方案是重新安装Eclipse。可能较弱的解决方案是:工作区清理(删除所有Eclipse文件并从结果项目导入;清理项目,重新启动Eclipse。做起来再简单不过了=)谢谢!很好!没错!在新手机上我试过运行然后调试。在那个之后断点停止工作。在从手机上卸载应用程序并重新运行调试模式后,断点重新开始工作。我终于找到了使用安卓Studio解决我最糟糕噩梦的最终解决方案!我已经使用安卓Studio多年了,从来没有这样做过s、 不知道发生了什么变化,但我只是尝试卸载它,它成功了!谢谢!我要补充的是,我在悬停断点时没有看到提到的消息。非工作断点上缺少一个小复选标记,基本上留下了一个纯红色的圆圈,而工作断点有这个复选标记。