ADT(Eclipse)与Android Studio:APK文件大小差异多大才算正常?

8

我将一个ADT项目导入到最新版本的Android Studio(0.6.1)。两个项目共享相同的代码和库,也使用同样的ProGuard设置进行了清除和编译。

但是ADT APK文件的大小为1.8 MB,而Android Studio APK文件的大小为2.7 MB。

这种50%的APK文件大小增加是否被认为是正常的,因为Android Studio仍处于早期访问预览阶段,或者我应该能够获得几乎相同的APK文件大小?

(更新:我刚刚解压了APK文件:所有文件的大小几乎相同,但区别在于class.dex文件,在ADT上为1.2 MB,在Android Studio上为4.4 MB。)


1
你尝试过解压apk文件并查看差异吗? - hoomi
你尝试过解压apk文件并查看差异吗? - hoomi
文件大小的差异来自于classes.dex文件,在ADT上为1.2 MB,在Android Studio上为4.4 MB。哎呀,这是一个巨大的差异。我认为这不能被视为正常吧? - Steffen
有趣!!我以前从未注意到这一点。这可能是Gradle特定的事情吗?也许它有更多的开销? - hoomi
1
逆向工程工具可以解压classes.dex文件,并允许您比较其中的内容。 - Chris Stratton
感谢您引导我走向正确的方向。反向工程(Android Studio)代码没有混淆。我首先需要更改应用程序模块的构建变体。 - Steffen
1个回答

6
通过反向工程classes.dex文件,我发现我的代码在Android Studio中没有被混淆。尽管在我的build.gradle中通过runProguard true和在生成签名APK文件前的复选框中启用了ProGuard。
我不得不将应用程序模块的构建变量从debug更改为release,具体描述可以在这里找到。
现在两个APK文件的大小几乎相同(1.812 vs. 1.817 MB)。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接