Can you elaborate more about the problem with your onHandleIntent?
In case you would like to make network calls in background and not have them skipped, you can use the new JobScheduler in API 21 which queues your jobs and handles network not available/exponential backoff etc for free. If your minSdk is <21 you can check
https://github.com/evernote/android-job