如何在Android Studio中使用此Gradle脚本?

时间:2013-11-25 01:05:51

标签: android android-ndk gradle

我发现这个为Android工作室构建的gradle脚本允许使用NDK,直到团队可以创建一个官方(更容易理解)的方式来实现这一点。我真的不明白它是如何工作的,或者它如何与普通的gradle脚本联系起来,因为我还是这个IDE的新手。任何人都可以向我解释一下吗?

脚本是:

    //////////////
    // NDK Support
    //////////////
    // If using this, Android studio will fail run the following to set the environment 
    // variable for android studio:
    // launchctl setenv ANDROID_NDK_HOME 
    // /Users/boos_patrick/Development/Android/android-ndk-r8e
    // otherwise remove the dependsOn part and run ./gradlew buildNative from the 
    // command line
    task copyNativeLibs(type: Copy, dependsOn: 'buildNative') {
        dependsOn 'buildNative'
        from(new File('libs')) { include '**/*.so' }
        into new File(buildDir, 'native-libs')
    }

    tasks.withType(Compile) { compileTask -> compileTask.dependsOn copyNativeLibs }

    clean.dependsOn 'cleanCopyNativeLibs'

    tasks.withType(com.android.build.gradle.tasks.PackageApplication) { pkgTask ->
        pkgTask.jniDir new File(buildDir, 'native-libs')
    }

    task buildNative(type: Exec) {
        if (System.env.ANDROID_NDK_HOME != null) {
            def ndkBuild = new File(System.env.ANDROID_NDK_HOME, 'ndk-build')
            commandLine ndkBuild
        } else {
            doLast {
                println '##################'
                println 'Skipping NDK build'
                println 'Reason: ANDROID_NDK_HOME not set.'
                println '##################'
            }
        }
    }

0 个答案:

没有答案