So schließen Sie eine Datei aus einem .AAR-Android-Bibliothek-Archiv mit gradle
Ich versuche, erstellen Sie eine AAR-Datei für eine Bibliothek Android-Projekt mit Android Studio und gradle.
Ausschließen will ich aus diesem Archiv einzelne Ordner und Dateien aber ich finde keine funktionierende Lösung.
Das Projekt hat 2 Geschmacksrichtungen.
app/
|--libs/
|--src/
|--flavour1/
| |--java/
| |--a1/
| | |--class_File1.java
|--flavour2/
| |--java/
| |--a1/
| | |--class_File1.java
|--main/
|--java/
| |--...
|--res/
| |--raw/
| | |--comments.txt
| |--...
|--AndroidManifest.xml
und ich verwenden Sie einen build.gradle-Datei wie diese
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:+'
}
Generell habe ich viel experimentiert. Ich habe versucht packagingOptions, Ausgrenzung in sourceSets aber nichts scheint zu funktionieren. Was ich versuche zu erreichen, ist nicht enthalten zum Beispiel in der .AAR-Archiv die Datei comments.txt und den Ordner "assets", die eine optionale Ordner. Ich überprüfe jedes mal die .AAR-Datei durch umbenennen in zip und schaut in die Akten aufgenommen.
Habe ich auch sah Sie in der Dokumentation zu hier, wo vielleicht Konfigurationen könnte eine Lösung sein, aber ich bin nicht sicher, wie Sie Sie verwenden oder wie Sie vorwärts zu bewegen. Jede Hilfe wird geschätzt.
- Wollen Sie nur diese entfernt werden, von einem bestimmten Geschmack oder für jeden build?
- Ich denke, beide Fälle hilfreich zu wissen, wie.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Denke, es ist in Bezug auf diese Problem. In der Regel konnte man versuchen mit:
Konnte ich nicht, entweder von Ihnen arbeiten aber.
Sagte, Sie könnte einige häßliche hacks wie dieser:
Kann ich nicht versuchen Sie es jetzt, aber das wäre wahrscheinlich mein Ansatz:
Wieder, ich konnte nicht es versuchen, so könnte dies völliger Unsinn ist. Die Idee war, nicht ausschließen, dass die Sachen, aber nur die Dateien/Verzeichnisse, die Sie tun wollen, in der Sie Geschmack. Dies kann führen, um doppelte Dateien/Ordner pro Geschmack!
Als Quellen, die ich empfehlen würde: Gralde Plugin User Guide, die Antwort von Xavier Ducrohet und auch diese Gradle + Android, wollen Sie überschreiben /assets mit benutzerdefinierten Ordner in buildFlavor.