2017-01-16 4 views
1

Ich muss eine signierte Apk meines Android Studio-Projekts mit einem Shell-Skript generieren, aber ich habe ein Problem, um die Aufgabe "AssembleRelease" auszuführen.Signierte Apk mit Kommandozeile und Gradle

In der Tat ist das Problem folgendes:

Fall 1:

  • cd myAndroidStudioProject

  • ./gradlew

  • apk assembleRelease ohne Problem erzeugt wird

Fall 2:

  • myAndroidStudioProject/gradlew assembleRelease

  • Ausführung für Aufgabe fehlgeschlagen ': App: validateSigningRelease'. Schlüsselspeicher-Datei nicht zum Signieren Config Release gesetzt

I-Test haben einige params mit meinem Befehl zu setzen (-p, -P), aber es funktioniert nicht.

Kann jemand den Gradlew-Befehl mit absolutem Pfad verwenden?

Grüße

+0

ist die Datei referenziert von 'storeFile' in' signingConfigs' Abschnitt Ihrer build.gradle an der erwarteten Stelle? –

Antwort

0

Ich denke, Sie so etwas wie new File('relative/path/to/keystore') in Ihrer Build-Datei verwendet. Dies ist per Definition (siehe JavaDoc) relativ zum aktuellen Arbeitsverzeichnis, ändert sich also, wenn Sie von woanders aus gradlew aufrufen.

Statt project.file('relative/path/to/keystore') verwenden oder als project wird nur file('relative/path/to/keystore'), dann wird es funktionieren, egal implizit sein, wo man gradlew aus anrufen.

Verwandte Themen