Android: wrong ABI files folder


#1

Hi guys,

I’m using some armv7-a library in my Android HaXe project so I need to build OpenFL project to ARMv7-a architecture. It’s all ok but the problem is – OpenFL always build JNI folder with name “armeabi” despite I set architecture in “project.xml” to “ARMv7-a”:

<architecture name="ARMv7-a" if="android" />

So when I build Android, it can’t find necessary files.

How can I make that “.so” files output folder name (armeabi) corresponds the architecture (armeabi-v7a)?


#2

Currently, the tools support “armv5”, “armv7”, “armv7s”, “x86” and “x86_64” on Android, I believe. The dev version adds support for “arm64”


#3

It’s okey, the problem is just – wrong folder name in built android project. The folder “armeabi” should be “armeabi-v7a” if architecture set to “ARMv7-a” otherwise Android can’t find necessary files if ABI filters are set in Android project to “armeabi-v7a”. I can rename the folder every time when I build OpenFL project, but I thought maybe there is more proper way to resolve this issue?


#4

There were old devices where if you included ARMv7 and not ARMv5 or ARMv6, and used “armeabi-v7a” then the devices could not find the binaries. Perhaps we’re past that now. The tools currently use “armeabi-v7a” only if you also include an older ABI type.

I’ve just fixed this:

You could try and patch it in your Lime install by finding this file under “lime/tools/platforms/” and patching it there, then running lime rebuild tools and trying again


#5

Hi!

Thanks. It works now.