arouter跨module传递消息_重构篇 — ARouter模块间通讯

本文介绍了如何使用ARouter在Android的多模块项目中进行跨module通讯,详细阐述了模块间的跳转和数据传递步骤,并提供了解决接收到push通知时消息传递到相应子模块的解决方案。通过获取当前栈顶Activity并判断模块,实现消息的定向处理。
摘要由CSDN通过智能技术生成

1 项目整体结构

构建拥有不同模块的项目时,可使用阿里的Arouter进行模块间通讯,先来看看模块间整体的引用如下:

29b34900a444

所有通讯接口皆由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 {

// ...省略无关代码...

}

第二步,定

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值