领域Java文档建议将领域实例与Activity / Fragment's生命周期相关联,以便在创建/销毁Activity / Fragment时打开/关闭领域。

假设Activity上的用户交互触发了一堆基于异步/回调的链式代码,这些代码最终在与Activity关联的领域实例上进行读/写操作。

如果用户在交互后立即退出活动,并且领域实例作为Activity's onDestroy的一部分被关闭,那么这是确保嵌套实例的事务/查询以静默方式失败的一种好方法,因为它是嵌套的回调链。

在调用领域实例之前,先检查领域实例是否已关闭/有效。

同时,打开一个领域实例并关闭它只是为了写/读一些东西可能会很昂贵。

避免此类崩溃的好方法是什么?

最佳答案

我认为这里的基本问题是:“如何防止回调死组件?”。答案在Realm文档here中:当组件退出(onPauseonStoponDestroy)时,必须注销注册侦听器。

如果我正确理解该问题,那么领域是否开放的问题是一条红线。侦听器必须未注册。

关于java - Realm 生命周期-在Android中处理关闭/无效的实例,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/45342574/

10-11 22:31
查看更多