Errore System.loadLibrary ()

Ho compilato con successo una libreria di c ++ con la toolchain ndk-Standalone di android, ho creato un nuovo progetto di applicazioni Android in Eclipse e quando ho messo mylib.so nella cartella jni ed eseguito comandi ndk-build funziona bene

Prebuilt : mylib.so <= jni/ Install : mylib.so => libs/armeabi/mylib.so 

Ma quando aggiungi

  • Come impostare manualmente il drawableRight su Android Edittext?
  • ListView con customAdapter non aggiornato quando viene chiamata notifyDataSetChanged?
  • Come impostare diversi tasti di background per la tastiera personalizzata di Android
  • EventBus - La class Subscriber e le sue classi super non dispongono di methods pubblici con l'annotazione @subscribe
  • Come utilizzare AsyncTask per mostrare un ProgressDialog durante il lavoro di background in Android?
  • BitmapFactory restituisce un'image più grande della sorgente
  •  static{ System.load("/data/data/my_package/lib/mylib.so"); } 

    ho avuto un errore nel dicendo logcat

      AndroidRuntime Caused by: java.lang.UnsatisfiedLinkError: Cannot load library: reloc_library[1306]: 36 cannot locate 'xmlCleanupParser'...`` 

    l'ho scoperto ma non ho trovato alcun modo per risolvere questo problema.

  • Nessuna versione memorizzata nella cache di com.android.tools.build:gradle:0.9.1 disponibile per la modalità offline
  • Come rimuovere la sottoscrizione dall'elenco dei prodotti nella console di sviluppo e qual è il suo effetto sui vecchi utenti sottoscritti?
  • Errore di OutOfMemory Android sulla creazione di bitmap
  • come fermare Handler in Android?
  • Metti un filatore di progresso in un SearchView?
  • Zoom e Panning ImageView Android
  • 5 Solutions collect form web for “Errore System.loadLibrary ()”

    Recentemente ho riscontrato lo stesso errore. Dopo aver provato decine di suggerimenti da SO, ho finalmente capito che l' errore era nel mio codice nativo. anche se android ndk lo aveva compilato senza problemi / avvertimenti.

    Prova a scrivere una semplice function principale per testare il tuo codice nativo e compilare con g ++ / gcc (o qualcosa di simile) per verificare errori.

    So che è troppo tardi per l'asker, ma spero che qualcun altro lo trova utile.

    La gente per lo più ha dimenticato il tag "lib" del prefisso nome della libreria. Quindi, se hai "libusb.so" il tuo codice deve essere System.loadLibrary ("usb") …

    Se si dispone della libreria nativa compilata (il file .so ) nella directory lib/ -directory, è ansible fare riferimento a esso senza utilizzare il path completo:

     static{ System.load("mylib"); } 

    Come mostrato nel tutorial .


    Controlla per impostare il pacchetto appropriato nel file di intestazione: come risolvere il java.lang.UnsatisfiedLinkError in NDK in Android?

     try { System.load("/data/data/<package name>/lib/libsample-jni.so"); } catch (UnsatisfiedLinkError e) { System.loadLibrary("<sample-jni>"); //remove lib and .so from name } 

    questo ti aiuterà, Pls. dai un'occhiata.

    Specificare il file .so come segue.

      static { System.loadLibrary("mylib"); } 

    Spero che questo ti aiuterà.

    L'Android è un fan Android di Google, tutto su telefoni Android, Android Wear, Android Dev e applicazioni Android Games e così via.