Сокетные соединения и опрос. Какое решение лучше с точки зрения времени автономной работы?

Итак... Я делаю приложение для Android. Приложение должно отправлять и получать данные чата в реальном времени (должно быть сокетом ), но оно также должно отправлять команды (, которых нет, поскольку клиент знает, когда он что-то отправляет ).

Мне нужно знать, что является лучшим решением с точки зрения экономии заряда батареи пользователя.

а)Открытие и закрытие соединения каждый раз, когда отправляется команда, если вкладка чата открыта, то сохраняйте постоянное соединение.

б)Держите соединение постоянным все время.

Я просмотрел Интернет, но получил неоднозначные ответы: одни говорят, что постоянное соединение плохо влияет на срок службы батареи, а другие говорят, что это не так. (Пример:«Вы спрашиваете, будет ли удержание открытого TCP-соединения разряжать батарею -? Может быть, я ЗНАЧИТ, но открытие соединения не должно тратить заряд батареи… Если вы думаете, что это произойдет, я хотел бы знать, где вы получили эту информацию. Это звучит НАСТОЛЬКО странно для меня».)

Или если есть другое решение, которое было бы лучше.Я не думаю, что C2DM от Google вообще был бы очень полезен в этой ситуации.

По сути, что больше разряжает батарею :при постоянном соединении или открытии и закрытии соединения, если вкладка чата не открыта?

Спасибо!

40
задан shadrx 10 May 2016 в 01:52
поделиться