我在 Android 上使用 GreenRobot EventBus 库。
有人能告诉我调用 removeStickyEvent(...) 的最佳做法是什么吗?向上操作,按下后退按钮,...?
谢谢你们。
最佳答案
要回答有关保留在内存中的事件对象的问题:对于每个给定类型,只有最后发布的粘性事件保留在内存中。
看源码here .
基本上总结一下:Eventbus 保留了一个 stickyEvents 映射,键是类类型,值是字段。因此,当使用 EventBus.postSticky(event)
发布新的粘性事件时,发布的事件将覆盖旧事件。所以我认为您可以避免建立许多粘性事件。
我也很担心。我希望它在文档中得到更好的解释,但至少它是开源的,这样我们就可以深入了解发生了什么。
我想更完整地回答你的问题。什么时候应该删除粘性事件?当您不想让粘性事件的调用不返回任何内容时。确切的时间是应用程序的特定要求。祝你好运。
关于android - 什么时候应该调用 removeStickyEvent(...)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24780188/