微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

android – 减少具有.so文件的apk大小

在我们的 Android应用程序中,我们有两个.so文件一个用于x86,另一个用于ARM.它们非常大,并且将.apk的大小从7 MB增加到11 MB.

由于.so文件是运行时实体,因此它们必须位于.apk文件中.

有没有办法可以减少.so文件的大小或以更好的方式在我的.apk中使用/构建它?

我从这里得到一点http://developer.sonymobile.com/2012/01/31/tips-for-reducing-apk-file-size/,即从本机代码删除调试符号.

解决方法

Play商店允许您使用 upload separate APKs per CPU architecture.所以你将拥有一个ARM APK和一个x86 APK,而不是一个带有两者的APK.

使用Gradle for Android设置此类APK相对简单 – 为每个架构使用单独的product flavor.我认为在Gradle for Android之外有这样做的方法,虽然我怀疑它涉及更多.

另一种方法是简单地不分发x86 .so.现代x86驱动的Android设备往往具有libhoudini,允许它们使用ARM .so NDK库.但是,与Android模拟器一样,在x86上模拟ARM很慢,因此您需要测试并查看您的应用程序在x86上是否可以接受.

并且,正如Stratton先生所建议的那样,特别是如果这些库是你的库,看看你是否可以修剪库的大小. ProGuard不像剥离Java代码那样剥离本机代码.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐