I have a Service running in my app..
This Service has an object for sending message to the server and a function to get that object and use it.
The object is
As far I know, Android service run on UI thread. If you want to make an asynchronous job, you should use Intent Service
See:
What is the difference between an IntentService and a Service?
Here is an Intent service example you can try.
Use IntentService
instead of Service
. If you do network calls in a Service
, the UI will stuck. Therefore, use an IntentService
since it uses a separate Thread
.
And you do not know when a server message will retrieve the data. A NullPointerException
could be thrown if objects are accessed as long as network calls are still in progress. Use BroadcastReceiver
s to fire an Intent
whenever a server responds.