android如何同步实时获取服务器的数据

毛豆啊 2017-01-10 07:17:46
在android中,如果服务器对设备上的数据有更新,那么设备如何自动的去获取新的数据。比如服务器最开始返回给android设备一个用户信息,用户名:张三,年龄:25,用户id:123,职位:员工。后来后台对用户信息进行了修改,修改为,用户名:张三,年龄:28,用户id:111,职位:经理。这时候如果想要设备这里自动获取修改后的信息,可以怎么实现?可以在android端开启一个service,然后在里面写一个定时器,隔一段时间请求一次服务器的接口,如果有更新,就把更新的数据获取到,然后更新android设备上的信息吗?或是有其他什么好的方法,框架,能推荐下吗?
...全文
3030 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
dudutsale 2017-01-21
  • 打赏
  • 举报
回复
定时访问服务器,如果客户端的使用人恨过,对服务器造成挺大的压力。 还是用socket连接服务器,比较稳妥一些。没有开启软件就通过推送来进行触发。
只为搞笑 2017-01-12
  • 打赏
  • 举报
回复
然而推送也是轮询,这就尴尬
R_ine 2017-01-11
  • 打赏
  • 举报
回复
引用 4 楼 qq_20523943 的回复:
引用 1 楼 R_ine 的回复:
其实还可以。每次进入这个活动页面的时候去刷新一次数据。或者直接给个刷新按钮来进行刷新数据。
如果是打开应用开始,不管在哪个界面,服务器对数据有更新,应用这里都自动实现更新,不管是在哪个界面,我用service这样的方法可以吗?因为不知道其他的什么方法,但是我感觉开启一个service,并且隔断时间就去请求一次服务器,会不会太费资源,费电了啊?想了解下有没有其他什么好的方法。
那其实还有个方法。就是做个推送。就是服务器那边有数据更新,然后服务器主动推送给APP有信息更新,然后APP这里接收到服务器的推送,就去再次更新数据。可以去看下友盟推送之类的推送服务。
愚公要移山 2017-01-11
  • 打赏
  • 举报
回复
其实你可以这样,使用接口去监听,当有变化时在回调函数里面监听,使用观察者模式
开发者_android 2017-01-11
  • 打赏
  • 举报
回复
引用 5 楼 qq_20523943 的回复:
[quote=引用 3 楼 dalor 的回复:] 数据的更新比兑,只能是再次获取,不管使用什么方法都不能避免要得新访问,无论主动还是被动获取。 所以,你这种做法,已经是可以的了。就算有别的方法,本质上也是一样的。 你只能通过实现操作的需求,判断是让用户主动刷新,还是后台主动刷新。
但是我刚学习android不久,目前接触到的也就是这四大组件,深一点的都不知道去哪了解,想要实现这个大概的功能,我能想到的就是这样做,但是又觉着开启一个service,还隔断时间就去请求一次服务器,怕太费资源,费电了,所以想请教下有没有其他什么更好一些的方法。[/quote] 这个真没有,数据的刷新,都离不开对数据的重新访问,因为是比对更新,所以不能在服务器端使用缓存数据。总之离不开这样的操作流程的。
麦田捕手 2017-01-11
  • 打赏
  • 举报
回复
1,如果数据要在客户端做缓存(数据库),建议后台开service定时轮询服务器。 2,如果数据不需要做在客户端做缓存(数据库),到具体页面,调用接口请求服务器就可以了。 3,不用轮询,做im推送,当服务器数据更新后,通过im推送给客户端。
毛豆啊 2017-01-11
  • 打赏
  • 举报
回复
引用 3 楼 dalor 的回复:
数据的更新比兑,只能是再次获取,不管使用什么方法都不能避免要得新访问,无论主动还是被动获取。 所以,你这种做法,已经是可以的了。就算有别的方法,本质上也是一样的。 你只能通过实现操作的需求,判断是让用户主动刷新,还是后台主动刷新。
但是我刚学习android不久,目前接触到的也就是这四大组件,深一点的都不知道去哪了解,想要实现这个大概的功能,我能想到的就是这样做,但是又觉着开启一个service,还隔断时间就去请求一次服务器,怕太费资源,费电了,所以想请教下有没有其他什么更好一些的方法。
毛豆啊 2017-01-11
  • 打赏
  • 举报
回复
引用 1 楼 R_ine 的回复:
其实还可以。每次进入这个活动页面的时候去刷新一次数据。或者直接给个刷新按钮来进行刷新数据。
如果是打开应用开始,不管在哪个界面,服务器对数据有更新,应用这里都自动实现更新,不管是在哪个界面,我用service这样的方法可以吗?因为不知道其他的什么方法,但是我感觉开启一个service,并且隔断时间就去请求一次服务器,会不会太费资源,费电了啊?想了解下有没有其他什么好的方法。
开发者_android 2017-01-11
  • 打赏
  • 举报
回复
数据的更新比兑,只能是再次获取,不管使用什么方法都不能避免要得新访问,无论主动还是被动获取。 所以,你这种做法,已经是可以的了。就算有别的方法,本质上也是一样的。 你只能通过实现操作的需求,判断是让用户主动刷新,还是后台主动刷新。
寒冰大神 2017-01-11
  • 打赏
  • 举报
回复
每次进这个页面就重新获取数据不就保证是最新的了么
R_ine 2017-01-11
  • 打赏
  • 举报
回复
其实还可以。每次进入这个活动页面的时候去刷新一次数据。或者直接给个刷新按钮来进行刷新数据。
毛豆啊 2017-01-11
  • 打赏
  • 举报
回复
引用 6 楼 tiewantn 的回复:
1,如果数据要在客户端做缓存(数据库),建议后台开service定时轮询服务器。 2,如果数据不需要做在客户端做缓存(数据库),到具体页面,调用接口请求服务器就可以了。 3,不用轮询,做im推送,当服务器数据更新后,通过im推送给客户端。
谢谢啦,那就用这个第一种了。
  • 打赏
  • 举报
回复
1.在app打开需要获取数据的时候获取最新的就可以了,提前获取最新数据存着有用? 2.轮询请求 3.socket长连接+服务器端推送
Jason Zhang~ 2017-01-11
  • 打赏
  • 举报
回复
不想轮询浪费流量,就只能是推送了咯。 后台数据变化发送推送过来,安卓收到推送(推送的时候可以把最新数据直接带过来,也可以收到推送了再去请求刷新数据)的时候,更新数据。
内容概要:本文系统研究了构网型变流器的正负序阻抗解耦特性及其在弱电网环境下的稳定性表现,重点依托Matlab/Simulink仿真平台,构建了详细的阻抗数学模型,设计了解耦控制策略,并采用小信号扫频法进行频域辨识与稳定性验证。研究深入探讨了构网型变流器与传统跟网型逆变器在正负序阻抗特性上的本质差异,结合虚拟同步发电机(VSG)等先进控制技术,分析其在抑制宽频带振荡、削弱锁相环动态耦合等方面的优越性。文中不仅提供了完整的仿真模型与MATLAB代码实现,还整合了光伏、风电、储能、微电网等多类新能源系统的阻抗建模与稳定性分析资源,形成了一套面向新型电力系统稳定性的综合性技术资料体系,具有较强的科研复现与工程参考价值。; 适合人群:面向具备电力电子、电力系统自动化、新能源并网等专业背景的研究生、高校教师及工程技术人员,特别适用于从事阻抗建模、小干扰稳定性分析、宽频振荡机理研究以及撰写高水平学术论文的科研工作者。; 使用场景及目标:①掌握构网型变流器正负序阻抗建模与扫频辨识的仿真方法;②深入理解VSG等构网型控制在弱电网中提升稳定性的内在机理;③复现顶刊论文中的阻抗分析流程与稳定性判据应用;④利用提供的成熟模型与代码加速科研进程,支撑课题研究与学术成果产出。; 阅读建议:建议结合文中提供的Simulink模型与MATLAB代码,按照“理论建模—仿真搭建—扫频激励—频响提取—Nyquist判据分析”的完整流程进行实践操作,重点关注扫频信号的注入方式、频率范围设置及阻抗曲线的物理意义解读,并参考博士论文复现案例深化对复杂动态耦合问题的理解。

80,490

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧