プロジェクトで com.android.tools.build:gradle-experimental:0.6.0-alpha3 プラグインを使用しています。私のビルド gradle は次のようになります。
apply plugin: 'com.android.model.application'
model {
android {
compileSdkVersion = 19
buildToolsVersion = "19.1.0"
defaultConfig.with {
applicationId = "com.my.company"
minSdkVersion.apiLevel = 9
targetSdkVersion.apiLevel = 19
versionCode = 2
versionName = "0.0.4"
}
}
android.ndk {
moduleName = "native"
stl = "gnustl_static"
cppFlags.add("-I" + file("../../src").absolutePath)
cppFlags.add("-std=gnu++11")
cppFlags.add("-fexceptions")
cppFlags.add("-frtti")
ldLibs.add("log")
ldLibs.add("GLESv2")
ldLibs.add("android");
}
android.sources {
main {
assets {
source {
srcDir "../../assets"
}
}
res {
source {
srcDirs = ['../../res']
}
}
jni {
source {
srcDir "../../src"
}
}
}
}
android.buildTypes {
release {
minifyEnabled = false
proguardFiles.add(file("proguard-rules.pro"))
}
}
android.productFlavors {
create("arm") {
ndk.abiFilters.add("armeabi")
}
create("arm7") {
ndk.abiFilters.add("armeabi-v7a")
}
create("google") {
ndk.abiFilters.add("armeabi")
ndk.abiFilters.add("armeabi-v7a")
}
create("amazon") {
ndk.abiFilters.add("armeabi")
ndk.abiFilters.add("armeabi-v7a")
}
}
}
dependencies {
compile 'com.android.support:support-v4:19.1.0'
compile fileTree(dir: 'libs', include: ['*.jar'])
}
Google Play ストアと Amazon ストア アプリ用に異なる .jar ファイルを含める必要があります。それに応じて google と amazon という名前の 2 つのフレーバーを追加し、依存関係ブロックに 2 行を追加しました。
dependencies {
compile 'com.android.support:support-v4:19.1.0'
compile fileTree(dir: 'libs', include: ['*.jar'])
googleCompile fileTree(dir: 'libs/google', include: ['*.jar'])
amazonCompile fileTree(dir: 'libs/amazon', include: ['*.jar'])
}
問題は、この変更の後、gradle が解析できず、エラーが発生したために procen プロジェクトを取得したことです: Gradle DSL method not found: 'googleCompile()'
誰でも私を助けたり、問題の研究の正しい方法に向かうことができますか. ありがとうございました。