想象一下,我有一个类MyLibrary,它需要将一个Activity作为参数传递给其构造函数:public MyLibrary(Activity someActivity)。有没有一种方法可以将观察者附加到MyLibrary构造函数中的someActivity上,以便MyLibrary知道someActivity何时被销毁?

我正在使用Bumptech's Glide进行异步图像加载,并且在其问题的多个地方都提到,在将上下文,活动或片段传递给其Glide.with()函数之后,如果传递的对象传递给Glide,Glide将自动暂停当前正在加载的图像被摧毁。 (Example)我想知道一旦给定的上下文,活动或片段被破坏,Glide如何找出何时停止加载,它如何观察?

理想情况下,我想按照以下方式做一些事情(请注意,这是一个虚构的示例):

public MyLibrary(Activity someActivity){
    someActivity.addLifecycleObserver(new LifecycleObserver(){
        @Override
        public void onStart() {}

        @Override
        public void onStop() {}

        @Override
        public void onDestroy() {}
    });
}

最佳答案

Google刚刚发布了一个处理您的用例的架构库。查看guide

10-04 22:59