当前位置: 代码迷 >> Android >> 请教怎么同步多个Activity
  详细解决方案

请教怎么同步多个Activity

热度:99   发布时间:2016-04-28 02:11:28.0
请问如何同步多个Activity ?
我现在做一个 '空气质量指数' 实时发布系统.
我的Activity有 1)实时, 2)历史; 3)一周的变化.
然后我要每隔一段时间从服务器中获取数据,同步显示在这三个Activity的,感觉在其中的一个Activity好像很难做到.
怎么办?  思路不是很清晰
------解决思路----------------------
设置全局application变量不就可以了
------解决思路----------------------
可以写个service专门去拉数据,拉好后存全局变量,然后还可以继续保存在sharedpreference里,断网也可以显示
------解决思路----------------------
如果你这三个activity不是同时显示的,在activity的onresume中更新数据到界面
如果你同时显示三个activity,不如做成fragment
------解决思路----------------------
这种情况 一种比较优雅的实现方式就是使用event-bus  
service  获取天气消息 并 发布消息
每个activity 订阅消息  并接受消息
------解决思路----------------------
 从服务器获取的数据,会存在本地,然后在activity里面读就行了。
activity应该是对应一个窗口,每次启动activity的时候在onresume里面从本地读取就行了。
如果在后台的话用service从服务器读取,读取数据后发广播。
------解决思路----------------------
观察者模式,监听到有数据改变时,通知要更新的activity去更新!
------解决思路----------------------
回调接口。。你值得拥有…最傻瓜式的方式。
------解决思路----------------------
要么数据先持久化然后不同的activity各自读取,或者单独的服务获取数据,然后广播
  相关解决方案