Während der Entwicklung möchten Sie möglicherweise den Code modularisieren, den Sie in mehreren Projekten als Bibliotheksprojekt verwenden möchten.
Ich fragte mich, ob das Bibliotheksprojekt auch debuggt werden würde, wenn die Build-Einstellungen des Hauptprojekts auf Debug gesetzt wären. Die Build-Einstellungen des Bibliotheksprojekts sind standardmäßig immer Release-Builds.
Damit ist es nicht möglich, die Verarbeitung mit BuildConfig im Bibliotheksprojekt ordnungsgemäß zu verwenden. Dieses Mal werde ich vorstellen, wie das Bibliotheksprojekt mit den Projekteinstellungen der Haupteinheit abgeglichen wird.
Angenommen, Sie haben die folgende Projektstruktur.
・ App // Hauptprojekt ・ Modul // Bibliotheksprojekt
settings.gradle
include ':app', ':module'
build.gradle(app)
//com.android.Wird durch Angabe der Anwendung als Hauptprojekt anerkannt
apply plugin: 'com.android.application'
--Abkürzung--
dependencies {
・
・
・
compile project(':module')
・
・
・
}
build.gradle(module)
//com.android.Wird durch Angabe der Bibliothek als Bibliotheksprojekt erkannt
apply plugin: 'com.android.library'
Das Obige ist die Einstellung, wenn nichts getan wird.
Zuerst build.gradle des Moduls. Beschreiben Sie PublishNonDefault (true).
build.gradle(module)
android {
compileSdkVersion 25
buildToolsVersion "25.0.2"
publishNonDefault(true)← Fügen Sie dies hinzu
・
・
・
}
Als nächstes App build.gradle Löschen Sie das vorhandene Complie-Projekt (': module') und ändern Sie es wie folgt.
build.gradle(app)
dependencies {
・
・
・
debugCompile project(path: ':module', configuration: ':debug')
releaseCompile project(path: ':module', configuration: ':release')
・
・
・
}
Wenn Sie dies tun, werden die Build-Einstellungen des Moduls entsprechend dem Projekt der Haupteinheit geändert.
Recommended Posts