Android(安卓)组件化在公用Module里实现多渠道打包配置
16lz
2021-01-26
优化项目时,项目组件化实现下用通常方式来实现多渠道存在问题:
通用Module无法引用到主模块app下的渠道配置信息,需要另作配置,
为此做个记录:
主Module下配置渠道信息
android { .... buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } debug { signingConfig signingConfigs.release } } //配置渠道 productFlavors { test1 {...} test2 {...} test3 {...} }}//这里自定义关键字来获取指定渠道来编译configurations { test1DebugApi test2DebugApi test3DebugApi test1ReleaseApi test2ReleaseApi test3ReleaseApi}//配置的格式:自定义关键字 project(path: ':通用Module', configuration: '对应的渠道')dependencies { ... test1DebugApi project(path: ':libary', configuration: 'test1Debug') test2DebugApi project(path: ':libary', configuration: 'test2Debug') test3DebugApi project(path: ':libary', configuration: 'test3Debug') test1ReleaseApi project(path: ':libary', configuration: 'test1Release') test1ReleaseApi project(path: ':libary', configuration: 'test2Release') test1ReleaseApi project(path: ':libary', configuration: 'test3Release')}
子Module配置:
android { .... buildTypes { release {...} debug {...} } //配置渠道 productFlavors { publishNonDefault true//子Module里必须配置 test1 {...} test2 {...} test3 {...} }}dependencies { ...}
sync项目后,在Build Variants中选择不同渠道包子Module即可自动改变成所选择的渠道
如上
欢迎探讨
更多相关文章
- Flutter Android(安卓)Studio开发环境的搭建
- [置顶] cocos2d-x 2.x版本之win32 window移植android 环境搭配
- 创建一个ArcGIS for Android(安卓)新项目并显示出本地的地图
- Android之FileProvider :通过FileProvider来获取content uri
- android:configChanges="keyboardHidden|orientation"配置
- Android(安卓)真实 简历
- 最近项目里碰上了饼图,顺便整理了下几种Android饼图,以作参考
- Android(安卓)SlidingMenu 布局实现
- [置顶] Android项目的错误异常收集日志记录