-
Notifications
You must be signed in to change notification settings - Fork 209
依赖和配置 AndroidX
xiaojinzi123 edited this page Jun 8, 2019
·
30 revisions
-
app
模块在项目中既是一个壳工程也是一个业务模块.这点务必注意 -
App
会包含其他所有的业务模块 - 而一般工程中会有一个 "BaseModule" 的基础业务模块,每一个业务模块都会依赖 "BaseModule"
下面所有的 <version>
请替换成最新的版本号,不包含v
比如上面最新的为 v1.0
,那么版本号就是 1.0
在 (工程)Project
级别的 build.gradle 中添加 maven 地址:
maven { url 'https://jitpack.io' }
在基础业务模块 BaseModule
或者每一个业务模块中添加依赖:
api 'com.github.xiaojinzi123.Component:component-impl:<version>-androidx'
或者 RxJava2的实现
api 'com.github.xiaojinzi123.Component:component-impl-rx:<version>-androidx'
rx版本可以轻易的让你的路由和服务发现功能结合RxJava,引用 rx 库请自行在项目依赖 RxJava2
下面配置的 HOST
的值可以是随便的一个名字,你只要保证每一个 Module
的名称是唯一的就可以了.
不一定和 Module
名称一样
defaultConfig {
......
javaCompileOptions {
annotationProcessorOptions {
// 配置业务模块的模块名称
arguments = ["HOST": "这里替换成你起的模块名"]
}
}
}
annotationProcessor "com.github.xiaojinzi123.Component:component-compiler:<version>-androidx"
// 如果是 kotlin 模块请使用如下的代码
// kapt "com.github.xiaojinzi123.Component:component-compiler:<version>-androidx"
// 初始化
Component.init(this, BuildConfig.DEBUG);
// 如果你依赖了 rx 版本,需要配置这句代码,否则删除这句
RxErrorIgnoreUtil.tryErrorCatch();
// 注册其他业务模块,注册的字符串是上面各个业务模块配置在 build.gradle 中的 HOST
ModuleManager.getInstance().registerArr("component1","component2","user","help");
if (BuildConfig.DEBUG) {
// 框架还带有检查重复的路由和重复的拦截器等功能,在 `debug` 的时候开启它
ModuleManager.getInstance().check();
}
-dontwarn com.xiaojinzi.component.**
-keep class com.xiaojinzi.component.** {*;}
-keep interface com.xiaojinzi.component.** {*;}