Sto cercando di creare un file AAR per un progetto Android di libreria utilizzando Android Studio e gradle.Come escludere un file da un archivio di libreria Android .AAR con gradle
Desidero escludere dall'archivio cartelle e file specifici ma non riesco a trovare una soluzione funzionante.
Il progetto ha 2 sapori.
app/
|--libs/
|--src/
|--flavour1/
| |--java/
| |--a1/
| | |--class_File1.java
|--flavour2/
| |--java/
| |--a1/
| | |--class_File1.java
|--main/
|--java/
| |--...
|--res/
| |--raw/
| | |--comments.txt
| |--...
|--AndroidManifest.xml
e io uso un file build.gradle come questo
apply plugin: 'com.android.library'
android {
compileSdkVersion 21
buildToolsVersion "21.1.2"
defaultConfig {
minSdkVersion 10
targetSdkVersion 21
}
packagingOptions {
exclude 'assets'
exclude '**/comments.txt'
}
sourceSets {
flavour1 {
resources {
exclude '**/comments.txt'
}
}
flavour2 {
}
}
buildTypes {
release {
minifyEnabled true
shrinkResources true
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
}
}
productFlavors {
flavour1 {
packagingOptions {
exclude 'assets'
exclude 'res/raw/comments.txt'
}
}
flavour2 {
}
}
}
dependencies {
compile 'com.google.android.gms:play-services:+'
}
In generale ho sperimentato molto. Ho provato packagingOptions, esclusione in sourceSets ma niente sembra funzionare. Quello che sto cercando di ottenere non è includere, ad esempio, nell'archivio .ARAR il file comments.txt e la cartella "assets" che è una cartella opzionale. Esaminerò ogni volta il file .ARR rinominandolo per zip e esaminando i file inclusi.
Ho anche esaminato la documentazione qui: http://simpligility.github.io/android-maven-plugin/aar-mojo.html#configurations dove forse le configurazioni potrebbero essere una soluzione, ma non sono sicuro di come usarlo o come andare avanti. Qualsiasi aiuto sarà apprezzato.
Desiderate solo che vengano rimossi da un determinato aroma o per ogni build? – Mike
Immagino che entrambi i casi saranno utili per sapere come. – andreasv