跨module无法接收消息
同一个module中可以收发消息,但是跨module无法接收
用的哪个版本?
同一个module中可以收发消息,但是跨module无法接收
我试了下1.5.0跨module没有问题,你可以看下是不是以下问题:1、是否在一个进程,2、key是否相同,3、是否设置了lifecycleObserverAlwaysActive为true
1.版本号是1.5.0 2.同一个进程,同一个key 3. lifecycleObserverAlwaysActive为true
场景:moduleA中点击一个按钮,发送一个消息,然后从moduleA跳转moduleB ,moduleB中注册接收器,debug发现observeInternal方法中, liveData.getVersion() 始终大于 ExternalLiveData.START_VERSION;
并且从moduleB中finish回到moduleA后,在反复点击几次按钮,liveData.version会越来越大,但是ExternalLiveData.START_VERSION始终为-1,就导致在回调onChange方法时,preventNextEvent始终是true,直接rerurn了
从你描述的场景来看,是先发送消息再注册消息接收器吗,如果是这个先后顺序,要使用observeSticky方法注册接收器才能收到之前发送的消息
感谢大佬,已解决