我有一个 Android 应用程序和一个使用 Apache Commons Math 的库。 Apache commons math 是一个相当庞大的库,它使输出的 apk 增大 1MB。
由于我只使用与统计和插值相关的类,因此我对如何减小大小有两个想法:
- 我想从目标 apk 中删除不必要的软件包(但如何删除?)
- 依赖于 apache commons 的 java 库可以是一个 fat-jar (它的 jar 文件将包含 apache-commons:math3 的所有类)。我将从这个 jar 中排除所有未使用的包。
- ProGuard? - 目前不想使用这个
第一个似乎是最简单的,但我仍然不知道如何编写一个删除未使用的包的 gradle 任务。任何示例或链接将不胜感激。 :)
最佳答案
至于第一个选项,由于它是 Apache Commons lib(作为开源分发),因此您始终可以创建自己的分支,从不需要的所有内容中剥离它,重新编译并使用该重新编译的版本(确保更改版本,这样您就不会意外遇到任何奇怪的问题)。虽然可能不是最好的解决方案,但作为最后的手段值得了解。
关于java - 如何从Android中的第三方库中删除多余的包?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30134699/