Condividi tramite


Runtime.LoadLibrary(String) Metodo

Definizione

Carica la libreria nativa specificata dall'argomento libname .

[Android.Runtime.Register("loadLibrary", "(Ljava/lang/String;)V", "GetLoadLibrary_Ljava_lang_String_Handler")]
public virtual void LoadLibrary (string? libname);
[<Android.Runtime.Register("loadLibrary", "(Ljava/lang/String;)V", "GetLoadLibrary_Ljava_lang_String_Handler")>]
abstract member LoadLibrary : string -> unit
override this.LoadLibrary : string -> unit

Parametri

libname
String

nome della libreria.

Attributi

Eccezioni

se la libreria non può essere caricata, perché non viene trovata o perché c'è qualcosa di sbagliato.

Commenti

Carica la libreria nativa specificata dall'argomento libname . L'argomento libname non deve contenere un prefisso specifico della piattaforma, un'estensione di file o un percorso. Se una libreria nativa chiamata libname è collegata in modo statico alla macchina virtuale, viene richiamata la funzione JNI_OnLoad_libname esportata dalla libreria. Per altri dettagli, vedere la specifica JNI.

In caso contrario, l'argomento libname viene caricato da un percorso di libreria di sistema e mappato a un'immagine della libreria nativa in modo dipendente dall'implementazione.

In primo luogo, se è presente un gestore della sicurezza, il checkLink relativo metodo viene chiamato con libname come argomento . Ciò può comportare un'eccezione di sicurezza.

Il metodo System#loadLibrary(String) è il mezzo convenzionale e pratico per richiamare questo metodo. Se i metodi nativi devono essere usati nell'implementazione di una classe, una strategia standard consiste nell'inserire il codice nativo in un file di libreria (chiamarlo LibFile) e quindi inserire un inizializzatore statico: <blockquote>

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

</blockquote> all'interno della dichiarazione di classe. Quando la classe viene caricata e inizializzata, verrà caricata anche l'implementazione del codice nativo necessaria per i metodi nativi.

Se questo metodo viene chiamato più volte con lo stesso nome di libreria, la seconda e le chiamate successive vengono ignorate.

Documentazione java per java.lang.Runtime.loadLibrary(java.lang.String).

Le parti di questa pagina sono modifiche basate sul lavoro creato e condiviso dal progetto Open Source Android e usato in base ai termini descritti nella licenza Creative Commons 2.5 Attribuzione.

Si applica a