为什么使用条件编译使apk大小相同

时间:2016-04-21 18:50:31

标签: java android compilation

我在Java中使用带有最新gradle的最新Android Studio进行条件编译。

所以我使用

进行了一些测试
    static final boolean compileThisCode = false;
    if (compileThisCode) {
       callALargeClass();
    }

并使用

创建了apk
   static final boolean compileThisCode = true;

我原本期望apks的大小差异很大,因为callALargeClass是一个非常大的类

但是compileThisCode = truecompileThisCode = false的apks具有相同的大小

有人可以帮我理解为什么Java会进行条件编译吗?

1 个答案:

答案 0 :(得分:1)

这会影响运行时内存消耗。 Apk大小取决于您的库和资源(res文件夹)。在具有多个大型3D派对库的项目中,即使是“hello world”,也可以点击65k limit

您可以通过ProGuard config排除一些未使用的依赖项。