Runtime.LoadLibrary(String) 方法

定义

加载由参数指定的 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

参数

libname
String

库的名称。

属性

例外

如果无法加载库,要么是因为找不到库,要么是因为库有问题。

注解

加载由参数指定的 libname 本机库。 该 libname 参数不得包含任何特定于平台的前缀、文件扩展名或路径。 如果调用 libname 的本机库与 VM 静态链接,则调用库导出的JNI_OnLoad_libname 函数。 有关更多详细信息, 请参阅 JNI 规范

否则,从系统库位置加载 libname 参数,并以与实现相关的方式映射到本机库映像。

首先,如果有安全管理器,则使用其参数调用libnamecheckLink方法。 这可能会导致安全异常。

System#loadLibrary(String)该方法是调用此方法的传统和便捷方法。 如果要在类的实现中使用本机方法,则标准策略是将本机代码放入库文件(调用它 LibFile),然后放置静态初始值设定项: <blockquote>

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

<类声明中的 /blockquote> 。 加载和初始化类时,还将加载本机方法所需的本机代码实现。

如果使用同一库名称多次调用此方法,则会忽略第二次和后续调用。

适用于 . 的 java.lang.Runtime.loadLibrary(java.lang.String)Java 文档

本页的某些部分是根据 Android 开放源代码项目创建和共享的工作进行的修改,并根据 Creative Commons 2.5 属性许可证中所述的术语使用。

适用于