A HandlerThread can be used to start a thread with a Looper. This looper then can be used to create a Handler for communications with it.
HandlerThread thread = new HandlerThread("thread-name");
thread.start();
Handler handler = new Handler(thread.getLooper());