Comment définir les différentes dépendances de différents produits saveurs
Je suis la conversion une de mes applications, à Gradle et souhaitez utiliser la nouvelle saveur de fonctions de paiement et de la publicité gratuite, en fonction de la saveur.
Je veux seulement que l'annonce en fonction de la version de dépendre sur le SDK admob.
Mon build fichier ressemble à ceci:
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:0.5.+'
}
}
apply plugin: 'android'
repositories {
mavenCentral()
}
android {
compileSdkVersion 18
buildToolsVersion "18.0.1"
defaultConfig {
minSdkVersion 10
targetSdkVersion 18
}
productFlavors {
Pro {
packageName "de.janusz.journeyman.zinsrechner.pro"
}
Free {
dependencies {
}
}
}
}
dependencies {
compile 'com.android.support:support-v4:18.0.+'
compile 'com.actionbarsherlock:actionbarsherlock:4.4.0@aar'
compile fileTree(dir: 'libs', include: '*.jar')
}
Est-il un moyen de configurer la dépendance dans le produit gratuit de la saveur à avoir son propre dossier libs qui est fusionné avec le principal dossier libs qui contient générale des bibliothèques pour les deux saveurs?
Si c'est possible comment je définirais ce dossier?
- visitez ce thread: stackoverflow.com/questions/24860659/...
Vous devez vous connecter pour publier un commentaire.
De définir une saveur spécifique dépendance, vous pouvez utiliser
proCompile
au lieu decompile
dans votre section de dépendance. Lorsque vous exécutez gradle propriétés de vous procurer un aperçu de automatique créé configurations.Le bon build fichier ressemble à ceci:
Error:(28, 0) Build script error, unsupported Gradle DSL method found: 'glassCompile()'!
(La saveur je suis en train d'ajouter une dépendance à l'est "verre".)dependencies
bloc en dessous de laandroid
bloc. Comment intuitive.xxxCompile
fermetures Gradle génère ne fonctionnera pas si la saveur nom commence par une lettre majuscule.java.lang.NoClassDefFoundError: com.facebook.applinks.FacebookAppLinkResolver$1 at java.lang.Class.classForName(Native Method)
je pense que proguard est la création de cette question.dependencies
section n'a plus besoin d'être en dessous deandroid
section dans la construction.gradle - j'ai été en mesure de préciserdebugCompile
même si mon dépendances sont énumérés ci-dessus la section android. @Tiago utilisationdebugCompile
free
saveur?qaImplementation 'some.dependency:1.0'
et ça ne fonctionne pas jusqu'à ce que j'ai littéralement couper/coller l'intégralité duandroid {
section (qui comprendbuildTypes
ci-dessusdependencies {
.debugImplementation
etreleaseImplementation
travaillé, mais si vous définissez de nouvelles personnalisées, apparemment, ils doivent apparaître au-dessus. _(ツ)_/Avance rapide jusqu'à la mi-2018. Vous aurez besoin d'ajouter
flavorDimensions
.Aussi, prenez note:
Vous devez l'ajouter manuellement la configuration pour chaque saveur. Exemple
Edit: je vous recommande d'utiliser l'une des autres techniques!
Une alternative à la accepté de répondre est: est-ce
Simple:
ou tout simplement: