ついにNDK環境構築へ

環境確認。

「File」の「Project Structure」を選択し、設定画面を表示させてます。

ここで「SDK Location」の設定で「Android SDK location」「JDK location」「Android NDK location」が設定されているか確認します。

注意:JDKがちゃんと1.7.0_79を指定しているか確認してください。
NDKはインストールされていないと、この画面からそのまま、インストールが可能です。

build.gradle(project:MyApplication)の設定

画面のbuild.gradle(project:MyApplication)を開きます

中身を編集

buildscript {
    repositories {
       jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle-experimental:0.2.0'
    }
}

allprojects {
    repositories {
        jcenter()
    }
}

build.gradle(Module:app)の設定

build.gradle(Module:app)を選択します。

中身を編集

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

model {
    android {
        compileSdkVersion = 22
        buildToolsVersion ="22.0.1"

        defaultConfig.with {
            applicationId = "sample01.example.com.myapplication"
            minSdkVersion.apiLevel      = 3
            targetSdkVersion.apiLevel   = 22
        }
    }

    android.ndk {
        moduleName = "MainNative"
    }
    android.buildTypes {
        release {
            minifyEnabled = false
            proguardFiles  += file('proguard-rules.txt')
        }
    }
    android.productFlavors {
        create("arm") {
            ndk.abiFilters += "armeabi"
        }
        create("arm7") {
            ndk.abiFilters += "armeabi-v7a"
        }
        create("arm8") {
            ndk.abiFilters += "arm64-v8a"
        }
        create("x86") {
            ndk.abiFilters += "x86"
        }
        create("x86-64") {
            ndk.abiFilters += "x86_64"
        }
        create("mips") {
            ndk.abiFilters += "mips"
        }
        create("mips-64") {
            ndk.abiFilters += "mips64"
        }
        // To include all cpu architectures, leaves abiFilters empty
        create("all")
    }
    android.sources {
        main {
            jni {
                source {
                    srcDirs = [file("src/main/jni"), file("ndk")]
                }
            }
        }
    }
}

この設定でまずはコンパイルできるとみてみます。