在Android中,靜態(tài)庫(也叫做靜態(tài)鏈接庫)是一種編譯好的二進制文件,包含了預編譯的代碼和數(shù)據(jù)。靜態(tài)庫可以在鏈接時被靜態(tài)地編譯到一個可執(zhí)行文件或者動態(tài)庫中。
以下是在Android中創(chuàng)建和使用靜態(tài)庫的步驟:
創(chuàng)建靜態(tài)庫項目:在Android Studio中,選擇"File" -> “New” -> “New Module”,然后選擇"Static Library"。按照向?qū)У牟襟E填寫項目名稱和其他相關(guān)信息,點擊"Finish"完成創(chuàng)建。
編寫代碼:在創(chuàng)建的靜態(tài)庫項目中,編寫你的代碼??梢栽?quot;src/main"目錄下的"cpp"文件夾中添加C/C++代碼文件。
配置CMakeLists.txt:在"src/main/cpp"目錄下,創(chuàng)建一個名為CMakeLists.txt的文件。在該文件中,配置你的項目的編譯選項和依賴庫。例如:
cmake_minimum_required(VERSION 3.4.1)
add_library( # Sets the name of the library.
native-lib
# Sets the library as a shared library.
SHARED
# Provides a relative path to your source file(s).
src/main/cpp/native-lib.cpp )
編譯項目:點擊"Build" -> “Make Project”,將會編譯你的靜態(tài)庫項目。編譯完成后,你可以在"build/intermediates/cmake/debug/obj"目錄下找到生成的靜態(tài)庫文件(以.so為擴展名)。
在其他項目中使用靜態(tài)庫:在其他Android項目中,可以使用靜態(tài)庫。將生成的靜態(tài)庫文件拷貝到你的項目中的"libs"目錄下(如果沒有該目錄,可以手動創(chuàng)建)。然后,在你的項目的build.gradle文件中添加以下配置:
android {
// ...
sourceSets {
main {
jniLibs.srcDirs = ['libs']
}
}
// ...
}
static {
System.loadLibrary("native-lib");
}
// ...
public native String stringFromJNI();
以上就是在Android中創(chuàng)建和使用靜態(tài)庫的步驟。希望對你有所幫助!