關於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()方法裏可以更新界面,也可以發送廣播出去。