Added vibrateThread and allow it to run on UI thread