Do I Need to Include All Four CPU Architectures in My Android APK File?

The PlugPDF SDK for Android ships with JNI libraries targeting four different CPU architectures: ARM, ARMV7, X86 and MIPS.

Do I Need to Include All Four CPU Architectures in My Android APK File?

The total file size is about 38 MB and includes the following:

  • arm64-v8a: 10.6MB
  • armeabi: 8.2MB
  • armeabi-v7a: 8.2M
  • mips: 11.5MB
  • x86: 10.5MB
  • x86_64: 10.9MB

Of course, you are not forced to include all CPU architectures; just pick the ones required by your application and remove the unnecessary files from the APK file in order to optimize the disk space.

armeabi

Since this library is mainly used by ARMv5 devices and older CPUs, it can be removed from your APK if you are not targeting such old devices.

armeabi-v7a

Most devices will be ok with this library, which is for ARMv6 onwards. The newest CPUs are actually supported by armeabi too, though suffering a slight loss of performance. If performance is not a key resource in your project, just keep armeabi which will work in all ARM-based devices.

mips

MIPS CPU-based devices are difficult to find in the market today. On the other hand, there are very few applications implemented for this CPU architecture. So if you don’t need to support MIPS-based Android devices, feel free to remove this library from your APK.

x86

If your app is intended to work on tablets we recommend including this library; otherwise remove it from your APK. The difference may not be recognizable on the smartphone side of things, but there are a couple of Intel-powered Android tablets out there, such as the ASUS MeMO Pad or the Dell Venue 7, that will take advantage of it.

We hope that this information will help you to create a smaller APK depending on your particular situation.

0 replies

Leave a Reply

Want to join the discussion?
Feel free to contribute!

Leave a Reply

Your email address will not be published. Required fields are marked *