android下载软件app 如何实现android客户端与服务端数据同步?
如何实现android客户端与服务端数据同步?这个问题分为两部分:一是客户端数据发生变化时会上传,这很简单;二是服务器端在数据发生变化时能够知道并从服务器端拉取数据。这个问题有几种解决方案:方法1:定
如何实现android客户端与服务端数据同步?
这个问题分为两部分:一是客户端数据发生变化时会上传,这很简单;二是服务器端在数据发生变化时能够知道并从服务器端拉取数据。这个问题有几种解决方案:
方法1:
定期从服务器轮询和上载,但缺点是它不实时和优雅。
方法2:服务器发送一条短消息,告诉客户端数据发生了变化,然后客户端将其拉入。缺点是成本很高,而且当客户在国外时,它似乎不是实时的。
方法三:服务器和客户端建立套接字并保持心跳,优点是实时性,缺点是功耗。
方法4:使用谷歌的C2DM推送服务,这是方法3的升级版本。这很好,但缺点是每部手机都需要一个谷歌账户才能使用这项服务。
如何搭建一个与Android客户端交互的服务器?
Android客户端和服务器基于intentservice,详细信息如下:
后台使用简单的servlet,支持get或post。servlet最终将一个字符串标志返回到前台,值为true或false,指示登录是否成功。
然后在Android ADT上创建一个Android项目,分别创建登录界面和登录成功界面两个活动。
HTTP访问公共类,用于处理get和post请求。
intentservice服务用于以队列的形式在后台处理耗时的操作。
英寸AndroidManifest.xml文件在中注册intentservice。注意使用权限节点使程序能够访问网络。
登录界面处理,注意按钮监控事件,使用意图将值传递给服务。在receiving broadcast类中,还使用intent将值传递给下一个活动。在oncreate()中,动态注册接收广播类的实例receiver。在receiving broadcast类中,不要忘记在使用接收器后注销它,否则您将报告一个异常:are you missing a call to unregisterereceiver()。