Android 模块开发总结

1 资源冲突
多个子模块中,res/assets 目录下的资源, 最终都在一起
AS 会自动帮我们合并,默认是主模块,然后是后来的模块覆盖之前的子模块
所以,资源名称一定要区分开,不然会有控件找不到的问题
android {
compileSdkVersion 26
// resourcePrefix "file_" //资源前缀约束,会提示错误,但似乎并没有报错
}
resourcePrefix "file_" 设置资源约束,资源名必须以file_开头

2 关于ButterKnife-R2
使用R2的方案,需要配置
project
buildscript {
dependencies {
classpath 'org.greenrobot:greendao-gradle-plugin:3.2.1'
classpath 'com.jakewharton:butterknife-gradle-plugin:8.4.0'
}
}
user 模块
apply plugin : 'com.jakewharton.butterknife'
android {
greendao {
schemaVersion 1
}
}
dependencies {
//butterknife
compile "com.jakewharton:butterknife: $rootProject.ext.butterKnifeVer "
annotationProcessor "com.jakewharton:butterknife-compiler: $rootProject.ext.butterKnifeVer "
//greendao
implementation "org.greenrobot:greendao: $rootProject.ext.greendaoVer "
}
说明:
A bind. onclick butterKnife 注解部分,用R2; 其它部分,使用R
B 直接插件生成,然后修改注释部分为R2, 即可

3 关于数据库;greendao
说明:建议有数据库需求的模块,自建。db文件,和数据结构
一个APP 对应多个db 数据库。

4 关于跳转:
可以通过隐式 intent来实现跳转
在base 中维护跳转 action 的map 表
(模块保持独立,不要互相依赖)

猜你喜欢

转载自blog.csdn.net/qq_42022061/article/details/80762398