我正在使用具有最新gradle的最新Android Studio在Java中使用条件编译。

所以我做了一个小测试

    static final boolean compileThisCode = false;
    if (compileThisCode) {
       callALargeClass();
    }


并创建了apk

   static final boolean compileThisCode = true;


由于callALargeClass是一个非常大的类,我本来希望apk的大小会明显不同

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

谁能帮助我了解为什么Java在执行条件编译?

最佳答案

这会影响您的运行时内存消耗。
APK大小取决于您的库和资源(res文件夹)。甚至在具有多个大型3d派对库的项目中,您都可以点击65k limit

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

07-24 12:34