Assets für Release-Build-Typ ausschließen
Ich importiere eine Android-Bibliothek in eine mit gradle erstellte Anwendung.
dependencies {
compile 'com.example:great-lib:0.1-SNAPSHOT'
}
Diese Bibliothek enthält nur Elemente, js, css und Bilder, die in einer Webansicht mit einem Layout wie diesem verwendet werden sollen:
assets/
|-> great.css
|-> great.min.js
|-> great.min.js.map
|-> js/
| |-> plop.js
| |-> foo.js
| ...
|-> img/
| ...
Dasjs
er Ordner @ enthält Quelldateien (zur Verwendung mit Quellkarten). Ich würde es gerne mit einbeziehen und das.map
Datei für die Debug-Builds und habe nur die minimierten Js in Release-Builds, aber ich kann keinen Weg finden, das zu tun.
So weit ich versucht habe:
android {
// this doesn't exclude anything
packageOptions {
exclude 'assets/js'
}
buildTypes {
release {
// this does exclude the js folder, but in both release and debug
aaptOptions {
ignoreAssetsPattern "!js"
}
}
}
}
Jede Idee, ob das, was ich will, möglich ist und wenn ja, wie?
(Ich habe auch darüber nachgedacht, zwei Versionen der Bibliothek zu veröffentlichen great-lib
undgreat-lib-debug
), und haben die Abhängigkeit indebugCompile
undreleaseCompile
, aber ich würde es vorziehen, das zu vermeiden und eine einzige Version zu veröffentlichen)