一个出于ARouter,却更轻便简洁的Route工具

HEasyRoute

一个用于帮助组件化解耦的轻量框架

写在文前

按照惯例,反手就是一个超链接: github地址

说明

是否会觉得ARouter太过繁杂,功能太多,HEasyRoute便是将ARouter中大部分功能剔除,只留下了Activity的页面跳转的一个库

导入

如下添加依赖到各模块的build.gradle:

1、添加依赖
dependencies {
  annotationProcessor 'com.hooyee:easyroute-compile:1.0.1'
  compile 'com.hooyee:easyroute-lib:1.0.1'
}

2、添加区分各模块的参数
android {
...
    defaultConfig {
       javaCompileOptions {
          annotationProcessorOptions {
              arguments = [ moduleName : project.getName() ]
          }
       }
    }
...
}
复制代码

关于混淆

-keepnames class * {
    @com.moly.hooyee.annocation.Route <fields>;
}
-keep public class com.moly.hooyee.model.**{*;}
复制代码

简单使用

  1. 在Application#onCreate()中调用EasyRoute.init(this);

  2. 在需要路由配置的Activity的类定义上加上注解:@Route(path = "/test")

  3. 在需要跳转到路由所标注的Activity的地方调用:EasyRoute.navigation(context, "/test");

示例代码

// 在Application中初始化
public class MyApplication extends Application {
    @Override
    public void onCreate() {
        super.onCreate();
        EasyRoute.init(this);
    }
}

// 具体调用代码
@Route(path = "test")
public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        findViewById(R.id.btn_test).setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                EasyRoute.navigation(getApplicationContext(), "/test/a1");
            }
        });

        findViewById(R.id.btn_test2).setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                EasyRoute.navigation(getApplicationContext(), "moudle2/t2");
            }
        });
    }
}

复制代码

完成以上三步即可跳转到指定的Activity,跨模块调用同样可行

需要注意的是,每个moudle都需要配置 javaCompileOptions参数

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值