1 项目整体结构
构建拥有不同模块的项目时,可使用阿里的Arouter进行模块间通讯,先来看看模块间整体的引用如下:
所有通讯接口皆由Service Library提供,如果是子模块向主模块获取或设置数据,则由主模块实现接口做具体业务逻辑的编写,子模块进行调用。
反之,则由子模块编写具体实现的业务逻辑代码,主模块进行调用。
2 基本介绍
当项目分成不同模块时,可以采用Arouter进行模块间的通讯,具体如何进行模块间通讯,详细的使用方法暂时不在这篇文章的讨论范围,具体可参考官方文档。
简单说一下使用,模块间跳转可通过如下方法:
ARouter.getInstance().build("/module_mall/my_points_activity").navigation();
在某个类上加上@Route注解就可以进行跳转了:
@Route(path = "/module_mall/my_points_activity")
public class MyPointsActivity
模块间数据传递:
第一步,让service模块中的传递类继承IProvider接口。
public interface MallService extends IProvider {
// ...省略无关代码...
}
第二步,定