button.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Runnable runnable = new Runnable() { @Override public void run() { Log.d(TAG, "In a different thread " + Thread.currentThread()); Message message = handler.obtainMessage(); message.obj = "hello"; message.sendToTarget(); } }; Thread thread = new Thread(runnable); thread.start(); } });