I think your tread is still running in the UI threadpool and causes the UI to lockup.
Android will kill your thread if you lock the UI for ~2-3 seconds. AsyncTask will also allow you to display a status bar or spinning ring while the runnable does the work.