Runtime.LoadLibrary(String) 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
載入由 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 式庫與虛擬機靜態連結,則會呼叫該函式庫匯出的 JNI_OnLoad_libname 函式。 更多細節請參閱 JNI規範 。
否則,libname 參數會從系統函式庫位置載入,並依實作方式映射到原生函式庫映像檔。
首先,如果存在安全管理器,其 checkLink 方法會以 作為 libname 參數來呼叫。 這可能導致安全例外。
此方法是 System#loadLibrary(String) 慣用且方便的手段。 若要在類別實作中使用原生方法,標準策略是將原生程式碼放入函式庫檔案(呼叫 LibFile),然後放入靜態初始化器: <blockquote>
static { System.loadLibrary("LibFile"); }
<類別聲明中的 /blockquote> 。 當類別被載入並初始化時,也會載入本地方法所需的原生程式碼實作。
若此方法多次以相同函式庫名稱呼叫,第二次及後續呼叫將被忽略。
的 java.lang.Runtime.loadLibrary(java.lang.String)Java 檔。
本頁部分內容為基於 Open Source Project 所創建與分享的作品,並依授權條款所描述的使用進行修改。