如何调试广播接收器?

发布于 2024-10-30 23:35:11 字数 173 浏览 6 评论 0原文

通过我的应用程序,我实现了一个由 Android 的一般意图触发的广播接收器。因此该程序没有界面或初始活动。为了调试,我在开发工具中选择了“等待调试器”,它实际上可以工作(我可以调试广播接收器)。 我的问题是 dalvik 在几秒钟后杀死了我的线程(以及整个调试),所以我无法检查或尝试逐步执行我的程序。有人知道如何解决这个问题吗?

With my application i realized a broadcastreceiver fired by a general intent of Android. So the program got no Interface or initial activity. To debug ive selected in the dev tools the "wait for debugger" and it actually works (i can debug the broadcastReceiver).
My problem is that dalvik kills my thread (and the whole debug) after few seconds so im unable to check or try step-to-step my procedures. Anybody knows how to solve this?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

薔薇婲 2024-11-06 23:35:12

在开发者选项中:
选择调试应用程序->你的应用程序
等待调试器

In developer options:
Select debug app -> your app
Wait for debugger

过度放纵 2024-11-06 23:35:12

把你的东西放在另一个线程中:

 public void onReceive(final Context context, Intent intent) {    
    new Thread(new Runnable(){

        @Override
        public void run() {
           Log.i("foo","set me as line breakpoint.");
        }
      }).start();
}

Put your stuff in another thread:

 public void onReceive(final Context context, Intent intent) {    
    new Thread(new Runnable(){

        @Override
        public void run() {
           Log.i("foo","set me as line breakpoint.");
        }
      }).start();
}
贱人配狗天长地久 2024-11-06 23:35:11

您需要您的 BroadcastReceiver 在清单中包含此内容:

android:process=":remote"

将其放入您的 onReceive 方法中:

android.os.Debug.waitForDebugger();

然后运行该项目。之后,单击将调试器附加到 Android 进程并等待您的进程在窗口中显示(它将具有以下名称:your.package.name:remote)< em>选择您的进程,然后单击确定并开始调试。

输入图像描述这里

You need your BroadcastReceiver to have this in the Manifest:

android:process=":remote"

Put this in your onReceive method:

android.os.Debug.waitForDebugger();

Then run the project. After that click on Attach debugger to Android process and wait for your process to show up (it will have this name: your.package.name:remote) in the window Choose your process, then click OK and start debugging.

enter image description here

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文