This happens because you are doing a network operation on the main thread, and this is not allowed on Android 3.0 and above. Even though it is in a service, services are run on the UI thread unless you specifically launch them in another thread or create a thread inside it.
You can fix this by running the task in a service off the main UI thread, by using a Thread or an AsyncTask.
Try creating a new thread in onStartCommand()
, as suggested by @CommonsWare.