I have a very annoying bug showing up.
We have left our iPhone app running overnight.
Every 2 seconds it sends a broadcast ping out on to the network via the open socket to inform that the device is alive. Now the other application detects that ping and attempts to send messages back. The problem is that despite the ping continuing to go out no packets ever get received.
This only seems to happen after several hours (annoyingly we've only ever managed to get this overnight). It then seems to leave the iphone in a very confused state where even after restarting the app it is still unable to receive the packets. Eventually after a time (sorry I have no idea how long) the phone starts re-acting normally and I can continue.
I'm guessing that somewhere along the line iOS is blocking the socket from receiving data (but oddly not sending on the same socket!).
Has anyone any idea what this might be and, more importantly, how I might solve the issue?