One approach would be to rely on Reachability to check for an internet connection, reacting app side to (a) alert the user and (b) allow the app to prepare for cached/pending location info when that connection is restored. Loss of communication can mean only one thing to both app and server, tho - time to engage the clutch on background processing until it's restored.
It would be up to the server to react on it's side by throttling updates in whatever holding pattern until it hears from the app again, the persistence of which is up to you to decide/calibrate. Bit of machine learning could help predict those and lessen wheel-spinning over time, perhaps.
I'd be interested in the background processing tho...it's only at risk on the percentage of devices using that app that are in a subway shadow, as one example - it is still delivering ROI on the others that are in daylight. Is it possible to combine those threads so that discards are leveled, instead? Presumably you've harvested stats on the effect based on a legitimate pool and you're asking because they show an actionable degree of waste.