AndroidStudioでNDKを使う

Android Studioをアップデートする

バージョン1.3からNDKがサポートされるようになったので、まずはAndroid Studioをアップデートする。

メニューの[help]→[Check for Update...]からアップデートを行う。

 

 

Android NDKをダウンロードして場所を指定する

NDKのダウンロードから設定まで、Android Studioから行う事が出来る。

メニューの[file]→[Project Structure...]でウインドウを開く。

 

[SDK Location]ページの[Android NDK location:]とある欄の下の方に、[Download Android NDK]というリンクがあるのでクリックすると、NDKをダウンロードしてくれる。

ダウンロードが終わると、メッセージが出て、[Android NDK location:]欄にパスを自動で入れてくれる。

 

以降は、gradleを使ってc/c++コードをビルドする為の設定。

gradleは正式対応している分けでは内容で、experimental(実験的)の名前が付いた物を使う事になる。

(eclipseでやっていたようにmkファイルを使う方法もあるみたい)

 

 

gradleのバージョン2.5を使う

以下よりgradleをダウンロードし、解凍する。

https://services.gradle.org/distributions

バージョン2.5の場合は「gradle-2.5-all.zip」を使えばいいみたい。

 

メニューの[file]→[settings...]でウインドウを開き、

[Build, Ex…][Build Tools][Gradle]ページを開く。

 

[Project-level Settings]欄で

[Use local gradle distribution]を選択し、

[Gradle home:]へ解凍したパスを指定する。

 

 

 

./build.gradleを書き換える

gradleのclasspathを「gradle-experimental:0.2.0」へ書き換える。

 

buildscript {

    repositories {

        jcenter()

    }

    dependencies {

        //classpath 'com.android.tools.build:gradle:1.2.3'

        classpath 'com.android.tools.build:gradle-experimental:0.2.0'

    }

}

 

allprojects {

    repositories {

        jcenter()

    }

}

 

 

./app/build.gradleを書き換える

「gradle-experimental:0.2.0」へ変更した事で、書式がかなり変わる。

 

apply plugin: 'com.android.model.application'

 

model {

    android {

        compileSdkVersion = 22

        buildToolsVersion = "22.0.1"

 

        defaultConfig.with {

            applicationId = "xxx.xxxx.androidstudiondktest"

            minSdkVersion.apiLevel    = 8

            targetSdkVersion.apiLevel = 22

            versionCode  = 1

            versionName = "1.0"

        }

    }

    android.buildTypes {

        release {

            minifyEnabled = false

            proguardFiles += file('proguard-rules.pro')

        }

    }

   // NDKのモジュール名を追記する

    android.ndk {

        moduleName = "hello-jni"

    }

}

 

dependencies {

    compile fileTree(dir: 'libs', include: ['*.jar'])

    compile 'com.android.support:appcompat-v7:22.2.0'

 

}

 

 

 

下記URLからNDKを使ったサンプルを見る事ができる。

https://github.com/googlesamples/android-ndk