Sono presenti due librerie native di terze parti, ad esempio libfoo.so
e libbar.so
. Sto avendo difficoltà a caricare entrambe queste librerie. Li ho copiati nella cartella libs
sotto il corretto arco della CPU (armeabi, mips e x86) e impostato la directory Native libs
sotto Struttura del progetto> Moduli> Android> Struttura per puntare a questa cartella di libs. Posso caricare solo una libreria ma non l'altra. Se provo a caricarli uno alla volta (eliminando le altre librerie), funziona bene. L'eccezione che sto ricevendo è:Come aggiungere più file nativi di librerie (.so) in IntelliJ
java.lang.UnsatisfiedLinkError: Couldn't load foo from loader dalvik.system.PathClassLoader
Cosa devo fare per avere IntelliJ o runtime di Android per trovare entrambe queste librerie native?
Come li hai caricati? – bricklore
Hai guardato nel file .APK risultante per vedere cosa viene inserito lì? È solo un file zip: aprilo con 7-Zip o con qualsiasi altro gestore di file zip e dovresti vedere tutti i file .so lì. – SomeCallMeTim
@SomeCallMeTime: Grazie amico per avermi insegnato come fare riferimento alle librerie all'interno di un apk. Ho riscontrato un problema con java.lang.UnsatisfiedLinkError: non è stata trovata alcuna implementazione per la mappa autonavi di androidNewInstance. Sto aggiungendo due librerie jni di terze parti nel mio codice. e ho scoperto che una lib supporta più architetture cpu e una supporta solo armeabi, quindi ho rimosso le altre architetture da quella che supporta più CPU e metto solo i file armeabi nel mio progetto e ora funziona bene –