2017-08-10 11 views
0

私はbuild.gradleに追加してい(モジュール:アプリ)以下:追加productFlavors(モジュール:アプリ)を与えるエラー

apply plugin: 'com.android.application' 

android { 
    compileSdkVersion 25 
    buildToolsVersion "25.0.3" 

    defaultConfig { 
     applicationId "com.sis.newpro" 
     minSdkVersion 22 
     targetSdkVersion 25 
     testInstrumentationRunner 
"android.support.test.runner.AndroidJUnitRunner" 
    } 

    buildTypes { 
     release { 
      minifyEnabled false 
      proguardFiles getDefaultProguardFile('proguard-android.txt'), 
'proguard-rules.pro' 
     } 

    } 
} 

productFlavors { 
    prod { 
     buildConfigField 'String', 'URL', '"http://api.abcd.com"' 
    } 
} 

dependencies { 
    compile fileTree(dir: 'libs', include: ['*.jar']) 
    compile 'com.android.support:appcompat-v7:25.3.1' 
    compile 'com.android.support.constraint:constraint-layout:1.0.2' 

} 

与えるエラー:(22、0)の方法を見つけることができませんでしたorg.gradle.api.Project型の 'app'プロジェクトの引数[build_bqh9qnip9k7nqy2kbpova0vtq $ _run_closure2 @ 5b30b3a7]のproductFlavors()

私は(モジュール:アプリ)build.gradleに追加するための任意のものを欠落しているか、または私が(プロジェクト:NewProject)build.gradleする任意のものを追加する必要がありますビルドの風味を作成する手順以下

+1

あなたのbuild.gradleファイル –

+0

を投稿するあなたは、モジュールレベルのGradleでproductFlavorを追加しましたか? –

+0

yesを追加し、build.gradleファイルもここに追加 – Tarumoy

答えて

0

productFlavorsタグをandroidの中かっこに移動するには、兄弟はbuildTypesである必要があります。


あなたbuild.gradleはこのようなものになってしまうでしょう:

android { 
    compileSdkVersion 25 
    buildToolsVersion "25.0.3" 

    defaultConfig { 
     applicationId "com.sis.newpro" 
     minSdkVersion 22 
     targetSdkVersion 25 
     testInstrumentationRunner 
     "android.support.test.runner.AndroidJUnitRunner" 
    } 

    buildTypes { 
     release { 
      minifyEnabled false 
      proguardFiles getDefaultProguardFile('proguard-android.txt'), 
        'proguard-rules.pro' 
     } 

    } 
    productFlavors { 
     prod { 
      buildConfigField 'String', 'URL', '"http://api.abcd.com"' 
     } 
    } 
} 
+1

おかげでロットッット – Tarumoy

0

フォローを。

productFlavors { 

TestFlavourType { 
       applicationId "com.test.flavour" 
       minSdkVersion 17 
       targetSdkVersion 25 
       versionCode 3 
       versionName "1.02" 
       multiDexEnabled true 
       } 

定義ソースが異なるフォルダから選ぶように設定します:

sourceSets { 
     main { //Main 
      manifest.srcFile 'src/main/AndroidManifest.xml' - picks from Main 
      java.srcDirs = ['src/main/java'] 
      resources.srcDirs = ['src/main/java'] 
      aidl.srcDirs = ['src/main/java'] 
      renderscript.srcDirs = ['src/main/java'] 
      res.srcDirs = ['src/main/res'] 
      assets.srcDirs = ['src/main/assets'] 
     }    

あなたは異なるレイアウト/スタイル/文字列を維持したい場合はuは次のように定義する必要があります。

TestFlavourType { 
      res.srcDirs = ['src/TestFlavourType/res-TestFlavourType', 'src/CommonLayoutDir/res'] 
      // For resources it will look for the files in this path [src/TestFlavourType/res-TestFlavourType] else it will look in to this [src/CommonLayoutDir/res] 
      assets.srcDirs = ['src/TestFlavourType/assets', 'src/main/assets'] 
     }  
}  

}//productFlavors end 

Srcディレクトリの下に、それが助けなら、私に知らせて異なるflavors.Pleaseに別々のレイアウトファイルを維持するためのフォルダを作成します。

+0

貴重なコメントをいただきありがとうございますが、後で試してみます。 – Tarumoy

関連する問題