一、ARouter是什么?
ARouter是阿里开源的一款android路由框架。通过路由进行界面跳转,区别于 Intent的显隐式跳转。在模块化的项目中,友好的解决了因模块互相依赖冲突,而界面互相跳转不了的问题,使用ARouter进行跳转,两个 library互相不依赖,也可以相互跳转。
二、如何使用ARouter
添加依赖和配置(所有要使用的应用build.gradle中都要添加)
新建自己的applaction在applaction中初始化ARouter
添加注解
在支持路由的页面上添加注解
这里的路径需要注意的是至少需要有两级,/xx/xx一般是本类名+上一级文件夹名
//在需要跳转的modle中写
@Route(path="/mafengwo/MainActivity")
public class MainActivity extends AppCompatActivity
//需要跳转的地方
ARouter.getInstance().build("/myhome/MyHomeMainActivity")
.withString("name","名字")
.navigation();
//接受数据:{
@Autowired(name="name")
public String name;
//注册
ARouter.getInstance().inject(this);
}
calces:
calces是Android构建工具包,这个工具的主旨是使用脚本自动处理机械化的重复劳动,让开发者专注更有价值的工作。 目前提供自动组件化控制与屏幕适配插件。
导入依赖
在项目的build.gradle中
buildscript {
...
plugins {
id "calces.appconfig" version "3.3.0-alpha01"
}
写在allprojects的下面:
appConfig {
debugEnable false
apps {
app {
mainActivity ".MainActivity"(注意这个写自己主APP的,不然写包名的话用自动生成一个清单文件会获取不到)
modules ':mine'
}
}
modules {
mine{
applicationId "com.example.mine"
mainActivity ".My_MainActivity"
isRunAlone true
}
}
}
各个module中的gradle中第一句话替换成(包括App)
apply plugin: 'calces.modules'
子module中defaultConfig里面的 applicationId "com.example.myapplication"删除