admin 发表于 2018-9-30 14:38:11

2018-09-30 对Android SDK包进行瘦身,减少打包后APK文件的大小

从V7.2版本开始,AnyChat研发团队对AnyChat for Android SDK进行了瘦身,打包后的APK文件大小可缩减近1/3。

Android移动终端的CPU主要为ARM架构,相比于PC端的x86架构,其功耗更低、体积更小,随着技术的不断迭代,ARM CPU的架构也在不断更新,从早期的ARMv5、ARMv6、ARMv7以及最新的ARMv8等,性能越来越强。

其中ARMv5、ARMv6是Android 2.x年代主流的CPU架构,后期随着技术的迭代,在Android 4.x年代开始,ARMv7逐渐变成主流,在当下Android 8.x为主的环境下,移动CPU架构也过渡到了ARMv8,指令集位数也由32bit扩展到了64bit。

不同的ARM架构对应不同的指令集,特别是AnyChat会使用底层的CPU硬件加速能力以提高多媒体处理效率,所以不同的指令集需要加载不同的动态库,在AnyChat for Android SDK v7.2之前版本的SDK包里面,一直兼容了所有的CPU架构,对应关系如下:
libs\armeabi\libmediautil_v6.so          (适用于ARMv5、ARMv6的指令集)
libs\armeabi\libmediautil_v7.so          (适用于ARMv7的指令集)
libs\armeabi-v8a\libmediautil_v8.so    (适用于ARMv8的指令集)

兼容更多的CPU架构,意味着SDK包的体积在成倍增加,考虑到目前市面上移动终端的设备类型,低端的CPU架构已经被淘汰,AnyChat开发团队决定从AnyChat for Android SDK v7.2版本开始,在标准SDK包里面放弃对ARMv5、ARMv6 CPU架构的支持,即不支持Android 2.x操作系统,由此可缩减近1/3的APK体积。

最新版本的SDK包里面将不再包含libmediautil_v6.so库,如果您还需要使用ARMv5、ARMv6等早期的CPU架构,请联系我们,我们单独为您提供。
页: [1]
查看完整版本: 2018-09-30 对Android SDK包进行瘦身,减少打包后APK文件的大小