A-A+

Android 进程间传递事件的库 HermesEventBus

2016年08月10日 Linux 软件 暂无评论 阅读 492 次

HermesEventBus是一个基于EventBus的、能在进程间发送和接收event的库,在IPC或者插件开发中非常有用。它底层基于
EventBus,并且和EventBus有相同API。

EventBus是Android系统上使用最广泛的简化模块之间通信的库。

注意:本库基于EventBus 3.0.0。如果你之前使用的是老版本,那么必须修改你的代码,否则将无法接收event。
但是修改比较简单。

之前使用“onEventXXX”名字的方法要加上注解,并且在后面附上线程模式:

@Subscribe(threadMode = ThreadMode.MAIN)
public void showText(String text) {
    textView.setText(text);
}

原理

本库基于两个库开发:Hermes和EventBus。

事件收发是基于EventBus,IPC通信是基于Hermes。Hermes是一个简单易用的Android IPC库。

本库首先选一个进程作为主进程,将其他进程作为子进程。

每次一个event被发送都会经过以下四步:

1、使用Hermes库将event传递给主进程。

2、主进程使用EventBus在主进程内部发送event。

3、主进程使用Hermes库将event传递给所有的子进程。

4、每个子进程使用EventBus在子进程内部发送event。

另外还使用了Concurrent-Utils库。

标签:

给我留言

Copyright © SEARU.ORG 保留所有权利.   Theme  Ality 网站地图 360网站安全检测平台

用户登录

分享到: