Everytime you start an application, it starts on the UI Thread (also called the Main Thread).
Whenever you create a new Thread, or Timer, or AsyncTask, by definition, they're creating new Threads. Threads that aren't the main thread simply don't have permission to modify the UI.