需求:类似于一些邮箱客户端或聊天工具,但是没有他们那么复杂。就是Android启动一个service,然后服务器端可以随时向客户端发送信息。当然Android的ip是内网的,类似192.因此客户端要想收到服务器的信息,就必须维持一个长连接。问题:1、如何在尽量省电和省流量的情况下,维持这个长连接?2、如果用的是发送心跳包的方式来维持,这个心跳包的发送频率又是什么确定的呢?请回答具体一点的。
调试欢乐多
answer:
传统的想法是把手机端作为client,这样的话客户端始终需要主动向服务器发起请求,实质还是pull,而不是push。
完全可以反过来把手机端作为server,PC(掌握最新信息的设备)一旦有数据直接向手机发起请求。
2、如果用的是发送心跳包的方式来维持,这个心跳包的发送频率又是什么确定的呢?
answer: 你的前提是省电,所以要仔细想想该方式下如何省电。
如,实现心跳频率可配置,由服务器端按数据更新频率设置心跳频率。
1、如何在尽量省电和省流量的情况下,维持这个长连接?
answer:
传统的想法是把手机端作为client,这样的话客户端始终需要主动向服务器发起请求,实质还是pull,而不是push。
完全可以反过来把手机端作为server,PC(掌握最新信息的设备)一旦有数据直接向手机发起请求。楼上有人提到jetty容器,它的实质是一个轻量级的servlet容器。
client上的wifi,ip是192.的,我server如果不再同一个局域网,怎么连上去呢?