自己做了一个Android http下载的Demo,下载放在Service中,下载进度及完成都是Service通过Hanlder通知Activity更新进度
现在遇到一个问题:就是当前Activity因为后退键或者其他原因OnDestroy掉后,再次进入该Activity后,下载进度的消息就再也收不到了,问题原因倒是清楚了:就是Activity重进后消息处理的Handler已经不是Service发出通知的Hanlder了
目前暂时的解决办法是Activity Oncreate后将新的Handler交给Service,以后的消息都由该Handler处理,但这个办法我觉得比较麻烦不够精简,我在想一个App应用中能不能有一个全局的Handler,由多个不同的Activity共享该Handler,或者同一个Activity的多个不同实例共享该Handler。
希望大家给点指示,THK!
你试试在Activity生命周期里把旧的handler保存一下,回来的时候再取出可以不
Android应用需要全局访问的话,试试自定义Application类吧