这就是我所拥有的:
Activity A
Activity B
Fragment B1
Activity A
启动Activity B
,启动Fragment B1
我开始Observable
上传文件。上传完成后,Activity B
将完成。我需要以某种方式让Activity A
上传开始和完成时间。
我尝试过使用的LocalBroadcastManager
有效,但我想知道是否有其他或更好的方法可以做到这一点?
为了让Activity A
知道上传开始,我已经使用了startActivityforResult
,但只有在上传开始时我才知道。
答案 0 :(得分:0)
另一种解决方案是使用Observer / Observable模式。每个活动都是上传事件的观察者,而应用程序的上传者组件是可观察的。当Activity启动时(使用Activity *的onStart()回调),它作为观察者注册到上传器组件;当Activity停止时(使用Activity *的onStop()回调),它将被删除。 上传器组件通知所有事件(开始下载,结束下载等)只是为了注册观察者。
*替代方式是在应用的Application类中使用Application.ActivityLifecycleCallbacks。