私は最近.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'