Android background thread
在Android上使用Handler預設為Main Thread (UI Thread)工作 但在執行耗時工作時有可能會造成ANR 因此可以改用HandlerThread在背景執行工作,避免UI Thread塞車 -- private HandlerThread mBGThread; private Handler mHandler; mBGThread = new HandlerThread("BackgroundThread"); mBGThread.start(); mHandler = new Handler (mBGThread.getLooper()) { @Override public void handleMessae(@NunNull Message msg) {super.handleMessage(msg); } }; 此時mHandler即在Background thread工作 以下可判斷是否在Main thread boolean isMainThread = (Thread.currentThread() == Looper.getMainLooper().getThread()); 結束Background thread時 mBGThread.quit();