dalvik.system.PathClassLoader kann jni auf Intel-Geräten nicht finden

Ich habe ein Problem, bei dem der dalvik.system.PathClassLoader meine jni-Datei auf Intel-Geräten nicht finden kann. Ich denke, es hat mit der Struktur einer AAR-Abhängigkeit zu tun, die ich habe, weil die JNI-Datei ohne Probleme gefunden wird, sobald ich diese Abhängigkeit entfernt habe. Meine aar-Abhängigkeit hat x86- und arm-Bibliotheken und mein Projekt hat nur arm-Bibliotheken.

Die Ordnerstruktur lautet:

Mein Projek

src jniLibs armeabi libLibraryA.so

Mein AAR-Abhängigkeitsprojekt hat:

src jniLibs armeabi libLibraryB.so x86 libLibraryB.so

Mit dieser Struktur wird libLibraryA.so auf x86-Geräten nicht gefunden. Ich bin mir nicht sicher, ob es sich um ein Problem mit der Gradle-Verpackung handelt oder ob es sich um ein Dalvik / Runtime-Problem handelt. Ich weiß nicht, wohin ich als nächstes gehen soll. Der Fehler, den ich erhalte, ist:

  FATAL EXCEPTION: main 
  Process: com.project, PID: 10850 
 java.lang.UnsatisfiedLinkError: dalvik.system.PathClassLoader[DexPathList[[zip file "/base.apk"],nativeLibraryDirectories=[/lib/x86, /vendor/lib, /system/lib]]] couldn't find "libLibraryA.so" 
 at java.lang.Runtime.loadLibrary(Runtime.java:366) 
 at java.lang.System.loadLibrary(System.java:989)`

Ich weiß, dass das Problem behoben werden kann, indem in meinem Projekt ein x86-Ordner erstellt und libLibraryA.so in diesen kopiert wird. Weiß jemand, ob gradle das für mich erledigen kann / soll? Ist es sicher, eine arm-kompilierte Bibliothek für die Verwendung auf Intel-Geräten in den x86-Ordner zu legen, oder würde dies die Laufzeitübersetzung beeinträchtigen? Ich habe auf dem Nexus Player Probleme gesehen, bei denen unsere vom Arm kompilierte Bibliothek nicht gelesen werden kann.

Antworten auf die Frage(2)

Ihre Antwort auf die Frage