如何解决Android Gradle-除了风味特定的.aar文件之外,还实现共享的.aar文件
我一直在网上寻找解决方案,虽然已经接近,但并没有解决我的问题。
我有3种口味,除了每种口味中使用的一些aar文件之外,我还试图基于运行哪种口味的同一个.aar文件实现3个不同版本。 .aar文件都具有相同名称,但专门设置为用于特定程序包名称。
我在/ libs文件夹中创建了3个带有.aar的Android Studio模块/库,这些是/ app的依赖项。
app /
- / libs(所有口味共享)
flav1Module /
- / libs(仅在app / libs中用在flavor1中)
flav2Module /
- / libs(仅在app / libs中用在flavor2中)
flav3Module /
- / libs(仅在app / libs中用在flavor3中)
我缺少在productFlavor设置中实现这些模块的方法吗?
flavor1{
applicationIdSuffix ".flav1"
resValue "string","app_name","App-Flav1"
}
flavor2{
applicationIdSuffix ".flav2"
resValue "string","App-Flav2"
}
flavor3{
applicationIdSuffix ".flav3"
resValue "string","App-Flav3"
}
}
flavor1Implementation project(':flav1Module')
flavor2Implementation project(':flav2Module')
flavor3Implementation project(':flav3Module')
解决方法
通过执行以下操作,找到了一个看起来像 hacky 的答案:
- 将所有 .aar 文件添加到 libs 文件夹,并相应地重命名了 flavor1/2/3 的每个 .aar 文件(例如“flav1arr.arr”)
- 在 build.gradle 中为每种口味添加了以下内容
flavor1Implementation "name:'flav1aar',ext:'aar'"
这就成功了。不过,我愿意接受任何更好的方法来做到这一点。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。