1

I'm using two libraries in my Android App:

  1. TensorFlow
  2. QihanOpenSDK_1.1.8.0.aar

Apparently the second one only has an armeabi version of the libuvcNative.so. As a result, I did this.

TensorFlow on the other hand does not offer a prebuilt binary for that architecture. This gave me the following error when trying to use TensorFlow:

java.lang.RuntimeException: Native TF methods not found; check that the correct native libraries are present in the APK.

To correct this, I would have to build TensorFlow for the armeabi version myself, according to this post. As I haven't done this before, I ran into a lot of problems following various instructions.

So my question: Is this the only way to go? As I would have to spend a lot of time in the build process itself, I want to make sure that there is no alternative solution.

Thanks!

Peter
  • 19
  • 1
  • 9
  • The issues really are due to the fact that there is missing versions of both and you can't exclude one of them. I believe that Android is moving away from the support of the armeabi library structure and will be deprecating it out. Ideally QihanOpenSDK1_1.1.8.0.aar would remove its armeabi and provide additional ones, or you would manually remove it's armeabi if armeabiv7 etc. exist as well. This will be more forward compatible. But you might not have this as an option. If developers are not providing additional builds for their library, they are going to hinder your progress. – Jay Snayder Jul 13 '18 at 10:00
  • You will have to find a way to not mix and match so that your libraries are all using the same builds. That might mean doing what you mentioned. – Jay Snayder Jul 13 '18 at 10:02
  • Thank you for your response @JaySnayder. I contacted the developers but I'm not sure if they will alter it and how much time this would take. Regarding the build process, I probably have to ask a few more questions here on stackoverflow. – Peter Jul 13 '18 at 12:11

0 Answers0