作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个 Android 应用程序,比如说,三种风格。第一个叫做 free
.第二种口味称为paid
.第三种口味叫做b2bClient
.free
和 pro
需要一个库(让它成为 Google Analytics),并且,为了避免代码重复,辅助类 GoogleAnalyticsHelper
对 Google Analytics 的周围调用位于主要源集中。但是b2bClient
不使用图书馆。减小 b2bClient
的大小APK,我没有将库包含在 Gradle 中的依赖项中。当我运行 assembleB2bClient
时会导致编译错误这很明显(构建系统只是没有来自 com.google.android.gms.analytics
的类。
我尝试排除 GoogleAnalyticsHelper
当 flavor 为 b2bClient
时来自源集像这样:
sourceSets {
main {
android.productFlavors.all { flavor ->
if (flavor.name == "b2bClient") {
java.exclude("**/GoogleAnalyticsHelper.java")
}
}
}
}
最佳答案
创建一个库模块说analytics
其中包含 GoogleAnalyticsHelper
的代码.现在添加 analytics
仅用于 flavor 的库需要 analytics
行为。
关注 this link仅包含特定 flavor 的库。
关于android - 如何在我的应用程序中为两种风格保留 Java 文件并为其他人排除它?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46907318/
我是一名优秀的程序员,十分优秀!