android activity切换,线程解决

清闲哼哼 发布于 2013/10/31 10:03
阅读 741
收藏 1

@miloming 你好,想跟你请教个问题:我想做一个后台线程一直运行,接收服务器发来的数据,怎么使它接收完服务器的数据就发送给当前的activity。有多个activity在切换的时候,thread怎么识别传送呢?

你的回答是.用一个全局队列来记录activity的入队和出队。写一个baseactivity,所有activity都继承它实现,然后再baseActivity的oncreate方法里面入队,在onDestroy出队。(非常感谢你的回答)

  现在我做了一个这样的baseactivity,让它发现后台没有接收线程的时候创建一个线程。我让所以activity都继承他,但是发现activity在切换的时候,之前的线程还在活跃状态,创建了一个新的activity,又新建了一个线程,返回回来的时候,又发现线程在创建,我只想要一个线程在接收数据,怎么来解决这个问题。

加载中
0
黑狗
黑狗

你把服务启动的代码写到了Act里面去? 请你写在你的入口类里,这个类被创建一次

你写带baseact里去,每创建一个activity,就重新创建一个线程,两下你的应用就爆掉了

0
fneg
fneg
这样做,后台线程收到信息后通过Broadcast发送,在任意想要接收信息的Activity里面做Reciver,处理感兴趣的信息。推荐使用LocalBroadcastManager,这个比较快
0
m
miloming
你标志线程是否启动的变量,肯定要是全局的才行。
返回顶部
顶部