服务中的断点无法正常工作

Ryn*_*rdt 5 eclipse debugging service android breakpoints

我试图将断点添加到在单独的线程上运行的服务.无论我在哪里将断点放在服务中,它们总是被忽略.

我确信该服务正在运行,因为我Log.e在logcat中看到了.我的调试模式也正确用作应用程序主线程中的任何断点.

我错过了什么吗?单独线程中的服务不支持调试模式吗?

我刚刚将Eclipse和Android SDK工具更新到了今天的最新版本.

我在设备上测试我的应用程序.

Ryn*_*rdt 20

这样android.os.Debug.waitForDebugger()做了.在要调试的代码行之前添加它.

  • 警告 - 请勿将其保留在生产代码中.如果您运行服务并且未附加真正的调试器,则此行之后的任何代码都不会执行. (2认同)
  • 将它包装在一个 `if (BuildConfig.DEBUG == true)` 中 (2认同)

Gal*_*Rom 5

确保使用android:process属性在清单的service标签中声明包名称,例如:

<service android:name=".YourCoolService"
            android:process="your.package.here"/>
Run Code Online (Sandbox Code Playgroud)