Android Studio:正確引入so文件的方法

方法一:


將libs文件夾下的so文件,通過gradle配置任務編譯成jar文件。

apply plugin: 'com.android.library'

android {
    compileSdkVersion rootProject.ext.compileSdkVersion
    buildToolsVersion rootProject.ext.buildToolsVersion

    defaultConfig {
        minSdkVersion rootProject.ext.minSdkVersion
        targetSdkVersion rootProject.ext.targetSdkVersion
    }


    /** 導入so文件 */
    task nativeLibsToJar(type: Zip, description: "create a jar archive of the native libs") {
        destinationDir file("$projectDir/libs")
        baseName "Native_Libs2"
        extension "jar"
        from fileTree(dir: "libs", include: "**/*.so")
        into "lib"
    }

    tasks.withType(JavaCompile) {
        compileTask -> compileTask.dependsOn(nativeLibsToJar)
    }


}

dependencies {
    provided fileTree(dir: 'libs', include: ['*.jar'])
}


參考資料:http://blog.csdn.net/wulianghuan/article/details/44567001


方法二:

通過插件將so文件依賴到jniLibs文件夾。


參考資料:http://www.jcodecraeer.com/a/anzhuokaifa/Android_Studio/2015/0804/3256.html

插件/開源項目 :https://github.com/nhachicha/android-native-dependencies



方法三:

最佳方法。

android {
    sourceSets.main.jniLibs.srcDirs = ['libs']

    compileSdkVersion rootProject.ext.compileSdkVersion
    buildToolsVersion rootProject.ext.buildToolsVersion

    defaultConfig {
        minSdkVersion rootProject.ext.minSdkVersion
        targetSdkVersion rootProject.ext.targetSdkVersion
    }

}









發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章