Releasing software simultaneously to lots of users is risky. What do you do, if something goes wrong? A gradual roll-out allows you to catch problems quicker, and you'll have less work to do to recover from mishaps. Having no reliable network connectivity to the hosts running this software makes the risk worse.
There may be compatibility problems between different versions. Such compatibility problems are better handled by ensuring each version is compatible with its immediate predecessor (but not necessarily further back). When multiple components are involved, ordering updates of components may also be relevant.
But once you have decided a new version is ready for use, why not deploy it right away rather than wait for a specified time in the future? Usually the main reason for waiting would be to ensure that you are ready to handle any problems that may show up. But if that is the purpose, then having an automated release happen while the device may not even have network connectivity, may turn out to be a release happening at the worst possible time.
Between the time you schedule the release and the time it actually happens, things can happen. You may find a bug, that would mean you would want to cancel the release. You may also find that the people who should be ready to provide support will not be available at the planned time, and you need to postpone the release. In those cases lack of network connection may prevent you from stopping a release, that should not be happening after all.