0

私は最近.mk、gradle-experimental プラグインの助けを借りて、android-ndk プロジェクトでのファイルの使用から完全な gradle ソリューションの使用に切り替えました。これを行った後、機能していると思いましたが、プロジェクトをクリーンアップし、すべての.soファイルを手動で削除して、再作成できるようにしました。残念ながら、この後、それらが再現されることはありませんでした。何らかの理由で、ネイティブ ソースがコンパイルされていません。私のgradleの何が問題なのですか(私はそれが必要だと思います)。

プロジェクトの構造:

android/
    app/
        build/
        src/
            main/
                assets/
                java/
                res/
                AndroidManifest.xml
        build.gradle
    build.gradle
    settings.gradle
    local.properties
common/
    src/
    headers/
    freetype/
    ...
ios/

アプリ: build.gradle:

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

dependencies {
    compile fileTree(dir: "libs", include: ["*.jar"])
    compile 'com.android.support:support-v4:23.3.0'
}

model {
    android {
        compileSdkVersion = 23
        buildToolsVersion = '23.0.2'

        dependencies {
        }

        defaultConfig.with {
            applicationId = 'com.buildertrend.gantt'
            minSdkVersion.apiLevel    = 11
            targetSdkVersion.apiLevel = 23

            buildConfigFields {
                create() {
                    type "int"
                    name "VALUE"
                    value "1"
                }
            }
        }

        buildTypes {
            release {
                minifyEnabled = false
                proguardFiles.add(file('proguard-rules.txt'))
            }
        }

        ndk {
            moduleName "gantt"
            stl "stlport_static"
            CFlags.add("-I../../common/freetype/include")
            CFlags.add("-DANDROID_NDK")
            CFlags.add("-DDISABLE_IMPORTGL")
            CFlags.add("-DFT2_BUILD_LIBRARY=1")
            ldLibs.add("EGL")
            ldLibs.add("android")
            ldLibs.add("GLESv2")
            ldLibs.add("dl")
            ldLibs.add("log")
            ldLibs.add("mui")
        }

        sources {
            main {
                jniLibs{
                    source{
                        srcDir 'src/main/libs'
                    }
                }
                java {
                    source {
                        srcDirs = ["src/main/java"]
                    }
                }
                jni {
                    exportedHeaders {
                        srcDirs  = ["../../common/freetype/include"]
                    }

                    source {
                        srcDirs = ["../../common/src"]
                        srcDirs += ["../../common/headers"]

                        include "../../common/freetype/src/autofit/autofit.c"
                        include "../../common/freetype/src/base/basepic.c"
                        ...
                    }
                }
            }
        }
    }
}

checkstyle {
    toolVersion = '6.18'
    configFile rootProject.file('checkstyle.xml')
    showViolations true
    configProperties = ['checkstyle.cache.file': rootProject.file('build/checkstyle.cache')]
}

task checkstyle(type: Checkstyle) {
    source 'src'
    include '**/java/com/buildertrend/gantt/**/*.java'

    // empty classpath
    classpath = files()
}

check.dependsOn 'checkstyle'
4

0 に答える 0