如下所示,我创建了两个扩展Handler
的内部类。我已经阅读了Android源文件中的代码,发现Handler.sendEmptyMessage()
只将消息排入Looper
的消息队列中。
public class MainActivity extends Activity{
private Handler handler = new Handler(Looper.getMainLooper()){
public void handleMessage(Message msg){
//handle method1
}
}
......
}
public class MyService extends Service{
private Handler handler = new Handler(Looper.getMainLooper());
public void test(){
handler.sendEmptyMessage(0x00);
}
......
}
所以,我很困惑为什么Handler
中的第一个MainActivity
无法处理来自Handler
中第二个MyService
的消息,当使用相同的循环器构建时? / p>
答案 0 :(得分:0)
您无法在处理程序之间进行通信,每个处理程序都有自己的消息队列 - 如下所示:
Handlers initialized with Looper.getMainLooper() does not respond to message callbacks