Приложение iPhone, подключающееся к удаленному серверу через TCP. Сценарии использования:
- приложение (пользователь) отправляет данные на сервер, а сервер отвечает на данные назад.
- сервер может отправлять данные в приложение, пока он ничего не делает.
Предположим, что если приложение не отправляет данные на сервер в течение 30 минут, сервер закроет соединение. Я хочу сохранить соединение в течение 120 минут, даже если пользователь ничего не делает.
Случай 1: если приложение находится на переднем плане, я могу использовать таймер для отправки на сервер каких-либо данных do-nothing. Нет проблем.
Случай 2: если пользователь нажал Домой и приложение перешли на задний план, что я мог сделать? Я не хочу показывать предупреждение или что-то прерывать пользователя (он ушел или играл в игры). Я просто хочу сохранить связь в течение более длительного периода, и когда пользователь вернется в приложение, он узнал, что соединение будет еще живым и быть счастливым с этим.
Я прочитал документацию о выполнении фона, многозадачности и локальных оповещениях API-интерфейсов iphone. Я не уверен, смогу ли я достичь случая 2.
Используйте только юридические API, без джейлбрейка.