如何在Android Studio中導入JNI生成的.so庫


由於在原來的ADT的Eclipse環境中,用ndk_build工具生成了相應的各個.so庫文件之后,eclipse工具就會自動把這些庫導入到apk中。而Android Studio目前為止(0.86版本)還無法做到那么自動,但是我們可以通過以下方式進行。


首先在Android Studio工程的app目錄下創建整個jni目錄,jni目錄里寫Android.mk、Application.mk以及各類C/C++和匯編源文件。然后跟原來一樣,用ndk_build工具去編,然后工具會自動生成libs目錄,里面還有每個你在Application.mk里所指定處理器架構的so文件。


完成之后,編輯app目錄下的build.gradle文件,為其添加以下代碼:

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

完整的build.gradle文件如下所示:

apply plugin: 'com.android.application'

android {
    compileSdkVersion 20
    buildToolsVersion "20.0.0"

    defaultConfig {
        applicationId "com.adwo.gamecenter.civetcoffeegamecenter"
        minSdkVersion 9
        targetSdkVersion 20
        versionCode 1
        versionName "1.0"
    }
    buildTypes {
        release {
            runProguard false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
    sourceSets {
        main {
            jniLibs.srcDirs = ['libs']
        }
    }
}

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile 'com.android.support:appcompat-v7:20.0.0'
}

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM