Why does this method have to run in UI thread?