为什么使用armeabi-V7A code在armeabi code?armeabi、V7A、code

2023-09-12 01:27:36 作者:di調

在我目前的项目中,我利用多个.so文件。这些分别位于armeabi和armeabi-V7A文件夹。不幸的是,.so文件之一是6MB,我需要减少文件大小。而不是有一个胖胖的APK文件,我想只使用armeabi文件并删除armeabi-V7A文件夹。

In my current project I make use of multiple .so files. These are located at the armeabi and armeabi-v7a folder. Unfortunately one of the .so files is a 6MB and I need to reduce file size. Instead of having a fat APK file, I would like to use just the armeabi files and remove the armeabi-v7a folder.

据NDK的文档,armeabi-V7A code扩展armeabi code可以包含额外的CPU指令。这一切都超出了我的专业,但我质疑为什么一个人想同时拥有armeabi-V7A和armeabi code。必须有一个很好的理由有两个,对吧?

According to the NDK documentation, armeabi-v7a code is extended armeabi code which can contain extra CPU instructions. This all goes beyond my expertise, but I question why one would like to have both armeabi-v7a and armeabi code. There must be a good reason to have both, right?

在我的测试设备这一切似乎很好地工作。这些都ARM V7 CPU的。它是安全的假设,一切正常了吧?

On my test devices this all seem to work fine. These have ARM v7 CPU's. Is it safe to assume that everything works now?

推荐答案

取决于你的本地code,不过V7A具有硬件浮点运算,这使得一个巨大的差异的支持。 armeabi将正常工作的所有设备,但会慢了很多,也不会利用新设备的CPU性能。不要采取一些基准测试为您的特定应用程序,但在取出armeabi-V7A二进制文件通常不是一个好主意。如果您需要减小尺寸,你可能希望有老年人(armeabi)两个独立的apk和更新(armeabi-V7A)设备。

Depends on what your native code does, but v7a has support for hardware floating point operations, which makes a huge difference. armeabi will work fine on all devices, but will be a lot slower, and won't take advantage of newer devices' CPU capabilities. Do take some benchmarks for your particular application, but removing the armeabi-v7a binaries is generally not a good idea. If you need to reduce size, you might want to have two separate apks for older (armeabi) and newer (armeabi-v7a) devices.

 
精彩推荐
图片推荐