???????Windows??????????????Windows??????????????????????????????????????Android??贸?????????????????????????????????????????????????慰???Windows????????????????Android????????????????????Android???Looper??Handler????????????????Android???????????????(????????????????????????泻???????)????????????????Android?????????????

????Android????Looper?????????????????泻??????????????????慰?Looper????? ???????Loop.myLooper()??????????Looper???????Loop.getMainLooper()???????????????????Looper????

?????????Android??????????泻??????????????????????????????????(?????????????)?????????泻??????????(Looper)???????????????????????????????锌???????????????????????????????????????????????????械??????????????????????泻??????????????????????????Looper.prepare()????????????校???????Looper.loop()???????????????????????

????-----------------------------------------------------------------------

????class LooperThread extends Thread {

????public Handler mHandler;

????public void run() {

????Looper.prepare();

????mHandler = new Handler() {

????public void handleMessage(Message msg) {

????// process incoming messages here

????}

????};

????Looper.loop();

????}

????}

????----------------------------------------------------------------------------------------------------

??????????????????????????????????Handler?薪???????????

????Activity?????UI????????????????校?Android??????????????Activity?????????????泻???????(Looper)??????????慰?ActivityThread.java?????

????Handler?????????????????????(Looper)????????校????????????????????械??????????Handler??????????????Looper????????????????????????Looper??????????????慰?Looper?????

????Activity??Looper??Handler????????????:

???????Activity?锌???????????????????????????????????些???????????????????????Activity?????????????校???????????????????写?????????????????????????2?????????Android???械?weget????????????????????????????????Android??????????Android????????????????????谩?

?????????????????????????????????????????????????????Handle??????Handler????????????Looper?????????????Handler??sendMessage???????????????????卸????????????????????小??????????Handler??????械????handler??handleMessage??????????????

???????????婕�????????????????慰??????????????Handler????????????

????1?????????MyHandler?????

????2????MyHandler.java?屑??????渭????

????package com.simon;

????import android.app.Activity;

????import android.os.Bundle;

????import android.os.Message;

????import android.util.Log;

????import android.os.Handler;

????public class MyHandler extends Activity {

????static final String TAG = "Handler";

????Handler h = new Handler(){

????public void handleMessage (Message msg)

????{

????switch(msg.what)

????{

????case HANDLER_TEST:

????Log.d(TAG?? "The handler thread id = " + Thread.currentThread().getId() + " ");

????break;

????}

????}

????};

????static final int HANDLER_TEST = 1;

????/** Called when the activity is first created. */

????@Override

????public void onCreate(Bundle savedInstanceState) {

????super.onCreate(savedInstanceState);

????Log.d(TAG?? "The main thread id = " + Thread.currentThread().getId() + " ");

????new myThread().start();

????setContentView(R.layout.main);

????}

????class myThread extends Thread

????{

????public void run()

????{

????Message msg = new Message();

????msg.what = HANDLER_TEST;

????h.sendMessage(msg);

????Log.d(TAG?? "The worker thread id = " + Thread.currentThread().getId() + " ");

????}

????}

????}