2

我阅读了 bin 文件夹中的 apk 文件和通过 Eclipse 中的 Export 选项创建的 apk 文件有什么区别?但我想知道导出 apk 和在 eclipse 的 bin 文件夹中生成的构建 apk 在性能上是否有任何差异

4

3 回答 3

1

ProGuard 仅在导出 APK 上运行,如此评论中对您的链接问题所述。

ProGuard 优化,如本文所述可以通过一些优化来提高应用程序的速度,但主要用于减小大小(因为 ProGuard 可以去除未使用的函数等)。

于 2013-02-25T19:07:37.643 回答
1

如果您遵循指南并将所有调试语句包含在包装器中,则性能会有非常小的差异,例如:

if(BuildConfig.DEBUG) {
    //log
} 

即使你有,性能差异对人类来说也可以忽略不计。

除此之外,唯一的区别在于用于签署 apk 的密钥库和BuildConfig.DEBUG布尔值。

导出 apk 还会在其上运行ProGuard工具,该工具可用于混淆和清理代码和包含的库。这可能会导致性能略有提高和/或 apk 文件大小减小。

于 2013-02-25T19:03:58.830 回答
1

bin目录下生成的apk主要用于调试目的。您的BuildConfig.DEBUG变量仍设置为 true,因此如果您附加了任何日志记录或调试消息,它们将执行。导出时,您的 apkBuildConfig.DEBUG设置为 false,跳过日志记录和调试消息。它还通过 proguard 运行您的 apk,如果配置正确,它可以删除未使用/无法访问的代码和库依赖项,如果您愿意,还可以混淆您的应用程序。最后,您将拥有一个更精简、更高效的 apk。

于 2013-02-25T19:04:33.963 回答