关于Handler和BroadcastReceiver的联合使用:
使用原则:
1. handler是在线程中或者异步任务里发出消息。
handler.sendMessage(handler.obtainMessage(Contanst.DOWNLOADING, processMap)); // Contanst.DOWNLOADINGs是字符串 processMap是携带的数据
或handler.sendMessage(Contanst.DOWNLOADING, processMap); 两种方式。
2.handleMessage()方法更新UI界面。
如果是异步任务方法发出的handler,handleMessage()方法在调用异步任务的构造方法的类中使用。当然异步任务的构造方法里是有handler这个对象的。
如果是在子线程中发出的handler:子线程和界面更新在同一个类里,可以直接handleMessage()来更新界面;若在不同类里,handleMessage()方法在调用子线程的构造方 的法的类中使用。
3.handleMessage()方法里可以更新界面,也可以发送广播出去。