通过我的应用程序,我意识到广播接收器是由Android的一般意图解雇的。所以程序没有接口或初始活动。要调试我在开发工具中选择的“等待调试器”,它实际上有效(我可以调试broadcastReceiver)。 我的问题是dalvik在几秒钟后杀死我的线程(以及整个调试),所以我无法检查或尝试逐步执行我的程序。有谁知道如何解决这个问题?
答案 0 :(得分:2)
你需要你的BroadcastReceiver
在清单中有这个:
android:process=":remote"
将其放入onReceive
方法:
android.os.Debug.waitForDebugger();
然后运行该项目。之后点击将调试程序附加到Android进程并等待您的进程在窗口中显示(它将具有此名称:your.package.name:remote
)选择您的进程 ,然后单击确定并开始调试。
答案 1 :(得分:1)
在开发者选项中: 选择调试应用 - >你的应用 等待调试器
答案 2 :(得分:-2)
把你的东西放在另一个线程中:
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();
}