I am writing my first Android app and need to retrieve an XML file from a URL to an InputSource. In this situation, I'm worried about the download locking up the GUI thread and the current Activity. Should I use a Thread, Service or ASyncTask to off-load the work to a new process? I'm simply wanting to get three values of XML and dump it in an SQLite database. But I really shouldn't rely on the network resource for the state of the GUI. It looks like Services are mentioned most for this sort of thing.

Advice please?