Bonne façon d'utiliser les variables d'environnement Système dans gradle l'aide d'Android Studio
Je suis en utilisant Android Studio pour construire mon projet sur une Ubuntu 14.04 système.
J'ai écrit ce qui suit dans mon construire.gradle fichiers pour éviter de coder en dur type storefile, storePassword, keyAlias et keyPassword dans mon repo git:
signingConfigs {
debug {
storeFile file(System.getenv("KEYSTORE"))
storePassword System.getenv("KEYSTORE_PASSWORD")
keyAlias System.getenv("KEY_ALIAS")
keyPassword System.getenv("KEY_PASSWORD")
}
Mais gradle erreurs de synchronisation avec les éléments suivants: Error:(49, 0) Neither path nor baseDir may be null or empty string. path='null' basedir='./pathto/TMessagesProj'
Mon .bashrc contient: source ~/.gradlerc
et mon ~/.gradlerc contient les éléments suivants:
export KEYSTORE="/home/myname/keystore/mykey"
export KEYSTORE_PASSWORD='mypass'
export KEY_ALIAS='mykey'
export KEY_PASSWORD='keypass'
J'ai confirmé que ces variables sont correctement importés par le shell. Cependant, je ne suis pas sûr de pourquoi il n'est pas reçu par l'environnement de compilation dans Android Studio.
Quelle est la bonne façon d'utiliser des variables d'environnement dans gradle?
J'utilise une seule citation, et il fonctionne.
export KEYSTORE='/home/myname/keystore/mykey'
OriginalL'auteur Joel G Mathew | 2014-08-31
Vous devez vous connecter pour publier un commentaire.
J'aime aussi avoir mes fichier de stockage des clés d'information sur mes variables d'environnement, plutôt que de l'avoir à l'intérieur du projet. Votre code semble bien, mais j'ai eu le même problème avec le chemin d'accès au fichier. Je l'ai résolu par la conversion de la valeur à la chaîne avant de passer à
file()
:Espère que cette aide.
Après l'ajout du correctif mentionné ci-dessus, maintenant, j'ai Android studio se plaindre de débogage apk n'est pas signé. "Erreur : Le fichier apk de votre variante sélectionnée (..apk) n'est pas signée. Veuillez spécifier une signature de configuration pour cette variante). Il me prend à l'exécuter/déboguer fenêtre de configuration. La construction d'erreur a disparu, mais maintenant, je ne peut pas exécuter l'application à partir de Android studio coz de cette erreur.
l'ajout de
String.value()
méthode de travail pour moiOriginalL'auteur FMontano
Créer un
gradle.properties
fichier dans votre dossier source (à côté de labuild.gradle
) à s'appliquer que pour le projet en cours ou en~/.gradle/gradle.properties
à appliquer à l'échelle du système avec le contenu:Maintenant mettre à jour votre version.gradle fichier avec:
En option, vous pouvez passer les paramètres de ligne de commande avec le
-P
option. Par exemple,./gradlew assemble -Pkey_password=keypass
.OriginalL'auteur Kevin Brotcke