I would imagine that communicating within urban areas might be possible via some kind of a mesh network where e.g. every phone would act as a node that can forward the packets further. Something like that should be possible over WiFi I assume although I am unfamiliar with the existing protocols that would allow that.
There are two main issues with such an application that I can think of:
1. Addressing. How would the nodes know where to send the packet? But I assume there are ways to deal with that which come from the P2P networks like Tor.
2. Edge connectivity. Even if it would be possible to communicate between the regular nodes of the network, those packets would not be able to reach the outside world. So, from abroad or even from the out of town, they would still appear offline. Some kind of edge bridges would probably be necessary to reach connectivity with the outside world.
There are two main issues with such an application that I can think of:
1. Addressing. How would the nodes know where to send the packet? But I assume there are ways to deal with that which come from the P2P networks like Tor.
2. Edge connectivity. Even if it would be possible to communicate between the regular nodes of the network, those packets would not be able to reach the outside world. So, from abroad or even from the out of town, they would still appear offline. Some kind of edge bridges would probably be necessary to reach connectivity with the outside world.