java – 使用Otto,如果我直接在其他地方调用它,方法只会订阅
发布时间:2020-12-15 04:21:28 所属栏目:Java 来源:网络整理
导读:我有一个问题,我的订阅方法之一不会被调用正确的事件类型的帖子,除非在其他地方使用(调用)订阅方法. 以下是有关代码的一些相关信息: 我的一个类的方法用@Subscribe注释. 通过使用调试器逐步执行代码,我发现在我的特定情况下,该类没有使用@Subscribe注释的方
我有一个问题,我的订阅方法之一不会被调用正确的事件类型的帖子,除非在其他地方使用(调用)订阅方法.
以下是有关代码的一些相关信息: >我的一个类的方法用@Subscribe注释. 我当然可以在一段代码中调用该方法,我相信它永远不会解雇,但这显然是一种可怕的做法,并且违背了这个帖子/订阅范例的目的. 或者我可以使方法静态,但我宁愿不这样做,因为我在其中使用成员变量. 尽管奥托的例子使用了类似的模式,但为什么会发生这种情况的任何解决方案 解决方法
原来这是一个ProGuard问题.通过添加以下行来修复它:
-keepclassmembers class ** { @com.squareup.otto.Subscribe public *; @com.squareup.otto.Produce public *; } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |