博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
解决android EventBus 注册事件后但还无法相应事件的问题
阅读量:2240 次
发布时间:2019-05-09

本文共 702 字,大约阅读时间需要 2 分钟。

 
这里只是我遇到的问题,请大家的问题"对号入座"
 
问题:
acitivity里的onstart注册事件EventBus.getDefault().register(this);service里有个子线程里post了一个xxxEvent实例,在activity里使用了public void onEventMainThread(xxxEvent event){}
问题来了,都是按照官网的介绍来使用的,就是响应不了事件.
运行时,logcat里有以下警告信息:
No subscribers registered for event class xxxEvent
No subscribers registered for event class de.greenrobot.event.NoSubscriberEvent
 
怎么会没有注册事件呢?明明有注册的啊!
查了好久,好久,原来
我这个service在manifest里注册是有个这些东西
<service
android:name=".utils.service.SocketClientService"
android:exported="false"
android:process="system" />
 
改成:
<service
android:name=".utils.service.SocketClientService" />
 
问题就解决了;
 
主要还是
android:process="system"问题造成的,算不算bug?

转载于:https://www.cnblogs.com/enyusmile/p/4442140.html

你可能感兴趣的文章
【MyBatis学习02】走进MyBatis的世界
查看>>
【MyBatis学习03】原始dao开发方法及其弊端
查看>>
【MyBatis学习04】mapper代理方法开发dao
查看>>
【MyBatis学习05】SqlMapConfig.xml文件中的配置总结
查看>>
【MyBatis学习06】输入映射和输出映射
查看>>
【MyBatis学习07】动态sql
查看>>
【MyBatis学习08】高级映射之一对一查询
查看>>
【MyBatis学习09】高级映射之一对多查询
查看>>
【MyBatis学习10】高级映射之多对多查询
查看>>
【MyBatis学习11】MyBatis中的延迟加载
查看>>
【MyBatis学习12】MyBatis中的一级缓存
查看>>
【MyBatis学习13】MyBatis中的二级缓存
查看>>
【MyBatis学习14】MyBatis和Spring整合
查看>>
【MyBatis学习15】MyBatis的逆向工程生成代码
查看>>
Java 中 final、finally 和 finalize 使用总结
查看>>
volatile关键字解析
查看>>
单例模式的八种写法比较
查看>>
比较常见的数据库SQL面试题以及答案
查看>>
MySQL与Oracle的区别
查看>>
关于Oracle数据库优化的几点总结
查看>>