TheRouter Android 组件化改造框架使用教程

TheRouter Android 组件化改造框架使用教程

hll-wp-therouter-android A framework for assisting in the renovation of Android componentization(帮助 App 进行组件化改造的动态路由框架) hll-wp-therouter-android 项目地址: https://gitcode.com/gh_mirrors/hl/hll-wp-therouter-android

1. 项目介绍

TheRouter 是一个帮助 Android 应用进行组件化改造的动态路由框架。它提供了四大核心功能:

  • 页面导航跳转能力(Navigator):支持页面之间的跳转和参数传递。
  • 跨模块依赖注入能力(ServiceProvider):支持跨模块的依赖注入,简化模块间的耦合。
  • 单模块自动初始化能力(FlowTaskExecutor):自动初始化模块,减少手动初始化的工作量。
  • 远程方法动态加载能力(ActionManager):支持客户端应用远程加载方法,增强应用的灵活性。

TheRouter 旨在简化 Android 应用的组件化改造过程,提高开发效率和代码的可维护性。

2. 项目快速启动

2.1 Gradle 配置

在项目的 build.gradle 文件中添加以下配置:

// root build.gradle
classpath 'cn.therouter:plugin:1.2.2'

// app module
apply plugin: 'therouter'

dependencies {
    kapt "cn.therouter:apt:1.2.2"
    implementation "cn.therouter:router:1.2.2"
}

2.2 初始化库

在应用的 attachBaseContext 方法中进行初始化:

@Override
protected void attachBaseContext(Context base) {
    TheRouter.setDebug(true); // 设置 Debug 环境
    super.attachBaseContext(base);
}

2.3 页面参数注入

ActivityFragmentonCreate 方法中进行参数注入:

@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    TheRouter.inject(this);
}

2.4 页面导航

使用 @Route 注解进行页面导航:

@Route(path = "http://therouter.com/home", action = "action://scheme.com", description = "second page", params = ["hello", "world"])
public class HomeActivity extends BaseActivity {
    @Override
    protected void onCreate(@Nullable Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        TheRouter.build("Path")
            .withInt("intValue", 12345678)
            .withString("str_123_Value", "传中文字符串")
            .withBoolean("boolValue", true)
            .withLong("longValue", 123456789012345L)
            .withChar("charValue", 'c')
            .withDouble("double", 3.14159265358972)
            .withFloat("floatValue", 3.14159265358972F)
            .navigation();
    }
}

3. 应用案例和最佳实践

3.1 模块化开发

TheRouter 支持模块化开发,可以将应用拆分为多个模块,每个模块独立开发和测试。模块间的依赖通过 TheRouter 进行管理,减少了模块间的耦合。

3.2 动态路由

通过 TheRouter 的动态路由功能,可以在运行时动态加载和调用方法,适用于需要灵活配置的场景,如 A/B 测试、动态功能开关等。

3.3 依赖注入

TheRouter 提供了跨模块的依赖注入功能,可以在不同模块之间共享服务和数据,简化模块间的通信。

4. 典型生态项目

4.1 Android 组件化框架

TheRouter 可以与其他 Android 组件化框架结合使用,如 Dagger、Koin 等,进一步提升应用的模块化和可维护性。

4.2 动态加载框架

TheRouter 的动态加载功能可以与热修复框架结合使用,实现应用的动态更新和修复。

4.3 自动化测试

TheRouter 的模块化特性使得自动化测试更加容易,可以针对每个模块进行独立的单元测试和集成测试。

通过以上步骤,您可以快速上手 TheRouter,并利用其强大的功能进行 Android 应用的组件化改造。

hll-wp-therouter-android A framework for assisting in the renovation of Android componentization(帮助 App 进行组件化改造的动态路由框架) hll-wp-therouter-android 项目地址: https://gitcode.com/gh_mirrors/hl/hll-wp-therouter-android

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

gitblog_00881

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值