Suppose I want my app to sync data from an online database to the local database, I understand Services are the components to look for.
If I start a normal service, I understand that it starts in the main thread and any time-consuming task I run will block the UI. This means that I will have to use something like an AsyncTask to get the job done.
On the other hand, if I use an Intent Service, I understand that it runs on a parallel thread and the UI isn't blocked if I run a long task. And any other intent service I call will be queued up.
But what will happen if I create a parallel thread from the IntentService to make a network call?
Will the intent service wait for my network call to complete or will it make the call in a parallel thread and execute the next Intent Service in the queue?