上文讲述了使用ARouter进行普通Activity跳转和模块间跳转,这次学习一下模块间Service(业务逻辑)通信调用。
在组件式开发时,有时在某个Module下想要使用其他Module的业务,很不方便,要不重新写一个,要么提到公共Module,ARouter直接可以解决这类问题。
首先业务接口要声明在common公共Module中,并继承IProvider接口,如下:
public interface SecondService extends IProvider {
void getYou();
}
然后在SecondModule下实现业务接口,编写业务代码,并配置路由,如下:
@Route(path = “/second/SecondModuleService”)
public class SecondModuleService implements SecondService {
@Override
public void init(Context context) {
Log.i("gxh","init");
}
@Override
public void getYou() {
Log.i("gxh","getYou");
}
}
接下来就可以在其他Module去使用了,例如在FirstModule下去使用SecondModuleService,如下:
SecondService secondService =
(SecondService)ARouter.getInstance().build(“/second/SecondModuleService”).navigation();
secondService.getYou();
这样就可以直接从FirstModule调用SecondModule的Service了,拜拜👋。
Android路由框架 - ARouter使用(一) Activity跳转
————————————————
版权声明:本文为CSDN博主「国际巨星赫赫」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/he6687086/article/details/114660874