Я бы хотел закрыть последнее активное соединение, используя cookie или какой-то идентификатор на вашем сервере.Да, это больше работы, но как только пользователь переходит на адреса, вы можете найти старый сокет и очистить ресурсы в пути.Должно быть довольно легко привязать имя пользователя или что-то в этом роде.
Другая проблема, с которой вы можете столкнуться, даже если пользовательское оборудование не меняет адреса, некоторые мобильные сети и, возможно, ваша собственная сеть можетиметь брандмауэр statefull, который будет очищать неиспользуемые сокеты, что вызовет проблемы с подключением, поскольку для нового подключения снова потребуется syn / syn-ack.Просто о чем следует помнить, если вы замечаете проблемы с подключением.
Если вы все же решили поиграть с приложением Keep Alive, пожалуйста, не будьте слишком агрессивными, болтливые приложения - это чума мобильных сетей, и те, которыеУдар сети, когда он теряет соединение с сервером, может вызвать всевозможные проблемы для сети (и вам, если оператор подключится).У Atleast есть своего рода механизм отката для повторного подключения, и, возможно, даже попытаться выяснить, почему устройство переключает IP-адреса каждую минуту.Если он работает должным образом, этого не должно быть.
*** Я работаю на оператора мобильной связи в Канаде, однако мои комментарии не отражают позицию моего работодателя.