3 가지 맛의 Android 앱이 있습니다. 첫 번째 것은 free
입니다. 두 번째 맛은 paid
입니다. 그리고 세 번째 풍미는 b2bClient
입니다.자바 파일을 두 가지 맛으로 유지하고 내 앱에서 다른 파일을 제외시키는 방법은 무엇입니까?
free
및 pro
에는 코드가 중복되지 않도록 라이브러리 (Google 애널리틱스로 지정)가 필요하며 Google 애널리틱스 호출을 둘러싼 도우미 클래스 GoogleAnalyticsHelper
이 기본 소스 집합에 있습니다. 그러나 b2bClient
은 라이브러리를 사용하지 않습니다. b2bClient
APK의 크기를 줄이기 위해 Gradle의 종속성에 라이브러리를 포함시키지 않습니다. 내가 분명하다 assembleB2bClient
이 (빌드 시스템은 단지 com.google.android.gms.analytics
에서 수업이없는 실행하면 컴파일 오류가 발생
나는 맛이 같은 b2bClient
때 소스 세트에서 GoogleAnalyticsHelper
을 제외하려고했습니다.
sourceSets {
main {
android.productFlavors.all { flavor ->
if (flavor.name == "b2bClient") {
java.exclude("**/GoogleAnalyticsHelper.java")
}
}
}
}
역시 작동하지 않았다
. 같은 오류가. 특정한 맛에 대한 주요 소스 세트에서 클래스를 제외 할 수 있습니까?
GoogleAnalyticsHelper 클래스가 포함 된 라이브러리를 만들고이 라이브러리 모듈을 세 가지 맛에는 포함하고 b2bClient 풍미에는 포함시키지 않는 이유는 무엇입니까? –
@SagarTrehan 당신이 당신의 코멘트를 대답으로 변환한다면, 나는 그것을 받아 들일 것이다 –
게시 된 답변. 받아주세요. –