My phone has zero reception at my doctor's office. It also runs out of space regularly, since manufacturers decided to screw consumers over by taking out SD card slots. There could be plenty of other reasons.
Why do you need reception to transmit something from a computer to a phone in the same room?
As for out of space, that's a valid concern. But the blockchain itself can store almost nothing - a few bytes per transaction at most. So you'll have to store the data somewhere else anyway, and only point to it using the blockain. And therefore, the question returns: why not store that pointer in the phone itself?