对一个LiveData使用observerForever()可以吗,不会造成内存泄露吗?我应该在 activity 的某处注销它吗?
Is it ok to use observerForever() for a LiveData, does it not cause memory leaks? and should I unregister it somewhere in activity?
我创建了一个自定义 liveData 并且它有一个 contentObserver,如果我在此内容 Observer 上使用 observerForever 不会导致任何内存泄漏吗?并想知道 observerForever 有多安全以及我应该采取哪些其他预防措施。
您必须调用 removeObserver()
,否则永远不会删除观察者,并且根据您的实现,您可能会发生内存泄漏。
我创建了一个自定义 liveData 并且它有一个 contentObserver,如果我在此内容 Observer 上使用 observerForever 不会导致任何内存泄漏吗?并想知道 observerForever 有多安全以及我应该采取哪些其他预防措施。
您必须调用 removeObserver()
,否则永远不会删除观察者,并且根据您的实现,您可能会发生内存泄漏。