我一直在研究设计android库的正确方法。我的问题是,如何避免在特定构建中放置所有源代码(对于所有构建变量)。 例如 , 我目前的方法是简单检查像
If(BuildConfig.buildtype=debug){
//we are in debug mode
New debugObject;
} else{
//we are in release mode
New releaseObject;
}
我当然可以使用不同的sourceSets,但.java
类仍保存在整个代码库中。
我担心当人们反转代码时,由于代码的所有组合都在代码库中,他们可以围绕代码并以某种方式绕过逻辑。
当我们需要更改沙箱和生产的特定行为时,最佳做法是什么?当然,biz逻辑总是一样的,只是沙盒可能使用不同的配置而不是prod来做某种行为。