Tuesday 15 June 2010

android - Which architectures are required when implementing NDK libraries? -



android - Which architectures are required when implementing NDK libraries? -

i integrating 3rd party api android application , must include ndk libraries. using android studio w/gradle , putting native libraries under:

src/main/jnilibs/

my question this: have provided '.so' libraries under subdirectories:

armeabi/ mips/ x86/

do need include of these directories under jnilibs in app?

the implementation instructions specified 'armeabi', not sure why other architectures provided. mips directory 3.2 mb , x86 directory 6mb, not want bundle these in app if not necessary. not sure for.

mips-powered devices take relatively little market share these days, , low-end (primarily in terms of retail price) segment of market. app may fit niche, or may not interested pursue chance (note marketing approach , technical challenges different top-end , low-end targets).

on other end, intel-based devices saw, have decent arm emulation built-in, purpose compensate poor coverage of platform developers of native apps. so, if not concerned performance, can painlessly drop x86 support.

actually, might more of import provide armv7-a version of native libs, because utilize of advanced instruction set (especially neon) may boost performance of app vast bulk of users (most of modern tablets , phone these days come 1 of chipsets back upwards these).

furthermore, in less month, new abis come in market: 64-bit intel , arm devices, e.g. nexus 6, running android 5.0 lollipop.

but ultimately, primary concern size of apk file millions of users downloading play store unnecessarily huge. resolve this, there different technique, allows split apk , upload play store separate versions, 1 each abi. trick version numbers should managed carefully, allow smooth upgrades users of each platform. here yours proposed (and ashwin s ashok improved) version numbering scheme helps manage task.

android android-ndk

No comments:

Post a Comment