# appbus
**Repository Path**: xuqingcode/appbus
## Basic Information
- **Project Name**: appbus
- **Description**: app内通信工具,不可跨进程,轻量级,使用方便,可延迟接收消息
- **Primary Language**: Java
- **License**: MulanPSL-2.0
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 0
- **Created**: 2022-02-14
- **Last Updated**: 2023-03-06
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
# appbus
#### 介绍
app内通信工具,不可跨进程,轻量级,使用方便,可延迟接收消息,可在任意对象内使用
#### 软件架构
利用观察者模式,进行消息回调
#### 安装教程
##### (一)gredle依赖
1. 在项目的gredle文件中添加:
```groovy
allprojects {
repositories {
...
maven { url 'https://jitpack.io' }
}
}
```
2. 在app的gredle文件中添加:
```groovy
dependencies {
implementation 'com.gitee.xuqingcode:appbus:2.0.1'
}
```
##### (二)maven依赖
1.在repositories中添加:
```xml
jitpack.io
https://jitpack.io
```
2. 添加dependency:
```xml
com.gitee.xuqingcode
appbus
2.0.1
```
#### 使用说明
1. 在你的项目的初始化中init,例如Android中的Application的onCreate中添加:
```java
AppBus.getInstance().init();
```
2. 使用AppBus:
```java
//接收消息,接收的消息可以是任意对象,但需要和发送的消息类型对应,否则会对象强转错误,绑定的route可以是Object,可以是String,也可以是class
AppBus.getInstance().register("绑定route").setOnMsgListener((OnMsgListener)data->{
System.out.println(data);
});
//绑定当前对象并发送消息,这里的消息可以是任意对象
String test="测试";
AppBus.getInstance().register(this).send(test,"发送到已绑定的route");
//仅仅发送消息
AppBus.getInstance().justSend(test,"发送到已绑定的route");
//仅仅发送消息,多个对象
AppBus.getInstance().justSend(test,class1.java,class2.java,class3.java);
//发送通知,所有已注册的对象都可收到消息
AppBus.getInstance().justSendAll(test);
```
详情可查看代码!
#### 最后
感谢各位读者,对项目感兴趣,如遇问题,可对项目进行指正!